livekit-client
Version:
JavaScript/TypeScript client SDK for LiveKit
37 lines (36 loc) • 1.32 kB
TypeScript
import type { RegionSettings } from '@livekit/protocol';
export declare const DEFAULT_MAX_AGE_MS = 5000;
export declare const STOP_REFETCH_DELAY_MS = 30000;
type CachedRegionSettings = {
regionSettings: RegionSettings;
updatedAtInMs: number;
maxAgeInMs: number;
};
export declare class RegionUrlProvider {
private static readonly cache;
private static settingsTimeouts;
private static connectionTrackers;
private static fetchLock;
private static fetchRegionSettings;
private static scheduleRefetch;
private static updateCachedRegionSettings;
private static stopRefetch;
private static scheduleCleanup;
private static cancelCleanup;
notifyConnected(): void;
notifyDisconnected(): void;
private serverUrl;
private token;
private attemptedRegions;
constructor(url: string, token: string);
updateToken(token: string): void;
isCloud(): boolean;
getServerUrl(): URL;
/** @internal */
fetchRegionSettings(abortSignal?: AbortSignal): Promise<CachedRegionSettings>;
getNextBestRegionUrl(abortSignal?: AbortSignal): Promise<string | null>;
resetAttempts(): void;
setServerReportedRegions(settings: CachedRegionSettings): void;
}
export {};
//# sourceMappingURL=RegionUrlProvider.d.ts.map