import type { LogFormat, LogLevel } from '@skyway-sdk/common'; import type { RtcApiConfig, RtcRpcApiConfig } from '@skyway-sdk/rtc-api-client'; export type { 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: { /** * @internal * @description ms * */ timeout?: number; turnPolicy?: TurnPolicy; /** * @internal */ stunPolicy?: 'enable' | 'disable'; turnProtocol?: TurnProtocol; /** * @internal * @description ms * */ iceDisconnectBufferTimeout?: number; }; token: { updateRemindSec?: number; }; log: Partial<{ level: LogLevel; format: LogFormat; }>; /**@internal */ internal: { disableDPlane?: boolean; }; member: Partial; }; /** * @description [japanese] LocalMemberに関する設定 * @description [japanese] * MemberはpreventAutoLeaveOnBeforeUnloadがfalseもしくは未指定の場合、ブラウザのタブを閉じるとChannelから削除される。 * preventAutoLeaveOnBeforeUnloadがtrueの場合、 * もしくはiOS safariのようなbeforeunloadイベントに対応していないブラウザを使用している場合は、 * タブを閉じたあと最長でkeepaliveIntervalSec + keepaliveIntervalGapSec秒後にChannelから削除される。 */ export declare type LocalMemberConfig = { /**@description [japanese] trueの場合、beforeunloadイベントで自動的にleaveしない。デフォルトはfalse */ preventAutoLeaveOnBeforeUnload: boolean; /**@description [japanese] KeepAliveを行う周期 */ keepaliveIntervalSec: number; /**@description [japanese] KeepAliveの周期を超えてChannelからMemberが削除されるまでの時間 */ keepaliveIntervalGapSec: number; }; /**@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 type SkyWayContextConfig = { rtcApi: Required; iceParamServer: Required; signalingService: Required; analyticsService: Required; rtcConfig: Required; token: Required; log: Required; internal: Required; member: Required; }; export declare class ContextConfig implements SkyWayConfigOptions { /**@internal */ rtcApi: Required; /**@internal */ iceParamServer: Required; /**@internal */ signalingService: Required; /**@internal */ analyticsService: Required; rtcConfig: Required; token: Required; log: Required; /**@internal */ internal: Required; member: Required; /**@internal */ constructor(options?: Partial); } //# sourceMappingURL=config.d.ts.map