@akala/core
Version:
19 lines (18 loc) • 1 kB
TypeScript
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>;