/**
 * Trust V1 canonical serialization helpers.
 *
 * Domain separation constants and unsigned record extraction functions
 * for recordId computation and signature payloads.
 *
 * @module domain/trust/canonical
 * @see docs/specs/TRUST_CRYPTO_ALGORITHM.md Section 6
 */
/** Domain prefix for recordId computation. */
declare const TRUST_RECORD_ID_DOMAIN = "git-warp:trust-record:v1\0";
/** Domain prefix for signature payload. */
declare const TRUST_SIGN_DOMAIN = "git-warp:trust-sign:v1\0";
/** A trust record as parsed from wire format (post-Zod). */
type TrustRecordFields = Readonly<Record<string, unknown>>;
/**
 * Returns the record payload used for recordId computation.
 * Strips `recordId`, `signature`, and `signaturePayload` -- these are
 * derived, not inputs to the canonical hash.
 */
declare function unsignedRecordForId(record: TrustRecordFields): Record<string, unknown>;
/**
 * Returns the record payload used for signature computation.
 * Strips `signature` and `signaturePayload` -- `recordId` is included
 * in the signed payload; `signaturePayload` is derived, not an input.
 */
declare function unsignedRecordForSignature(record: TrustRecordFields): Record<string, unknown>;
/**
 * Computes the canonical string for recordId hashing.
 */
declare function recordIdPayload(record: TrustRecordFields): string;
/**
 * Computes the canonical string for signature verification.
 */
declare function signaturePayload(record: TrustRecordFields): string;
export { TRUST_RECORD_ID_DOMAIN, TRUST_SIGN_DOMAIN, unsignedRecordForId, unsignedRecordForSignature, recordIdPayload, signaturePayload, };
export type { TrustRecordFields };
