export declare const REHEARSAL_SIG_DOMAIN = "NOA-KernelRehearsal-v0.1-sig";
export declare const PROTO_ID = "noa-kernel-rehearsal/0";
export declare const MAX_FRAME: number;
export declare const VERSION = 1;
export declare const TYPE: {
    readonly HELLO: 1;
    readonly REQUEST: 2;
    readonly RESPONSE: 3;
    readonly PROTOCOL_ERROR: 127;
};
export declare const ERR: {
    readonly FRAME_OVERSIZE: 1;
    readonly FRAME_UNDERSIZE: 2;
    readonly BAD_VERSION: 3;
    readonly BAD_TYPE: 4;
    readonly BAD_REQUEST_GRAMMAR: 5;
    readonly ID_NOT_MONOTONIC: 6;
    readonly FRAME_TIMEOUT: 7;
    readonly EOF_MID_FRAME: 8;
    readonly INTERNAL: 9;
};
export declare const TAG: {
    readonly DOCUMENT: 1;
    readonly KEYRING: 2;
    readonly CHECKPOINT: 3;
    readonly IDENTITY: 4;
};
export type ParsedRequest = {
    ok: true;
    id: bigint;
    nonce: Buffer;
    document: Uint8Array;
    keyring?: Uint8Array;
    checkpoint?: Uint8Array;
    identityManifest?: Uint8Array;
} | {
    ok: false;
    code: number;
};
export declare function parseRequest(payload: Buffer): ParsedRequest;
export declare function envelopePreimage(requestDigest: Buffer, requestId: bigint, nonce: Buffer, verdictBytes: Buffer): Buffer;
export declare function buildHelloPayload(publicKeySpkiDer: Buffer): Buffer;
export declare function buildResponsePayload(requestPayload: Buffer, requestId: bigint, nonce: Buffer, verdictBytes: Buffer, privateKeyB64: string): Buffer;
export declare function runServe(args: string[]): Promise<number>;
