import { type DocProblem } from './errors.js'; import type { DocContract } from './types.js'; export declare const TYPE_NAME: RegExp; export declare const RESERVED_TYPES: string[]; export declare const MAX_DOCUMENT_BYTES: number; export declare const DEFAULT_MAX_PUBLISH_ATTEMPTS = 3; export declare const DEFAULT_MAX_CONSISTENCY_REFUSALS = 5; /** Every reason the contract is invalid (all of them, with paths); empty when it is valid. */ export declare function validateContract(raw: unknown): DocProblem[]; /** The validated contract with every default filled in, deep-copied. Throws a DocError listing all problems. */ export declare function effectiveContract(raw: unknown): DocContract; export interface ContractRevision { /** sha-256 lowercase hex (64 characters) of `canonical`. */ revision: string; /** The exact text that was hashed: persist it as the immutable snapshot. */ canonical: string; contract: DocContract; } /** The revision of a contract (validated, defaults filled, canonicalized, hashed); see the file header. */ export declare function contractRevision(raw: unknown): ContractRevision; //# sourceMappingURL=contract.d.ts.map