/** * @fileoverview Write ACL Error Types * * Error hierarchy for Write ACL authorization and management operations. * These errors are thrown by the WriteAclManager, AuthorizedHeadRegistry, * and related components when write authorization checks fail. * * @see Requirements 3.4, 4.5, 6.4, 6.5 */ /** * Thrown when a write operation is rejected due to missing or invalid Write_Proof * in Restricted_Mode or Owner_Only_Mode. * * @see Requirement 3.4 */ export declare class WriteAuthorizationError extends Error { readonly dbName: string; readonly collectionName: string; readonly reason: string; readonly signerPublicKey?: string | undefined; constructor(dbName: string, collectionName: string, reason: string, signerPublicKey?: string | undefined); } /** * Thrown when an ACL mutation is attempted without a valid administrator signature. * * @see Requirement 4.1, 4.2, 4.3, 4.4 */ export declare class AclAdminRequiredError extends Error { readonly dbName: string; readonly collectionName?: string | undefined; readonly operation?: string | undefined; constructor(dbName: string, collectionName?: string | undefined, operation?: string | undefined); } /** * Thrown when a capability token has expired. * * @see Requirement 6.4 */ export declare class CapabilityTokenExpiredError extends Error { readonly expiresAt: Date; readonly currentTime: Date; constructor(expiresAt: Date, currentTime: Date); } /** * Thrown when a capability token's signature does not match any current ACL administrator. * * @see Requirement 6.5 */ export declare class CapabilityTokenInvalidError extends Error { readonly reason: string; readonly grantorPublicKey?: string | undefined; constructor(reason: string, grantorPublicKey?: string | undefined); } /** * Thrown when an attempt is made to remove the last ACL administrator. * * @see Requirement 4.5 */ export declare class LastAdministratorError extends Error { readonly dbName: string; readonly collectionName?: string | undefined; constructor(dbName: string, collectionName?: string | undefined); } /** * Thrown when an ACL document update has a version number less than or equal * to the current version. * * @see Requirement 2.6 */ export declare class AclVersionConflictError extends Error { readonly currentVersion: number; readonly incomingVersion: number; readonly dbName: string; readonly collectionName?: string | undefined; constructor(currentVersion: number, incomingVersion: number, dbName: string, collectionName?: string | undefined); } /** * Thrown when an ACL document's signature fails verification on load. * * @see Requirement 2.3, 2.4 */ export declare class AclSignatureVerificationError extends Error { readonly documentId: string; readonly reason: string; constructor(documentId: string, reason: string); } /** * Thrown when attempting to add a writer who is not in the pool encryption member list. * * @see Requirement 8.2 */ export declare class WriterNotInPoolError extends Error { readonly writerPublicKey: string; readonly dbName: string; readonly collectionName?: string | undefined; constructor(writerPublicKey: string, dbName: string, collectionName?: string | undefined); } //# sourceMappingURL=writeAclErrors.d.ts.map