UNPKG

data-channel-router

Version:
35 lines (34 loc) 1.62 kB
import { DataChannelEvents, DataChannelSignalQuality, DataChannelStatuses } from "../enums"; import { IDataChannel, IDataChannelOptions } from "../interfaces"; import { Id } from "../types"; import { EventEmitter } from "../utils"; type ChannelEvents = typeof DataChannelEvents.IDLE | typeof DataChannelEvents.CONNECTED | typeof DataChannelEvents.UNAVAILABLE; type OnIdleListener = (channel: IDataChannel) => void; type OnConnectedListener = (channel: IDataChannel, previousStatus: DataChannelStatuses) => void; type OnUnavailableListener = (channel: IDataChannel) => void; type DataChanelListeners = OnIdleListener | OnConnectedListener | OnUnavailableListener; /** * Data channel target * @link https://github.com/DjonnyX/data-channel-router/blob/main/library/src/components/DataChannelExecutor.ts * @author Evgenii Grebennikov * @email djonnyx@gmail.com */ export declare class DataChannelExecutor<R = any> extends EventEmitter<ChannelEvents, DataChanelListeners> { private _options; private static __nextId; private _id; get id(): Id; private _status; get status(): DataChannelStatuses; set status(v: DataChannelStatuses); private _signal; get signal(): DataChannelSignalQuality; set signal(v: DataChannelSignalQuality); private _router; get router(): R; constructor(_options: IDataChannelOptions, id?: Id); protected dispatchStatus(status: DataChannelStatuses, previousStatus: DataChannelStatuses): void; ping(executor: () => Promise<any>, cb?: (error: any | null, delay: number | null) => void): Promise<void>; dispose(): void; } export {};