import { AbstractStream } from '@libp2p/utils'; import { Uint8ArrayList } from 'uint8arraylist'; import type { MplexStreamMuxer } from './mplex.ts'; import type { Logger, MessageStreamDirection } from '@libp2p/interface'; import type { AbstractStreamInit, SendResult } from '@libp2p/utils'; import type { AbortOptions } from 'it-pushable'; export interface Options { id: number; log: Logger; direction: MessageStreamDirection; maxMsgSize?: number; muxer: MplexStreamMuxer; } interface MplexStreamInit extends AbstractStreamInit { maxDataSize: number; muxer: MplexStreamMuxer; direction: MessageStreamDirection; } export declare class MplexStream extends AbstractStream { readonly streamId: number; private readonly types; private readonly maxDataSize; private readonly muxer; constructor(init: MplexStreamInit); sendData(data: Uint8ArrayList): SendResult; sendReset(): boolean; sendCloseWrite(options?: AbortOptions): Promise; sendCloseRead(options?: AbortOptions): Promise; sendPause(): void; sendResume(): void; } export declare function createStream(options: Options): MplexStream; export {}; //# sourceMappingURL=stream.d.ts.map