livekit-client
Version:
JavaScript/TypeScript client SDK for LiveKit
60 lines (59 loc) • 1.96 kB
TypeScript
import type TypedEmitter from 'typed-emitter';
import type { RoomConnectOptions, RoomOptions } from '../../options';
import type RTCEngine from '../../room/RTCEngine';
import Room from '../../room/Room';
type LogMessage = {
level: 'info' | 'warning' | 'error';
message: string;
};
export declare enum CheckStatus {
IDLE = 0,
RUNNING = 1,
SKIPPED = 2,
SUCCESS = 3,
FAILED = 4
}
export type CheckInfo = {
name: string;
logs: Array<LogMessage>;
status: CheckStatus;
description: string;
};
export interface CheckerOptions {
errorsAsWarnings?: boolean;
roomOptions?: RoomOptions;
connectOptions?: RoomConnectOptions;
}
declare const Checker_base: new () => TypedEmitter<CheckerCallbacks>;
export declare abstract class Checker extends Checker_base {
protected url: string;
protected token: string;
room: Room;
connectOptions?: RoomConnectOptions;
status: CheckStatus;
logs: Array<LogMessage>;
errorsAsWarnings: boolean;
name: string;
constructor(url: string, token: string, options?: CheckerOptions);
abstract get description(): string;
protected abstract perform(): Promise<void>;
run(onComplete?: () => void): Promise<CheckInfo>;
protected isSuccess(): boolean;
protected connect(): Promise<Room>;
protected disconnect(): Promise<void>;
protected skip(): void;
protected appendMessage(message: string): void;
protected appendWarning(message: string): void;
protected appendError(message: string): void;
protected setStatus(status: CheckStatus): void;
protected get engine(): RTCEngine | undefined;
getInfo(): CheckInfo;
}
export type InstantiableCheck<T extends Checker> = {
new (url: string, token: string, options?: CheckerOptions): T;
};
type CheckerCallbacks = {
update: (info: CheckInfo) => void;
};
export {};
//# sourceMappingURL=Checker.d.ts.map