import { IsomorphicBuffer } from "../helpers.js";
import { SocketProtocolTransformer } from "./shared.transformer.js";
/**
 * Error thrown when a message is incomplete and cannot be processed.
 * Used by protocol adapters to indicate that more data is needed to complete the message.
 */
export declare class IncompleteMessageError<TTarget, TSource = string | IsomorphicBuffer> extends Error {
    readonly transformedMessages: TTarget[];
    readonly remainingPart: TSource[];
    constructor(transformedMessages: TTarget[], remainingPart: TSource[]);
}
/**
 * Protocol adapter that buffers incomplete messages until they are complete.
 * Extends SocketProtocolAdapter to handle fragmented messages by accumulating
 * data until a complete message can be processed.
 * @template T The type of messages after transformation
 */
export declare function LongMessageProtocolTransformer<T, U extends string | IsomorphicBuffer>(transform: SocketProtocolTransformer<T, U[]>): SocketProtocolTransformer<T, U>;
