import { EnhancedEventEmitter } from './EnhancedEventEmitter'; import { Channel } from './Channel'; import { PayloadChannel } from './PayloadChannel'; import { Producer } from './Producer'; export declare type RtpObserverEvents = { routerclose: []; '@close': []; }; export declare type RtpObserverObserverEvents = { close: []; pause: []; resume: []; addproducer: [Producer]; removeproducer: [Producer]; }; export declare type RtpObserverAddRemoveProducerOptions = { /** * The id of the Producer to be added or removed. */ producerId: string; }; export declare class RtpObserver extends EnhancedEventEmitter { #private; protected readonly internal: { routerId: string; rtpObserverId: string; }; protected readonly channel: Channel; protected readonly payloadChannel: PayloadChannel; protected readonly getProducerById: (producerId: string) => Producer; /** * @private * @interface */ constructor({ internal, channel, payloadChannel, appData, getProducerById }: { internal: any; channel: Channel; payloadChannel: PayloadChannel; appData?: Record; getProducerById: (producerId: string) => Producer; }); /** * RtpObserver id. */ get id(): string; /** * Whether the RtpObserver is closed. */ get closed(): boolean; /** * Whether the RtpObserver is paused. */ get paused(): boolean; /** * App custom data. */ get appData(): Record; /** * Invalid setter. */ set appData(appData: Record); /** * Observer. */ get observer(): EnhancedEventEmitter; /** * Close the RtpObserver. */ close(): void; /** * Router was closed. * * @private */ routerClosed(): void; /** * Pause the RtpObserver. */ pause(): Promise; /** * Resume the RtpObserver. */ resume(): Promise; /** * Add a Producer to the RtpObserver. */ addProducer({ producerId }: RtpObserverAddRemoveProducerOptions): Promise; /** * Remove a Producer from the RtpObserver. */ removeProducer({ producerId }: RtpObserverAddRemoveProducerOptions): Promise; } //# sourceMappingURL=RtpObserver.d.ts.map