import type { AuthorityDelegationBodyV1, AuthorityDelegationV1 } from './types.js'; export declare const AUTHORITY_DELEGATION_ID_DOMAIN = "APS-AUTHORITY-DELEGATION-ID-V1\0"; export declare const AUTHORITY_DELEGATION_SIGNATURE_DOMAIN = "APS-AUTHORITY-DELEGATION-SIGNATURE-V1\0"; /** Exact RFC 8785 input used to derive delegation_id. */ export declare function authorityDelegationIdInput(body: AuthorityDelegationBodyV1): string; /** Write-boundary twin of authorityDelegationIdInput(). * * Emits the same bytes as authorityDelegationIdInput() for every value it accepts. The only difference * is that an integer-valued number outside the interoperable IEEE 754 range is * refused instead of serialized. Use at signing and new-write boundaries ONLY: * authorityDelegationIdInput() stays unrestricted so an artifact signed before this rule keeps * verifying. */ export declare function authorityDelegationIdInputForWrite(body: AuthorityDelegationBodyV1): string; export declare function computeAuthorityDelegationId(body: AuthorityDelegationBodyV1): string; /** Write-boundary twin of computeAuthorityDelegationId(). * * Reaches a canonicalizer only indirectly, through authorityDelegationIdInputForWrite, * the restricted builder that refuses an integer outside the interoperable range. Use when * ISSUING a delegation; verify.ts and the budget ledger keep calling the unrestricted * form so a delegation issued before this rule still re-derives its id. */ export declare function computeAuthorityDelegationIdForWrite(body: AuthorityDelegationBodyV1): string; /** Exact Ed25519 input: domain plus JCS(record without signature). */ export declare function authorityDelegationSignatureInput(delegation: Omit): string; export declare function signAuthorityDelegation(delegation: Omit, privateKey: string): string; export declare function verifyAuthorityDelegationSignature(delegation: AuthorityDelegationV1, publicKey: string): boolean; export declare function authorityDelegationBody(delegation: AuthorityDelegationV1): AuthorityDelegationBodyV1; //# sourceMappingURL=canonical.d.ts.map