// This file was generated by gir (https://github.com/gtk-rs/gir)
// from gir-files (https://github.com/gtk-rs/gir-files)
// from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git)
// DO NOT EDIT

mod web_rtcdtls_transport;
pub use self::web_rtcdtls_transport::WebRTCDTLSTransport;

#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
mod web_rtc_data_channel;
#[cfg(feature = "v1_18")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_18")))]
pub use self::web_rtc_data_channel::WebRTCDataChannel;

#[cfg(feature = "v1_22")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
mod web_rtcice;
#[cfg(feature = "v1_22")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
pub use self::web_rtcice::WebRTCICE;

#[cfg(feature = "v1_22")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
mod web_rtcice_stream;
#[cfg(feature = "v1_22")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
pub use self::web_rtcice_stream::WebRTCICEStream;

mod web_rtcice_transport;
pub use self::web_rtcice_transport::WebRTCICETransport;

mod web_rtcrtp_receiver;
pub use self::web_rtcrtp_receiver::WebRTCRTPReceiver;

mod web_rtcrtp_sender;
pub use self::web_rtcrtp_sender::WebRTCRTPSender;

mod web_rtcrtp_transceiver;
pub use self::web_rtcrtp_transceiver::WebRTCRTPTransceiver;

#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
mod web_rtcsctp_transport;
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
pub use self::web_rtcsctp_transport::WebRTCSCTPTransport;

#[cfg(feature = "v1_22")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
mod web_rtcice_candidate_stats;
#[cfg(feature = "v1_22")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
pub use self::web_rtcice_candidate_stats::WebRTCICECandidateStats;

mod web_rtc_session_description;
pub use self::web_rtc_session_description::WebRTCSessionDescription;

mod enums;
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
pub use self::enums::WebRTCBundlePolicy;
#[cfg(feature = "v1_28")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_28")))]
pub use self::enums::WebRTCDTLSRole;
pub use self::enums::WebRTCDTLSSetup;
pub use self::enums::WebRTCDTLSTransportState;
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
pub use self::enums::WebRTCDataChannelState;
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
pub use self::enums::WebRTCError;
#[cfg(feature = "v1_14_1")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_14_1")))]
pub use self::enums::WebRTCFECType;
pub use self::enums::WebRTCICEComponent;
pub use self::enums::WebRTCICEConnectionState;
pub use self::enums::WebRTCICEGatheringState;
pub use self::enums::WebRTCICERole;
#[cfg(feature = "v1_28")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_28")))]
pub use self::enums::WebRTCICETcpCandidateType;
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
pub use self::enums::WebRTCICETransportPolicy;
#[cfg(feature = "v1_20")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_20")))]
pub use self::enums::WebRTCKind;
pub use self::enums::WebRTCPeerConnectionState;
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
pub use self::enums::WebRTCPriorityType;
pub use self::enums::WebRTCRTPTransceiverDirection;
#[cfg(feature = "v1_16")]
#[cfg_attr(docsrs, doc(cfg(feature = "v1_16")))]
pub use self::enums::WebRTCSCTPTransportState;
pub use self::enums::WebRTCSDPType;
pub use self::enums::WebRTCSignalingState;
pub use self::enums::WebRTCStatsType;

pub(crate) mod traits {
    #[cfg(feature = "v1_22")]
    #[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
    pub use super::web_rtcice::WebRTCICEExt;
    #[cfg(feature = "v1_22")]
    #[cfg_attr(docsrs, doc(cfg(feature = "v1_22")))]
    pub use super::web_rtcice_stream::WebRTCICEStreamExt;
}
