1#![allow(unused_imports)]
2use super::*;
3use wasm_bindgen::prelude::*;
4#[wasm_bindgen]
5extern "C" {
6 # [wasm_bindgen (extends = EventTarget , extends = :: js_sys :: Object , js_name = RTCPeerConnection , typescript_type = "RTCPeerConnection")]
7 #[derive(Debug, Clone, PartialEq, Eq)]
8 #[doc = "The `RtcPeerConnection` class."]
9 #[doc = ""]
10 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection)"]
11 #[doc = ""]
12 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
13 pub type RtcPeerConnection;
14 #[cfg(feature = "RtcSessionDescription")]
15 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = localDescription)]
16 #[doc = "Getter for the `localDescription` field of this object."]
17 #[doc = ""]
18 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/localDescription)"]
19 #[doc = ""]
20 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`, `RtcSessionDescription`*"]
21 pub fn local_description(this: &RtcPeerConnection) -> Option<RtcSessionDescription>;
22 #[cfg(feature = "RtcSessionDescription")]
23 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = currentLocalDescription)]
24 #[doc = "Getter for the `currentLocalDescription` field of this object."]
25 #[doc = ""]
26 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/currentLocalDescription)"]
27 #[doc = ""]
28 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`, `RtcSessionDescription`*"]
29 pub fn current_local_description(this: &RtcPeerConnection) -> Option<RtcSessionDescription>;
30 #[cfg(feature = "RtcSessionDescription")]
31 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = pendingLocalDescription)]
32 #[doc = "Getter for the `pendingLocalDescription` field of this object."]
33 #[doc = ""]
34 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/pendingLocalDescription)"]
35 #[doc = ""]
36 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`, `RtcSessionDescription`*"]
37 pub fn pending_local_description(this: &RtcPeerConnection) -> Option<RtcSessionDescription>;
38 #[cfg(feature = "RtcSessionDescription")]
39 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = remoteDescription)]
40 #[doc = "Getter for the `remoteDescription` field of this object."]
41 #[doc = ""]
42 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/remoteDescription)"]
43 #[doc = ""]
44 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`, `RtcSessionDescription`*"]
45 pub fn remote_description(this: &RtcPeerConnection) -> Option<RtcSessionDescription>;
46 #[cfg(feature = "RtcSessionDescription")]
47 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = currentRemoteDescription)]
48 #[doc = "Getter for the `currentRemoteDescription` field of this object."]
49 #[doc = ""]
50 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/currentRemoteDescription)"]
51 #[doc = ""]
52 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`, `RtcSessionDescription`*"]
53 pub fn current_remote_description(this: &RtcPeerConnection) -> Option<RtcSessionDescription>;
54 #[cfg(feature = "RtcSessionDescription")]
55 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = pendingRemoteDescription)]
56 #[doc = "Getter for the `pendingRemoteDescription` field of this object."]
57 #[doc = ""]
58 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/pendingRemoteDescription)"]
59 #[doc = ""]
60 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`, `RtcSessionDescription`*"]
61 pub fn pending_remote_description(this: &RtcPeerConnection) -> Option<RtcSessionDescription>;
62 #[cfg(feature = "RtcSignalingState")]
63 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = signalingState)]
64 #[doc = "Getter for the `signalingState` field of this object."]
65 #[doc = ""]
66 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/signalingState)"]
67 #[doc = ""]
68 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`, `RtcSignalingState`*"]
69 pub fn signaling_state(this: &RtcPeerConnection) -> RtcSignalingState;
70 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = canTrickleIceCandidates)]
71 #[doc = "Getter for the `canTrickleIceCandidates` field of this object."]
72 #[doc = ""]
73 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/canTrickleIceCandidates)"]
74 #[doc = ""]
75 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
76 pub fn can_trickle_ice_candidates(this: &RtcPeerConnection) -> Option<bool>;
77 #[cfg(feature = "RtcIceGatheringState")]
78 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = iceGatheringState)]
79 #[doc = "Getter for the `iceGatheringState` field of this object."]
80 #[doc = ""]
81 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/iceGatheringState)"]
82 #[doc = ""]
83 #[doc = "*This API requires the following crate features to be activated: `RtcIceGatheringState`, `RtcPeerConnection`*"]
84 pub fn ice_gathering_state(this: &RtcPeerConnection) -> RtcIceGatheringState;
85 #[cfg(feature = "RtcIceConnectionState")]
86 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = iceConnectionState)]
87 #[doc = "Getter for the `iceConnectionState` field of this object."]
88 #[doc = ""]
89 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/iceConnectionState)"]
90 #[doc = ""]
91 #[doc = "*This API requires the following crate features to be activated: `RtcIceConnectionState`, `RtcPeerConnection`*"]
92 pub fn ice_connection_state(this: &RtcPeerConnection) -> RtcIceConnectionState;
93 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = peerIdentity)]
94 #[doc = "Getter for the `peerIdentity` field of this object."]
95 #[doc = ""]
96 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/peerIdentity)"]
97 #[doc = ""]
98 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
99 pub fn peer_identity(this: &RtcPeerConnection) -> ::js_sys::Promise;
100 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = idpLoginUrl)]
101 #[doc = "Getter for the `idpLoginUrl` field of this object."]
102 #[doc = ""]
103 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/idpLoginUrl)"]
104 #[doc = ""]
105 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
106 pub fn idp_login_url(this: &RtcPeerConnection) -> Option<String>;
107 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = onnegotiationneeded)]
108 #[doc = "Getter for the `onnegotiationneeded` field of this object."]
109 #[doc = ""]
110 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/onnegotiationneeded)"]
111 #[doc = ""]
112 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
113 pub fn onnegotiationneeded(this: &RtcPeerConnection) -> Option<::js_sys::Function>;
114 # [wasm_bindgen (structural , method , setter , js_class = "RTCPeerConnection" , js_name = onnegotiationneeded)]
115 #[doc = "Setter for the `onnegotiationneeded` field of this object."]
116 #[doc = ""]
117 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/onnegotiationneeded)"]
118 #[doc = ""]
119 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
120 pub fn set_onnegotiationneeded(this: &RtcPeerConnection, value: Option<&::js_sys::Function>);
121 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = onicecandidate)]
122 #[doc = "Getter for the `onicecandidate` field of this object."]
123 #[doc = ""]
124 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/onicecandidate)"]
125 #[doc = ""]
126 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
127 pub fn onicecandidate(this: &RtcPeerConnection) -> Option<::js_sys::Function>;
128 # [wasm_bindgen (structural , method , setter , js_class = "RTCPeerConnection" , js_name = onicecandidate)]
129 #[doc = "Setter for the `onicecandidate` field of this object."]
130 #[doc = ""]
131 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/onicecandidate)"]
132 #[doc = ""]
133 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
134 pub fn set_onicecandidate(this: &RtcPeerConnection, value: Option<&::js_sys::Function>);
135 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = onsignalingstatechange)]
136 #[doc = "Getter for the `onsignalingstatechange` field of this object."]
137 #[doc = ""]
138 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/onsignalingstatechange)"]
139 #[doc = ""]
140 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
141 pub fn onsignalingstatechange(this: &RtcPeerConnection) -> Option<::js_sys::Function>;
142 # [wasm_bindgen (structural , method , setter , js_class = "RTCPeerConnection" , js_name = onsignalingstatechange)]
143 #[doc = "Setter for the `onsignalingstatechange` field of this object."]
144 #[doc = ""]
145 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/onsignalingstatechange)"]
146 #[doc = ""]
147 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
148 pub fn set_onsignalingstatechange(this: &RtcPeerConnection, value: Option<&::js_sys::Function>);
149 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = onaddstream)]
150 #[doc = "Getter for the `onaddstream` field of this object."]
151 #[doc = ""]
152 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/onaddstream)"]
153 #[doc = ""]
154 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
155 pub fn onaddstream(this: &RtcPeerConnection) -> Option<::js_sys::Function>;
156 # [wasm_bindgen (structural , method , setter , js_class = "RTCPeerConnection" , js_name = onaddstream)]
157 #[doc = "Setter for the `onaddstream` field of this object."]
158 #[doc = ""]
159 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/onaddstream)"]
160 #[doc = ""]
161 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
162 pub fn set_onaddstream(this: &RtcPeerConnection, value: Option<&::js_sys::Function>);
163 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = onaddtrack)]
164 #[doc = "Getter for the `onaddtrack` field of this object."]
165 #[doc = ""]
166 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/onaddtrack)"]
167 #[doc = ""]
168 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
169 pub fn onaddtrack(this: &RtcPeerConnection) -> Option<::js_sys::Function>;
170 # [wasm_bindgen (structural , method , setter , js_class = "RTCPeerConnection" , js_name = onaddtrack)]
171 #[doc = "Setter for the `onaddtrack` field of this object."]
172 #[doc = ""]
173 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/onaddtrack)"]
174 #[doc = ""]
175 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
176 pub fn set_onaddtrack(this: &RtcPeerConnection, value: Option<&::js_sys::Function>);
177 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = ontrack)]
178 #[doc = "Getter for the `ontrack` field of this object."]
179 #[doc = ""]
180 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/ontrack)"]
181 #[doc = ""]
182 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
183 pub fn ontrack(this: &RtcPeerConnection) -> Option<::js_sys::Function>;
184 # [wasm_bindgen (structural , method , setter , js_class = "RTCPeerConnection" , js_name = ontrack)]
185 #[doc = "Setter for the `ontrack` field of this object."]
186 #[doc = ""]
187 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/ontrack)"]
188 #[doc = ""]
189 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
190 pub fn set_ontrack(this: &RtcPeerConnection, value: Option<&::js_sys::Function>);
191 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = onremovestream)]
192 #[doc = "Getter for the `onremovestream` field of this object."]
193 #[doc = ""]
194 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/onremovestream)"]
195 #[doc = ""]
196 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
197 pub fn onremovestream(this: &RtcPeerConnection) -> Option<::js_sys::Function>;
198 # [wasm_bindgen (structural , method , setter , js_class = "RTCPeerConnection" , js_name = onremovestream)]
199 #[doc = "Setter for the `onremovestream` field of this object."]
200 #[doc = ""]
201 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/onremovestream)"]
202 #[doc = ""]
203 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
204 pub fn set_onremovestream(this: &RtcPeerConnection, value: Option<&::js_sys::Function>);
205 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = oniceconnectionstatechange)]
206 #[doc = "Getter for the `oniceconnectionstatechange` field of this object."]
207 #[doc = ""]
208 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/oniceconnectionstatechange)"]
209 #[doc = ""]
210 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
211 pub fn oniceconnectionstatechange(this: &RtcPeerConnection) -> Option<::js_sys::Function>;
212 # [wasm_bindgen (structural , method , setter , js_class = "RTCPeerConnection" , js_name = oniceconnectionstatechange)]
213 #[doc = "Setter for the `oniceconnectionstatechange` field of this object."]
214 #[doc = ""]
215 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/oniceconnectionstatechange)"]
216 #[doc = ""]
217 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
218 pub fn set_oniceconnectionstatechange(
219 this: &RtcPeerConnection,
220 value: Option<&::js_sys::Function>,
221 );
222 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = onicegatheringstatechange)]
223 #[doc = "Getter for the `onicegatheringstatechange` field of this object."]
224 #[doc = ""]
225 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/onicegatheringstatechange)"]
226 #[doc = ""]
227 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
228 pub fn onicegatheringstatechange(this: &RtcPeerConnection) -> Option<::js_sys::Function>;
229 # [wasm_bindgen (structural , method , setter , js_class = "RTCPeerConnection" , js_name = onicegatheringstatechange)]
230 #[doc = "Setter for the `onicegatheringstatechange` field of this object."]
231 #[doc = ""]
232 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/onicegatheringstatechange)"]
233 #[doc = ""]
234 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
235 pub fn set_onicegatheringstatechange(
236 this: &RtcPeerConnection,
237 value: Option<&::js_sys::Function>,
238 );
239 # [wasm_bindgen (structural , method , getter , js_class = "RTCPeerConnection" , js_name = ondatachannel)]
240 #[doc = "Getter for the `ondatachannel` field of this object."]
241 #[doc = ""]
242 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/ondatachannel)"]
243 #[doc = ""]
244 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
245 pub fn ondatachannel(this: &RtcPeerConnection) -> Option<::js_sys::Function>;
246 # [wasm_bindgen (structural , method , setter , js_class = "RTCPeerConnection" , js_name = ondatachannel)]
247 #[doc = "Setter for the `ondatachannel` field of this object."]
248 #[doc = ""]
249 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/ondatachannel)"]
250 #[doc = ""]
251 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
252 pub fn set_ondatachannel(this: &RtcPeerConnection, value: Option<&::js_sys::Function>);
253 #[wasm_bindgen(catch, constructor, js_class = "RTCPeerConnection")]
254 #[doc = "The `new RtcPeerConnection(..)` constructor, creating a new instance of `RtcPeerConnection`."]
255 #[doc = ""]
256 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/RTCPeerConnection)"]
257 #[doc = ""]
258 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
259 pub fn new() -> Result<RtcPeerConnection, JsValue>;
260 #[cfg(feature = "RtcConfiguration")]
261 #[wasm_bindgen(catch, constructor, js_class = "RTCPeerConnection")]
262 #[doc = "The `new RtcPeerConnection(..)` constructor, creating a new instance of `RtcPeerConnection`."]
263 #[doc = ""]
264 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/RTCPeerConnection)"]
265 #[doc = ""]
266 #[doc = "*This API requires the following crate features to be activated: `RtcConfiguration`, `RtcPeerConnection`*"]
267 pub fn new_with_configuration(
268 configuration: &RtcConfiguration,
269 ) -> Result<RtcPeerConnection, JsValue>;
270 #[cfg(feature = "RtcConfiguration")]
271 #[wasm_bindgen(catch, constructor, js_class = "RTCPeerConnection")]
272 #[doc = "The `new RtcPeerConnection(..)` constructor, creating a new instance of `RtcPeerConnection`."]
273 #[doc = ""]
274 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/RTCPeerConnection)"]
275 #[doc = ""]
276 #[doc = "*This API requires the following crate features to be activated: `RtcConfiguration`, `RtcPeerConnection`*"]
277 pub fn new_with_configuration_and_constraints(
278 configuration: &RtcConfiguration,
279 constraints: Option<&::js_sys::Object>,
280 ) -> Result<RtcPeerConnection, JsValue>;
281 #[cfg(feature = "RtcIceCandidateInit")]
282 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = addIceCandidate)]
283 #[doc = "The `addIceCandidate()` method."]
284 #[doc = ""]
285 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/addIceCandidate)"]
286 #[doc = ""]
287 #[doc = "*This API requires the following crate features to be activated: `RtcIceCandidateInit`, `RtcPeerConnection`*"]
288 pub fn add_ice_candidate_with_opt_rtc_ice_candidate_init(
289 this: &RtcPeerConnection,
290 candidate: Option<&RtcIceCandidateInit>,
291 ) -> ::js_sys::Promise;
292 #[cfg(feature = "RtcIceCandidate")]
293 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = addIceCandidate)]
294 #[doc = "The `addIceCandidate()` method."]
295 #[doc = ""]
296 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/addIceCandidate)"]
297 #[doc = ""]
298 #[doc = "*This API requires the following crate features to be activated: `RtcIceCandidate`, `RtcPeerConnection`*"]
299 pub fn add_ice_candidate_with_opt_rtc_ice_candidate(
300 this: &RtcPeerConnection,
301 candidate: Option<&RtcIceCandidate>,
302 ) -> ::js_sys::Promise;
303 #[cfg(feature = "RtcIceCandidate")]
304 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = addIceCandidate)]
305 #[doc = "The `addIceCandidate()` method."]
306 #[doc = ""]
307 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/addIceCandidate)"]
308 #[doc = ""]
309 #[doc = "*This API requires the following crate features to be activated: `RtcIceCandidate`, `RtcPeerConnection`*"]
310 pub fn add_ice_candidate_with_rtc_ice_candidate_and_success_callback_and_failure_callback(
311 this: &RtcPeerConnection,
312 candidate: &RtcIceCandidate,
313 success_callback: &::js_sys::Function,
314 failure_callback: &::js_sys::Function,
315 ) -> ::js_sys::Promise;
316 #[cfg(feature = "MediaStream")]
317 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = addStream)]
318 #[doc = "The `addStream()` method."]
319 #[doc = ""]
320 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/addStream)"]
321 #[doc = ""]
322 #[doc = "*This API requires the following crate features to be activated: `MediaStream`, `RtcPeerConnection`*"]
323 pub fn add_stream(this: &RtcPeerConnection, stream: &MediaStream);
324 #[cfg(all(
325 feature = "MediaStream",
326 feature = "MediaStreamTrack",
327 feature = "RtcRtpSender",
328 ))]
329 # [wasm_bindgen (method , structural , variadic , js_class = "RTCPeerConnection" , js_name = addTrack)]
330 #[doc = "The `addTrack()` method."]
331 #[doc = ""]
332 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/addTrack)"]
333 #[doc = ""]
334 #[doc = "*This API requires the following crate features to be activated: `MediaStream`, `MediaStreamTrack`, `RtcPeerConnection`, `RtcRtpSender`*"]
335 pub fn add_track(
336 this: &RtcPeerConnection,
337 track: &MediaStreamTrack,
338 stream: &MediaStream,
339 more_streams: &::js_sys::Array,
340 ) -> RtcRtpSender;
341 #[cfg(all(
342 feature = "MediaStream",
343 feature = "MediaStreamTrack",
344 feature = "RtcRtpSender",
345 ))]
346 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = addTrack)]
347 #[doc = "The `addTrack()` method."]
348 #[doc = ""]
349 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/addTrack)"]
350 #[doc = ""]
351 #[doc = "*This API requires the following crate features to be activated: `MediaStream`, `MediaStreamTrack`, `RtcPeerConnection`, `RtcRtpSender`*"]
352 pub fn add_track_0(
353 this: &RtcPeerConnection,
354 track: &MediaStreamTrack,
355 stream: &MediaStream,
356 ) -> RtcRtpSender;
357 #[cfg(all(
358 feature = "MediaStream",
359 feature = "MediaStreamTrack",
360 feature = "RtcRtpSender",
361 ))]
362 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = addTrack)]
363 #[doc = "The `addTrack()` method."]
364 #[doc = ""]
365 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/addTrack)"]
366 #[doc = ""]
367 #[doc = "*This API requires the following crate features to be activated: `MediaStream`, `MediaStreamTrack`, `RtcPeerConnection`, `RtcRtpSender`*"]
368 pub fn add_track_1(
369 this: &RtcPeerConnection,
370 track: &MediaStreamTrack,
371 stream: &MediaStream,
372 more_streams_1: &MediaStream,
373 ) -> RtcRtpSender;
374 #[cfg(all(
375 feature = "MediaStream",
376 feature = "MediaStreamTrack",
377 feature = "RtcRtpSender",
378 ))]
379 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = addTrack)]
380 #[doc = "The `addTrack()` method."]
381 #[doc = ""]
382 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/addTrack)"]
383 #[doc = ""]
384 #[doc = "*This API requires the following crate features to be activated: `MediaStream`, `MediaStreamTrack`, `RtcPeerConnection`, `RtcRtpSender`*"]
385 pub fn add_track_2(
386 this: &RtcPeerConnection,
387 track: &MediaStreamTrack,
388 stream: &MediaStream,
389 more_streams_1: &MediaStream,
390 more_streams_2: &MediaStream,
391 ) -> RtcRtpSender;
392 #[cfg(all(
393 feature = "MediaStream",
394 feature = "MediaStreamTrack",
395 feature = "RtcRtpSender",
396 ))]
397 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = addTrack)]
398 #[doc = "The `addTrack()` method."]
399 #[doc = ""]
400 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/addTrack)"]
401 #[doc = ""]
402 #[doc = "*This API requires the following crate features to be activated: `MediaStream`, `MediaStreamTrack`, `RtcPeerConnection`, `RtcRtpSender`*"]
403 pub fn add_track_3(
404 this: &RtcPeerConnection,
405 track: &MediaStreamTrack,
406 stream: &MediaStream,
407 more_streams_1: &MediaStream,
408 more_streams_2: &MediaStream,
409 more_streams_3: &MediaStream,
410 ) -> RtcRtpSender;
411 #[cfg(all(
412 feature = "MediaStream",
413 feature = "MediaStreamTrack",
414 feature = "RtcRtpSender",
415 ))]
416 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = addTrack)]
417 #[doc = "The `addTrack()` method."]
418 #[doc = ""]
419 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/addTrack)"]
420 #[doc = ""]
421 #[doc = "*This API requires the following crate features to be activated: `MediaStream`, `MediaStreamTrack`, `RtcPeerConnection`, `RtcRtpSender`*"]
422 pub fn add_track_4(
423 this: &RtcPeerConnection,
424 track: &MediaStreamTrack,
425 stream: &MediaStream,
426 more_streams_1: &MediaStream,
427 more_streams_2: &MediaStream,
428 more_streams_3: &MediaStream,
429 more_streams_4: &MediaStream,
430 ) -> RtcRtpSender;
431 #[cfg(all(
432 feature = "MediaStream",
433 feature = "MediaStreamTrack",
434 feature = "RtcRtpSender",
435 ))]
436 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = addTrack)]
437 #[doc = "The `addTrack()` method."]
438 #[doc = ""]
439 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/addTrack)"]
440 #[doc = ""]
441 #[doc = "*This API requires the following crate features to be activated: `MediaStream`, `MediaStreamTrack`, `RtcPeerConnection`, `RtcRtpSender`*"]
442 pub fn add_track_5(
443 this: &RtcPeerConnection,
444 track: &MediaStreamTrack,
445 stream: &MediaStream,
446 more_streams_1: &MediaStream,
447 more_streams_2: &MediaStream,
448 more_streams_3: &MediaStream,
449 more_streams_4: &MediaStream,
450 more_streams_5: &MediaStream,
451 ) -> RtcRtpSender;
452 #[cfg(all(
453 feature = "MediaStream",
454 feature = "MediaStreamTrack",
455 feature = "RtcRtpSender",
456 ))]
457 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = addTrack)]
458 #[doc = "The `addTrack()` method."]
459 #[doc = ""]
460 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/addTrack)"]
461 #[doc = ""]
462 #[doc = "*This API requires the following crate features to be activated: `MediaStream`, `MediaStreamTrack`, `RtcPeerConnection`, `RtcRtpSender`*"]
463 pub fn add_track_6(
464 this: &RtcPeerConnection,
465 track: &MediaStreamTrack,
466 stream: &MediaStream,
467 more_streams_1: &MediaStream,
468 more_streams_2: &MediaStream,
469 more_streams_3: &MediaStream,
470 more_streams_4: &MediaStream,
471 more_streams_5: &MediaStream,
472 more_streams_6: &MediaStream,
473 ) -> RtcRtpSender;
474 #[cfg(all(
475 feature = "MediaStream",
476 feature = "MediaStreamTrack",
477 feature = "RtcRtpSender",
478 ))]
479 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = addTrack)]
480 #[doc = "The `addTrack()` method."]
481 #[doc = ""]
482 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/addTrack)"]
483 #[doc = ""]
484 #[doc = "*This API requires the following crate features to be activated: `MediaStream`, `MediaStreamTrack`, `RtcPeerConnection`, `RtcRtpSender`*"]
485 pub fn add_track_7(
486 this: &RtcPeerConnection,
487 track: &MediaStreamTrack,
488 stream: &MediaStream,
489 more_streams_1: &MediaStream,
490 more_streams_2: &MediaStream,
491 more_streams_3: &MediaStream,
492 more_streams_4: &MediaStream,
493 more_streams_5: &MediaStream,
494 more_streams_6: &MediaStream,
495 more_streams_7: &MediaStream,
496 ) -> RtcRtpSender;
497 #[cfg(all(feature = "MediaStreamTrack", feature = "RtcRtpTransceiver",))]
498 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = addTransceiver)]
499 #[doc = "The `addTransceiver()` method."]
500 #[doc = ""]
501 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/addTransceiver)"]
502 #[doc = ""]
503 #[doc = "*This API requires the following crate features to be activated: `MediaStreamTrack`, `RtcPeerConnection`, `RtcRtpTransceiver`*"]
504 pub fn add_transceiver_with_media_stream_track(
505 this: &RtcPeerConnection,
506 track_or_kind: &MediaStreamTrack,
507 ) -> RtcRtpTransceiver;
508 #[cfg(feature = "RtcRtpTransceiver")]
509 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = addTransceiver)]
510 #[doc = "The `addTransceiver()` method."]
511 #[doc = ""]
512 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/addTransceiver)"]
513 #[doc = ""]
514 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`, `RtcRtpTransceiver`*"]
515 pub fn add_transceiver_with_str(
516 this: &RtcPeerConnection,
517 track_or_kind: &str,
518 ) -> RtcRtpTransceiver;
519 #[cfg(all(
520 feature = "MediaStreamTrack",
521 feature = "RtcRtpTransceiver",
522 feature = "RtcRtpTransceiverInit",
523 ))]
524 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = addTransceiver)]
525 #[doc = "The `addTransceiver()` method."]
526 #[doc = ""]
527 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/addTransceiver)"]
528 #[doc = ""]
529 #[doc = "*This API requires the following crate features to be activated: `MediaStreamTrack`, `RtcPeerConnection`, `RtcRtpTransceiver`, `RtcRtpTransceiverInit`*"]
530 pub fn add_transceiver_with_media_stream_track_and_init(
531 this: &RtcPeerConnection,
532 track_or_kind: &MediaStreamTrack,
533 init: &RtcRtpTransceiverInit,
534 ) -> RtcRtpTransceiver;
535 #[cfg(all(feature = "RtcRtpTransceiver", feature = "RtcRtpTransceiverInit",))]
536 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = addTransceiver)]
537 #[doc = "The `addTransceiver()` method."]
538 #[doc = ""]
539 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/addTransceiver)"]
540 #[doc = ""]
541 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`, `RtcRtpTransceiver`, `RtcRtpTransceiverInit`*"]
542 pub fn add_transceiver_with_str_and_init(
543 this: &RtcPeerConnection,
544 track_or_kind: &str,
545 init: &RtcRtpTransceiverInit,
546 ) -> RtcRtpTransceiver;
547 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = close)]
548 #[doc = "The `close()` method."]
549 #[doc = ""]
550 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/close)"]
551 #[doc = ""]
552 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
553 pub fn close(this: &RtcPeerConnection);
554 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = createAnswer)]
555 #[doc = "The `createAnswer()` method."]
556 #[doc = ""]
557 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/createAnswer)"]
558 #[doc = ""]
559 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
560 pub fn create_answer(this: &RtcPeerConnection) -> ::js_sys::Promise;
561 #[cfg(feature = "RtcAnswerOptions")]
562 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = createAnswer)]
563 #[doc = "The `createAnswer()` method."]
564 #[doc = ""]
565 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/createAnswer)"]
566 #[doc = ""]
567 #[doc = "*This API requires the following crate features to be activated: `RtcAnswerOptions`, `RtcPeerConnection`*"]
568 pub fn create_answer_with_rtc_answer_options(
569 this: &RtcPeerConnection,
570 options: &RtcAnswerOptions,
571 ) -> ::js_sys::Promise;
572 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = createAnswer)]
573 #[doc = "The `createAnswer()` method."]
574 #[doc = ""]
575 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/createAnswer)"]
576 #[doc = ""]
577 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
578 pub fn create_answer_with_success_callback_and_failure_callback(
579 this: &RtcPeerConnection,
580 success_callback: &::js_sys::Function,
581 failure_callback: &::js_sys::Function,
582 ) -> ::js_sys::Promise;
583 #[cfg(feature = "RtcDataChannel")]
584 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = createDataChannel)]
585 #[doc = "The `createDataChannel()` method."]
586 #[doc = ""]
587 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/createDataChannel)"]
588 #[doc = ""]
589 #[doc = "*This API requires the following crate features to be activated: `RtcDataChannel`, `RtcPeerConnection`*"]
590 pub fn create_data_channel(this: &RtcPeerConnection, label: &str) -> RtcDataChannel;
591 #[cfg(all(feature = "RtcDataChannel", feature = "RtcDataChannelInit",))]
592 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = createDataChannel)]
593 #[doc = "The `createDataChannel()` method."]
594 #[doc = ""]
595 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/createDataChannel)"]
596 #[doc = ""]
597 #[doc = "*This API requires the following crate features to be activated: `RtcDataChannel`, `RtcDataChannelInit`, `RtcPeerConnection`*"]
598 pub fn create_data_channel_with_data_channel_dict(
599 this: &RtcPeerConnection,
600 label: &str,
601 data_channel_dict: &RtcDataChannelInit,
602 ) -> RtcDataChannel;
603 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = createOffer)]
604 #[doc = "The `createOffer()` method."]
605 #[doc = ""]
606 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/createOffer)"]
607 #[doc = ""]
608 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
609 pub fn create_offer(this: &RtcPeerConnection) -> ::js_sys::Promise;
610 #[cfg(feature = "RtcOfferOptions")]
611 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = createOffer)]
612 #[doc = "The `createOffer()` method."]
613 #[doc = ""]
614 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/createOffer)"]
615 #[doc = ""]
616 #[doc = "*This API requires the following crate features to be activated: `RtcOfferOptions`, `RtcPeerConnection`*"]
617 pub fn create_offer_with_rtc_offer_options(
618 this: &RtcPeerConnection,
619 options: &RtcOfferOptions,
620 ) -> ::js_sys::Promise;
621 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = createOffer)]
622 #[doc = "The `createOffer()` method."]
623 #[doc = ""]
624 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/createOffer)"]
625 #[doc = ""]
626 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
627 pub fn create_offer_with_callback_and_failure_callback(
628 this: &RtcPeerConnection,
629 success_callback: &::js_sys::Function,
630 failure_callback: &::js_sys::Function,
631 ) -> ::js_sys::Promise;
632 #[cfg(feature = "RtcOfferOptions")]
633 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = createOffer)]
634 #[doc = "The `createOffer()` method."]
635 #[doc = ""]
636 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/createOffer)"]
637 #[doc = ""]
638 #[doc = "*This API requires the following crate features to be activated: `RtcOfferOptions`, `RtcPeerConnection`*"]
639 pub fn create_offer_with_callback_and_failure_callback_and_options(
640 this: &RtcPeerConnection,
641 success_callback: &::js_sys::Function,
642 failure_callback: &::js_sys::Function,
643 options: &RtcOfferOptions,
644 ) -> ::js_sys::Promise;
645 # [wasm_bindgen (catch , static_method_of = RtcPeerConnection , js_class = "RTCPeerConnection" , js_name = generateCertificate)]
646 #[doc = "The `generateCertificate()` method."]
647 #[doc = ""]
648 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/generateCertificate)"]
649 #[doc = ""]
650 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
651 pub fn generate_certificate_with_object(
652 keygen_algorithm: &::js_sys::Object,
653 ) -> Result<::js_sys::Promise, JsValue>;
654 # [wasm_bindgen (catch , static_method_of = RtcPeerConnection , js_class = "RTCPeerConnection" , js_name = generateCertificate)]
655 #[doc = "The `generateCertificate()` method."]
656 #[doc = ""]
657 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/generateCertificate)"]
658 #[doc = ""]
659 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
660 pub fn generate_certificate_with_str(
661 keygen_algorithm: &str,
662 ) -> Result<::js_sys::Promise, JsValue>;
663 #[cfg(feature = "RtcConfiguration")]
664 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = getConfiguration)]
665 #[doc = "The `getConfiguration()` method."]
666 #[doc = ""]
667 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/getConfiguration)"]
668 #[doc = ""]
669 #[doc = "*This API requires the following crate features to be activated: `RtcConfiguration`, `RtcPeerConnection`*"]
670 pub fn get_configuration(this: &RtcPeerConnection) -> RtcConfiguration;
671 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = getIdentityAssertion)]
672 #[doc = "The `getIdentityAssertion()` method."]
673 #[doc = ""]
674 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/getIdentityAssertion)"]
675 #[doc = ""]
676 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
677 pub fn get_identity_assertion(this: &RtcPeerConnection) -> ::js_sys::Promise;
678 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = getLocalStreams)]
679 #[doc = "The `getLocalStreams()` method."]
680 #[doc = ""]
681 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/getLocalStreams)"]
682 #[doc = ""]
683 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
684 pub fn get_local_streams(this: &RtcPeerConnection) -> ::js_sys::Array;
685 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = getReceivers)]
686 #[doc = "The `getReceivers()` method."]
687 #[doc = ""]
688 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/getReceivers)"]
689 #[doc = ""]
690 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
691 pub fn get_receivers(this: &RtcPeerConnection) -> ::js_sys::Array;
692 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = getRemoteStreams)]
693 #[doc = "The `getRemoteStreams()` method."]
694 #[doc = ""]
695 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/getRemoteStreams)"]
696 #[doc = ""]
697 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
698 pub fn get_remote_streams(this: &RtcPeerConnection) -> ::js_sys::Array;
699 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = getSenders)]
700 #[doc = "The `getSenders()` method."]
701 #[doc = ""]
702 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/getSenders)"]
703 #[doc = ""]
704 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
705 pub fn get_senders(this: &RtcPeerConnection) -> ::js_sys::Array;
706 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = getStats)]
707 #[doc = "The `getStats()` method."]
708 #[doc = ""]
709 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/getStats)"]
710 #[doc = ""]
711 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
712 pub fn get_stats(this: &RtcPeerConnection) -> ::js_sys::Promise;
713 #[cfg(feature = "MediaStreamTrack")]
714 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = getStats)]
715 #[doc = "The `getStats()` method."]
716 #[doc = ""]
717 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/getStats)"]
718 #[doc = ""]
719 #[doc = "*This API requires the following crate features to be activated: `MediaStreamTrack`, `RtcPeerConnection`*"]
720 pub fn get_stats_with_selector(
721 this: &RtcPeerConnection,
722 selector: Option<&MediaStreamTrack>,
723 ) -> ::js_sys::Promise;
724 #[cfg(feature = "MediaStreamTrack")]
725 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = getStats)]
726 #[doc = "The `getStats()` method."]
727 #[doc = ""]
728 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/getStats)"]
729 #[doc = ""]
730 #[doc = "*This API requires the following crate features to be activated: `MediaStreamTrack`, `RtcPeerConnection`*"]
731 pub fn get_stats_with_selector_and_success_callback_and_failure_callback(
732 this: &RtcPeerConnection,
733 selector: Option<&MediaStreamTrack>,
734 success_callback: &::js_sys::Function,
735 failure_callback: &::js_sys::Function,
736 ) -> ::js_sys::Promise;
737 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = getTransceivers)]
738 #[doc = "The `getTransceivers()` method."]
739 #[doc = ""]
740 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/getTransceivers)"]
741 #[doc = ""]
742 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
743 pub fn get_transceivers(this: &RtcPeerConnection) -> ::js_sys::Array;
744 #[cfg(feature = "RtcRtpSender")]
745 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = removeTrack)]
746 #[doc = "The `removeTrack()` method."]
747 #[doc = ""]
748 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/removeTrack)"]
749 #[doc = ""]
750 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`, `RtcRtpSender`*"]
751 pub fn remove_track(this: &RtcPeerConnection, sender: &RtcRtpSender);
752 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = setIdentityProvider)]
753 #[doc = "The `setIdentityProvider()` method."]
754 #[doc = ""]
755 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/setIdentityProvider)"]
756 #[doc = ""]
757 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`*"]
758 pub fn set_identity_provider(this: &RtcPeerConnection, provider: &str);
759 #[cfg(feature = "RtcIdentityProviderOptions")]
760 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = setIdentityProvider)]
761 #[doc = "The `setIdentityProvider()` method."]
762 #[doc = ""]
763 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/setIdentityProvider)"]
764 #[doc = ""]
765 #[doc = "*This API requires the following crate features to be activated: `RtcIdentityProviderOptions`, `RtcPeerConnection`*"]
766 pub fn set_identity_provider_with_options(
767 this: &RtcPeerConnection,
768 provider: &str,
769 options: &RtcIdentityProviderOptions,
770 );
771 #[cfg(feature = "RtcSessionDescriptionInit")]
772 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = setLocalDescription)]
773 #[doc = "The `setLocalDescription()` method."]
774 #[doc = ""]
775 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/setLocalDescription)"]
776 #[doc = ""]
777 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`, `RtcSessionDescriptionInit`*"]
778 pub fn set_local_description(
779 this: &RtcPeerConnection,
780 description: &RtcSessionDescriptionInit,
781 ) -> ::js_sys::Promise;
782 #[cfg(feature = "RtcSessionDescriptionInit")]
783 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = setLocalDescription)]
784 #[doc = "The `setLocalDescription()` method."]
785 #[doc = ""]
786 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/setLocalDescription)"]
787 #[doc = ""]
788 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`, `RtcSessionDescriptionInit`*"]
789 pub fn set_local_description_with_success_callback_and_failure_callback(
790 this: &RtcPeerConnection,
791 description: &RtcSessionDescriptionInit,
792 success_callback: &::js_sys::Function,
793 failure_callback: &::js_sys::Function,
794 ) -> ::js_sys::Promise;
795 #[cfg(feature = "RtcSessionDescriptionInit")]
796 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = setRemoteDescription)]
797 #[doc = "The `setRemoteDescription()` method."]
798 #[doc = ""]
799 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/setRemoteDescription)"]
800 #[doc = ""]
801 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`, `RtcSessionDescriptionInit`*"]
802 pub fn set_remote_description(
803 this: &RtcPeerConnection,
804 description: &RtcSessionDescriptionInit,
805 ) -> ::js_sys::Promise;
806 #[cfg(feature = "RtcSessionDescriptionInit")]
807 # [wasm_bindgen (method , structural , js_class = "RTCPeerConnection" , js_name = setRemoteDescription)]
808 #[doc = "The `setRemoteDescription()` method."]
809 #[doc = ""]
810 #[doc = "[MDN Documentation](https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/setRemoteDescription)"]
811 #[doc = ""]
812 #[doc = "*This API requires the following crate features to be activated: `RtcPeerConnection`, `RtcSessionDescriptionInit`*"]
813 pub fn set_remote_description_with_success_callback_and_failure_callback(
814 this: &RtcPeerConnection,
815 description: &RtcSessionDescriptionInit,
816 success_callback: &::js_sys::Function,
817 failure_callback: &::js_sys::Function,
818 ) -> ::js_sys::Promise;
819}