@skyway-sdk/core
Version:
The official Next Generation JavaScript SDK for SkyWay
66 lines • 2.16 kB
TypeScript
import { Event } from '@skyway-sdk/common';
import type { Member } from '../../../member';
import type { RemoteMember } from '../../../member/remoteMember';
import type { Transport, TransportConnectionState } from '../../../plugin/interface';
import type { ContentType, Stream, WebRTCStats } from '../base';
export interface LocalStreamInterface extends Stream {
readonly side: 'local';
readonly id: string;
published: boolean;
}
export declare abstract class LocalStreamBase implements Stream {
readonly contentType: ContentType;
readonly side = "local";
/**@internal */
readonly _onConnectionStateChanged: Event<{
remoteMember: RemoteMember;
state: TransportConnectionState;
}>;
readonly id: string;
/**@internal */
_label: string;
published: boolean;
/**@private */
_getTransportCallbacks: {
[remoteMemberId: string]: () => Transport;
};
/**@private */
_getStatsCallbacks: {
[remoteMemberId: string]: () => Promise<WebRTCStats>;
};
private _connectionState;
/**@internal */
constructor(contentType: ContentType);
/**@internal */
_setLabel(label: string): void;
/**@internal */
_unpublished(): void;
/**@internal */
_getTransport(selector: Member | string): Transport | undefined;
/**@internal */
_setConnectionState(remoteMember: RemoteMember, state: TransportConnectionState): void;
/**@internal */
_getStats(selector: Member | string): Promise<WebRTCStats>;
/**@internal */
_getStatsAll(): Promise<{
memberId: string;
stats: WebRTCStats | never[];
}[]>;
/**@internal */
_getRTCPeerConnection(selector: Member | string): RTCPeerConnection | undefined;
/**@internal */
_getConnectionState(selector: Member | string): TransportConnectionState;
/**@internal */
_getConnectionStateAll(): {
memberId: string;
connectionState: TransportConnectionState;
}[];
/**@internal */
toJSON(): {
label: string;
contentType: ContentType;
id: string;
side: string;
};
}
//# sourceMappingURL=base.d.ts.map