/** * Typed wrapper for the host media extension (`window.host.ext.media`). * * @example * ```ts * import { media } from "@polkadot-apps/product-sdk"; * * await media.getUserMedia({ audio: true, video: false }); * media.onTrackReady(({ trackId, kind }) => { * media.attachTrack(trackId, "local-video"); * }); * const sessionId = await media.connect(remotePeer); * ``` */ import type { HostEventMap } from "./types.js"; export declare function getUserMedia(constraints: { audio: boolean; video: boolean; }): Promise; export declare function getDisplayMedia(): Promise; export declare function connect(peer: string, trackIds?: number[]): Promise; export declare function accept(peer?: string): Promise; export declare function reject(peer?: string): Promise; export declare function close(sessionId: number): Promise; export declare function attachTrack(trackId: number, elementId: string): Promise; export declare function getPeerId(): Promise; export declare function startListening(address: string): Promise; export declare function setTrackEnabled(trackId: number, enabled: boolean): Promise; export declare function groupConnect(peers: string[], trackIds?: number[]): Promise; export declare function groupAccept(peer: string, trackIds?: number[]): Promise; export declare function addTrack(sessionId: number, trackId: number): Promise; export declare function removeTrack(sessionId: number, trackId: number): Promise; export declare function getStats(sessionId: number): Promise; type Unsub = () => void; export declare function onTrackReady(cb: (p: HostEventMap["mediaTrackReady"]) => void): Unsub; export declare function onConnected(cb: (p: HostEventMap["mediaConnected"]) => void): Unsub; export declare function onRemoteTrack(cb: (p: HostEventMap["mediaRemoteTrack"]) => void): Unsub; export declare function onClosed(cb: (p: HostEventMap["mediaClosed"]) => void): Unsub; export declare function onError(cb: (p: HostEventMap["mediaError"]) => void): Unsub; export declare function onIncomingCall(cb: (p: HostEventMap["mediaIncomingCall"]) => void): Unsub; export declare function onSignalingProgress(cb: (p: HostEventMap["mediaSignalingProgress"]) => void): Unsub; export declare function onTrackStopped(cb: (p: HostEventMap["mediaTrackStopped"]) => void): Unsub; export {}; //# sourceMappingURL=media.d.ts.map