[options]
girs_directories = ["../gir-files", "../gst-gir-files"]
library = "GstWebRTC"
version = "1.0"
min_cfg_version = "1.14"
work_mode = "normal"
concurrency = "send+sync"
generate_safety_asserts = true
single_version_file = true
generate_display_trait = false
trust_return_value_nullability = true

external_libraries = [
    "GLib",
    "GObject",
    "Gst",
    "GstSdp",
]

generate = [
    "GstWebRTC.WebRTCBundlePolicy",
    "GstWebRTC.WebRTCDataChannelState",
    "GstWebRTC.WebRTCDTLSSetup",
    "GstWebRTC.WebRTCDTLSTransportState",
    "GstWebRTC.WebRTCError",
    "GstWebRTC.WebRTCFECType",
    "GstWebRTC.WebRTCICE",
    "GstWebRTC.WebRTCICECandidateStats",
    "GstWebRTC.WebRTCICEComponent",
    "GstWebRTC.WebRTCICEConnectionState",
    "GstWebRTC.WebRTCICEGatheringState",
    "GstWebRTC.WebRTCICERole",
    "GstWebRTC.WebRTCICEStream",
    "GstWebRTC.WebRTCICETransportPolicy",
    "GstWebRTC.WebRTCKind",
    "GstWebRTC.WebRTCPeerConnectionState",
    "GstWebRTC.WebRTCPriorityType",
    "GstWebRTC.WebRTCRTPTransceiverDirection",
    "GstWebRTC.WebRTCSCTPTransportState",
    "GstWebRTC.WebRTCSDPType",
    "GstWebRTC.WebRTCSignalingState",
    "GstWebRTC.WebRTCStatsType",
]

manual = [
    "GLib.Bytes",
    "GLib.Error",
    "GObject.Object",
    "Gst.Caps",
    "Gst.Structure",
    "GstSdp.SDPMessage",
]

[[object]]
name = "GstWebRTC.WebRTCDataChannel"
status = "generate"
final_type = true

    [[object.function]]
    name = "on_error"
    # takes ownership of SDP message
    manual = true

[[object]]
name = "GstWebRTC.WebRTCDTLSTransport"
status = "generate"
final_type = true

[[object]]
name = "GstWebRTC.WebRTCICETransport"
status = "generate"
final_type = true

[[object]]
name = "GstWebRTC.WebRTCRTPReceiver"
status = "generate"
final_type = true

[[object]]
name = "GstWebRTC.WebRTCRTPSender"
status = "generate"
final_type = true

[[object]]
name = "GstWebRTC.WebRTCRTPTransceiver"
status = "generate"
final_type = true

[[object]]
name = "GstWebRTC.WebRTCSCTPTransport"
status = "generate"
version = "1.20"

[[object]]
name = "GstWebRTC.WebRTCSessionDescription"
status = "generate"
final_type = true

    [[object.function]]
    name = "new"
    # takes ownership of SDP message
    ignore = true
