@signalwire/js
Version:
26 lines • 1.41 kB
TypeScript
import { BaseConnectionContract, RoomLeft, RoomLeftEventParams, BaseConnectionState } from '@signalwire/core';
import { BaseConnection, MediaEventNames } from '@signalwire/webrtc';
import { RoomScreenShareMethods } from './utils/interfaces';
type RoomSessionScreenShareEventsHandlerMap = Record<BaseConnectionState, (params: RoomSessionScreenShare) => void> & Record<RoomLeft, (params?: RoomLeftEventParams) => void> & Record<MediaEventNames, () => void>;
export type RoomSessionScreenShareEvents = {
[k in keyof RoomSessionScreenShareEventsHandlerMap]: RoomSessionScreenShareEventsHandlerMap[k];
};
/** @deprecated Use {@link RoomSessionScreenShare} instead */
export interface RoomScreenShare extends RoomSessionScreenShare {
}
export interface RoomSessionScreenShare extends RoomScreenShareMethods, BaseConnectionContract<RoomSessionScreenShareEvents> {
join(): Promise<void>;
leave(): Promise<void>;
/** @internal */
runWorker: BaseConnection<RoomSessionScreenShareEvents>['runWorker'];
}
export declare class RoomSessionScreenShareConnection extends BaseConnection<RoomSessionScreenShareEvents> {
join(): Promise<unknown>;
leave(): Promise<void>;
}
/**
* Represents a screen sharing.
*/
export declare const RoomSessionScreenShareAPI: import("@signalwire/core").ConstructableType<RoomSessionScreenShareConnection>;
export {};
//# sourceMappingURL=RoomSessionScreenShare.d.ts.map