import { Buffer } from "node:buffer"; import { type ClientMessage, type ServerMessage, type EventEnvelope, type StreamFrame } from "./gen/sealant_pb.js"; export * from "./gen/sealant_pb.js"; export { create } from "@bufbuild/protobuf"; export { StreamFrameSchema, StreamWindowUpdateSchema, StreamEndSchema, type StreamFrame, type StreamWindowUpdate, type StreamEnd, AttachSessionArgsSchema, DetachSessionArgsSchema, OpenForwardArgsSchema, CloseForwardArgsSchema, OpenSftpArgsSchema, CloseSftpArgsSchema, type AttachSessionArgs, type DetachSessionArgs, type OpenForwardArgs, type CloseForwardArgs, type OpenSftpArgs, type CloseSftpArgs, StreamAttachedSchema, ForwardOpenedSchema, SftpOpenedSchema, ProcessAttachedSchema, type StreamAttached, type ForwardOpened, type SftpOpened, type ProcessAttached, AttachMode, AttachModeSchema, } from "./gen/sealant_pb.js"; /** Current wire schema version. */ export declare const SCHEMA_VERSION = 1; /** Default maximum control-frame body size (8 MiB). */ export declare const DEFAULT_MAX_FRAME_BYTES: number; /** Encode a client message to protobuf bytes. */ export declare function encodeClient(message: ClientMessage): Uint8Array; /** Decode a server message from protobuf bytes. */ export declare function decodeServer(bytes: Uint8Array): ServerMessage; /** Encode a server message to protobuf bytes (symmetric with {@link encodeClient}; used by the daemon * side and by tests/mocks that synthesize `ServerMessage`s — e.g. demuxed `StreamFrame`s). */ export declare function encodeServer(message: ServerMessage): Uint8Array; /** Decode a single telemetry event from protobuf bytes (e.g. a spooled record). */ export declare function decodeEvent(bytes: Uint8Array): EventEnvelope; /** Frame a protobuf body with a big-endian u32 length prefix. */ export declare function encodeFrame(body: Uint8Array): Buffer; /** Incremental frame decoder: feed socket chunks, get decoded `ServerMessage`s back. */ export declare class FrameDecoder { #private; constructor(maxFrameBytes?: number); push(chunk: Buffer): ServerMessage[]; } /** Narrow a server message to its response (or `undefined`). */ export declare function asResponse(message: ServerMessage): import("./gen/sealant_pb.js").ControlResponse | undefined; /** Narrow a server message to its telemetry event (or `undefined`). */ export declare function asEvent(message: ServerMessage): EventEnvelope | undefined; /** Narrow a server message to a channel `StreamFrame` (or `undefined`). The multiplexing consumer * routes these by `channelId` into per-channel byte sinks. */ export declare function asStream(message: ServerMessage): StreamFrame | undefined; //# sourceMappingURL=index.d.ts.map