import { EnhancedEventEmitter } from './enhancedEvents'; import type { DataConsumer, DataConsumerType, DataConsumerDump, DataConsumerStat, DataConsumerEvents, DataConsumerObserver } from './DataConsumerTypes'; import { Channel } from './Channel'; import type { TransportInternal } from './Transport'; import type { SctpStreamParameters } from './sctpParametersTypes'; import type { AppData } from './types'; import * as FbsDataConsumer from './fbs/data-consumer'; type DataConsumerInternal = TransportInternal & { dataConsumerId: string; }; type DataConsumerData = { dataProducerId: string; type: DataConsumerType; sctpStreamParameters?: SctpStreamParameters; label: string; protocol: string; bufferedAmountLowThreshold: number; }; export declare class DataConsumerImpl extends EnhancedEventEmitter implements DataConsumer { #private; constructor({ internal, data, channel, paused, dataProducerPaused, subchannels, appData, }: { internal: DataConsumerInternal; data: DataConsumerData; channel: Channel; paused: boolean; dataProducerPaused: boolean; subchannels: number[]; appData?: DataConsumerAppData; }); get id(): string; get dataProducerId(): string; get closed(): boolean; get type(): DataConsumerType; get sctpStreamParameters(): SctpStreamParameters | undefined; get label(): string; get protocol(): string; get paused(): boolean; get dataProducerPaused(): boolean; get subchannels(): number[]; get appData(): DataConsumerAppData; set appData(appData: DataConsumerAppData); get observer(): DataConsumerObserver; close(): void; transportClosed(): void; dump(): Promise; getStats(): Promise; pause(): Promise; resume(): Promise; setBufferedAmountLowThreshold(threshold: number): Promise; getBufferedAmount(): Promise; send(message: string | Buffer, ppid?: number): Promise; setSubchannels(subchannels: number[]): Promise; addSubchannel(subchannel: number): Promise; removeSubchannel(subchannel: number): Promise; private handleWorkerNotifications; private handleListenerError; } export declare function dataConsumerTypeToFbs(type: DataConsumerType): FbsDataConsumer.Type; export declare function parseDataConsumerDumpResponse(data: FbsDataConsumer.DumpResponse): DataConsumerDump; export {}; //# sourceMappingURL=DataConsumer.d.ts.map