import { CapabilityDict, CapabilityProof } from "./model.mjs"; //#region src/zcap/proofs.d.ts declare class JcsCanonError extends Error { constructor(message: string); } declare class ProofVerificationError extends Error { constructor(message: string); } /** * RFC 8785 canonical JSON serialization. * * Rules: * * Keys sorted by UTF-16 code-unit order (which equals Unicode for * BMP characters โ€” what we use). * * No insignificant whitespace. * * Numbers per ECMAScript ToString (integers only โ€” float * canonicalization is intentionally refused). * * Strings: minimal escaping per JSON. * * UTF-8 output. */ declare function canonicalizeJcs(value: unknown): Uint8Array; /** * Produce a proof block for a capability. Capability dict MUST NOT * already contain a `proof` field (caller strips it). * * The returned dict is what the caller assigns to `capability.proof`. */ declare function signCapability({ capabilityDict, privateKeyBytes, verificationMethod, proofPurpose, created }: { capabilityDict: Omit | Record; privateKeyBytes: Uint8Array; verificationMethod: string; proofPurpose?: string; created?: string; }): CapabilityProof; /** * Verify the proof binds the public key to the canonical capability. * * Throws `ProofVerificationError` on any failure โ€” callers map to * `cap-invalid` per spec ยง grant-access problem reports. */ declare function verifyProof({ capabilityDict, proof, publicKeyBytes }: { capabilityDict: CapabilityDict | Record; proof: CapabilityProof; publicKeyBytes: Uint8Array; }): void; declare function multibaseBase58btc(bytes: Uint8Array): string; declare function multibaseBase58btcDecode(s: string): Uint8Array; //#endregion export { JcsCanonError, ProofVerificationError, canonicalizeJcs, multibaseBase58btc, multibaseBase58btcDecode, signCapability, verifyProof }; //# sourceMappingURL=proofs.d.mts.map