@skyway-sdk/core
Version:
The official Next Generation JavaScript SDK for SkyWay
78 lines • 2.86 kB
TypeScript
import { type ErrorInfo, type RuntimeInfo, SkyWayError } from '@skyway-sdk/common';
import { type MediaAttributes } from 'sdp-transform';
import type { Channel, SkyWayChannelImpl } from './channel';
import type { SkyWayContext } from './context';
import type { Codec } from './media';
import type { LocalStream, RemoteStream, WebRTCStats } from './media/stream';
import type { Member } from './member';
/**@internal */
export declare function getBitrateFromPeerConnection(stream: LocalStream | RemoteStream, direction: 'inbound' | 'outbound', cb: (bitrate: number) => void, selector: Member | string): () => void;
/**@internal */
export declare function statsToArray(stats: RTCStatsReport): WebRTCStats;
/**@internal */
export declare function createLogPayload({ operationName, channel, }: {
operationName: string;
channel: Channel;
}): Promise<any>;
/**@internal */
export declare function createWarnPayload({ member, detail, channel, operationName, payload, }: {
operationName: string;
member?: Member;
channel?: SkyWayChannelImpl;
detail: string;
payload?: any;
}): any;
/**@internal */
export declare function createError({ operationName, context, info, error, path, payload, channel, }: {
operationName: string;
path: string;
info: ErrorInfo;
context?: SkyWayContext;
channel?: Channel;
error?: Error;
payload?: any;
}): SkyWayError<any>;
/**@internal */
export declare const waitForLocalStats: ({ stream, remoteMember, end, interval, timeout, }: {
stream: LocalStream;
remoteMember: string;
end: (stats: WebRTCStats) => boolean;
/**ms */
interval?: number | undefined;
/**ms */
timeout?: number | undefined;
}) => Promise<WebRTCStats>;
/**@internal */
export declare function getRtcRtpCapabilities(): Promise<{
audio: (Codec & {
payload: number;
})[];
video: (Codec & {
payload: number;
})[];
}>;
/**@internal */
export declare const getParameters: (fmtp: MediaAttributes['fmtp'], payload: number) => {
[k: string]: string | number | undefined;
};
/**@internal */
export declare const fmtpConfigParser: (config: string) => {
[k: string]: string | number | undefined;
};
/**@internal */
export declare function createTestVideoTrack(width: number, height: number): MediaStreamTrack;
/**
* @internal
* @description browser only
*/
export declare const getRuntimeInfo: ({ isNotBrowser, }?: Partial<{
isNotBrowser: RuntimeInfo;
}>) => RuntimeInfo;
/**
* @internal
* @description from mediasoup-client
*/
export declare function detectDevice(): BuiltinHandlerName | undefined;
/**@internal */
export declare type BuiltinHandlerName = 'Chrome111' | 'Chrome74' | 'Chrome70' | 'Chrome67' | 'Chrome55' | 'Firefox60' | 'Safari12' | 'Safari11' | 'Edge11' | 'ReactNativeUnifiedPlan' | 'ReactNative';
//# sourceMappingURL=util.d.ts.map