import { IStreamOptions, IStreamPrepareOptions } from '../Video/IOptions'; import { ITrackInfo } from './IStreamTrackInfo'; import StreamProtocol from './StreamProtocol'; /** * Returned properties of stream events that occur on stream events: * connected, disconnected, error, stop, tracks_changed */ export interface IStreamEventProperties { uri: string; x: number; y: number; width: number; height: number; protocol?: keyof typeof StreamProtocol | string; /** * @deprecated Events should not return options objects. Instead, they should return protocol {@link protocol} */ options?: IStreamOptions | IStreamPrepareOptions; } export interface IStreamErrorEventProperties extends IStreamEventProperties { /** * Error message describing the error that occurred (if any). */ errorMessage?: string; } export interface IStreamTracksChangedEventProperties extends IStreamEventProperties { /** * List of tracks that are available for the stream. */ tracks: ITrackInfo[]; }