@skyway-sdk/core
Version:
The official Next Generation JavaScript SDK for SkyWay
99 lines • 3.4 kB
TypeScript
import { LogFormat, LogLevel } from '@skyway-sdk/common';
import { type RtcApiConfig, type RtcRpcApiConfig } from '@skyway-sdk/rtc-api-client';
export { RtcApiConfig, RtcRpcApiConfig };
export declare type SkyWayConfigOptions = {
/**@internal */
rtcApi: RtcApiConfig;
/**@internal */
iceParamServer: {
domain?: string;
version?: number;
secure?: boolean;
};
/**@internal */
signalingService: {
domain?: string;
secure?: boolean;
};
/**@internal */
analyticsService: {
domain?: string;
secure?: boolean;
};
rtcConfig: {
encodedInsertableStreams?: boolean;
/**
* @internal
* @description ms
* */
timeout?: number;
turnPolicy?: TurnPolicy;
turnProtocol?: TurnProtocol;
/**
* @internal
* @description ms
* */
iceDisconnectBufferTimeout?: number;
};
token: {
updateReminderSec?: number;
};
log: Partial<{
level: LogLevel;
format: LogFormat;
}>;
/**@internal */
internal: {
disableDPlane?: boolean;
};
member: Partial<LocalMemberConfig>;
};
/**
* @deprecated [japanese] LocalMemberConfigを使用してください
* @description [japanese] MemberのChannelとのKeepAliveに関する設定
* @description [japanese]
* Memberはブラウザのタブを閉じるとChannelから削除される。
* iOS safariのようなbeforeunloadイベントに対応していないブラウザは、
* タブを閉じたあと keepaliveIntervalSec + keepaliveIntervalGapSec 秒後に
* Channelから削除される。
*/
export declare type MemberKeepAliveConfig = {
/**@description [japanese] KeepAliveを行う周期 */
keepaliveIntervalSec: number;
/**@description [japanese] KeepAliveの周期を超えてChannelからMemberが削除されるまでの時間 */
keepaliveIntervalGapSec: number;
};
/**
* @description [japanese] LocalMemberに関する設定
*/
export declare type LocalMemberConfig = MemberKeepAliveConfig & {
/**@description [japanese] trueの場合、beforeunloadイベントで自動的にleaveしない。デフォルトはfalse */
preventAutoLeaveOnBeforeUnload: boolean;
};
/**@internal */
export declare type MemberInternalConfig = {
/**@internal */
disableSignaling?: boolean;
disableAnalytics?: boolean;
};
export declare type TurnPolicy = 'enable' | 'disable' | 'turnOnly';
export declare type TurnProtocol = 'all' | 'udp' | 'tcp' | 'tls';
export declare class ContextConfig implements SkyWayConfigOptions {
/**@internal */
rtcApi: Required<SkyWayConfigOptions['rtcApi']>;
/**@internal */
iceParamServer: Required<SkyWayConfigOptions['iceParamServer']>;
/**@internal */
signalingService: Required<SkyWayConfigOptions['signalingService']>;
/**@internal */
analyticsService: Required<SkyWayConfigOptions['analyticsService']>;
rtcConfig: Required<SkyWayConfigOptions['rtcConfig']>;
token: Required<SkyWayConfigOptions['token']>;
log: Required<SkyWayConfigOptions['log']>;
/**@internal */
internal: Required<SkyWayConfigOptions['internal']>;
member: Required<SkyWayConfigOptions['member']>;
/**@internal */
constructor(options?: Partial<SkyWayConfigOptions>);
}
//# sourceMappingURL=config.d.ts.map