UNPKG

sinch-rtc

Version:

RTC JavaScript/Web SDK

23 lines (22 loc) 1.21 kB
import { FeatureFlags } from "../features/Features"; import { InstanceController } from "../instance"; import { IceServer, IceServerCredentialTypeEnum } from "../ocra/api"; import { ApiClient } from "../ocra/ApiClient"; import { PeerConnectionClient } from "./PeerConnectionClient"; export interface RTCIceServerExtended extends RTCIceServer { validUntil?: Date; credentialType?: "password" | "oauth"; } export type FetchIceServers = () => Promise<IceServer[]>; export type SetIceServers = (iceServers: RTCIceServerExtended[]) => void; export interface Ris { validUntil: string; urls: string[]; username: string; credentialType: IceServerCredentialTypeEnum; password: string; } export declare const createIceServerFetcher: (apiClient: ApiClient, userId: string, instanceId: string) => () => Promise<IceServer[]>; export declare const onTurnFeatureFlagChanged: (instanceController: InstanceController) => (featureFlags: FeatureFlags) => void; export declare const createIceServerSetter: (peerConnectionClient: PeerConnectionClient) => (iceServers: RTCIceServerExtended[]) => void; export declare const toRTCIceServer: (iceServers: IceServer[] | Ris[]) => RTCIceServerExtended[];