///
///
import { MessageWriter, MessageReader, Message, Disposable, AbstractMessageReader, AbstractMessageWriter } from 'vscode-jsonrpc';
import { DataCallback } from 'vscode-jsonrpc';
import { Writable } from 'stream';
/** Reads JSON-RPC messages that have a 32-bit big endian header describing the length of each message. */
export declare class BE32MessageReader extends AbstractMessageReader implements MessageReader {
private readonly readable;
private readonly decoder;
constructor(readable: NodeJS.ReadableStream, decoder: (buffer: Uint8Array) => Promise);
listen(callback: DataCallback): Disposable;
}
/** Writes JSON-RPC messages that have a 32-bit big endian header describing the length of each message. */
export declare class BE32MessageWriter extends AbstractMessageWriter implements MessageWriter {
private readonly writable;
private readonly encoder;
private readonly semaphore;
private readonly headerBuffer;
private errorCount;
constructor(writable: NodeJS.WritableStream | Writable, encoder: (message: Message) => Promise);
write(msg: Message): Promise;
end(): void;
}