import type { CrossIssuerAttestationEnvelope, UnsignedCrossIssuerAttestationEnvelope } from './types.js'; /** * Canonicalize an envelope for signing. The signature field is set to * the empty string before serialization so that signing and * verification agree on the bytes-under-signature without either side * having to reconstruct the envelope from a partial shape. */ export declare function canonicalizeForSignature(envelope: UnsignedCrossIssuerAttestationEnvelope | CrossIssuerAttestationEnvelope): string; /** * Sign an unsigned envelope with the composer's Ed25519 private key * (hex). Derives the public key from the private key and writes it * into `composer_id` on the returned envelope. This guarantees that * the embedded composer_id matches the signing key, which the verifier * checks against; divergence between the two is always a bug, so a * caller-supplied composer_id is overwritten here. Use * `publicKeyFromPrivate` upstream if a pre-flight check is needed. */ export declare function signCrossIssuerAttestation(privateKeyHex: string, unsigned: T): T & { readonly signature: string; readonly composer_id: string; }; //# sourceMappingURL=envelope.d.ts.map