karma_p2p_wasm/
addr.rs

1use serde::{Deserialize, Serialize};
2use web_sys::{RtcIceCandidate, RtcSessionDescriptionInit};
3
4#[derive(Serialize, Deserialize, Debug, Clone)]
5pub enum CredentialType {
6    #[serde(rename = "password")]
7    Password,
8    #[serde(rename = "oauth")]
9    Oauth,
10}
11
12#[derive(Serialize, Deserialize, Debug)]
13pub struct IceServer {
14    pub credential: String,
15    #[serde(rename = "credentialType")]
16    pub credential_type: CredentialType,
17    pub urls: Vec<String>,
18    pub username: String,
19}
20
21pub enum WebrtcAddr {
22    Bootstrap(Vec<IceServer>),
23    SDP(RtcSessionDescriptionInit),
24    ICE(RtcIceCandidate),
25    Label(String),
26}