import { Transform, type TransformCallback } from 'stream'; import type { Logger } from '../../types/common'; export type IMAPStreamOutput = { readonly payload: Buffer; readonly literals: readonly Buffer[]; readonly next: () => void; }; export type IMAPStreamOptions = { readonly cid?: string; readonly logger?: Logger; readonly logRaw?: boolean; readonly secureConnection?: boolean; }; export declare class LiteralTooLargeError extends Error { readonly name: "LiteralTooLargeError"; readonly code: "LiteralTooLarge"; readonly literalSize: number; readonly maxSize: number; constructor(literalSize: number, maxSize: number); } export declare class IMAPStream extends Transform { private readonly cid?; private readonly log?; private readonly logRaw; private readonly secureConnection; private readBytesCounter; private state; private literalWaiting; private inputBuffer; private lineBuffer; private literalBuffer; private literals; private readonly inputQueue; private processingInput; compress: boolean; constructor(options?: IMAPStreamOptions); get bytesRead(): number; private checkLiteralMarker; private processInputChunk; private processInput; _transform(chunk: unknown, encoding: BufferEncoding, next: TransformCallback): void; _flush(next: TransformCallback): void; } export declare const createIMAPStream: (options?: IMAPStreamOptions) => IMAPStream; //# sourceMappingURL=stream-handler.d.ts.map