/** * Typed errors for `@autlantic/payments-recurring`. * Prefer `error.code` / `error.type` over string-matching `message`. */ export type AutlanticBillingErrorType = "api_error" | "authentication_error" | "configuration_error" | "validation_error" | "not_found" | "webhook_error" | "idempotency_error"; export type AutlanticBillingErrorCode = "api_error" | "authentication_error" | "configuration_error" | "validation_error" | "resource_missing" | "payment_link_error" | "payment_confirm_failed" | "subscription_activate_failed" | "subscription_update_failed" | "subscription_cancel_failed" | "invoice_not_chargeable" | "invoice_not_refundable" | "invoice_not_voidable" | "webhook_missing_header" | "webhook_invalid_signature" | "webhook_parse_failed" | "idempotency_error" | "workspace_plan_required" | (string & {}); export type AutlanticBillingErrorParams = { message: string; code?: AutlanticBillingErrorCode; type?: AutlanticBillingErrorType; statusCode?: number; /** Client-generated or server-returned request correlation id. */ requestId?: string | null; path?: string; method?: string; /** Nested cause (network / JSON parse / etc.). */ cause?: unknown; /** Extra structured context safe to log (already redact secrets before attaching). */ details?: Record; }; export declare class AutlanticBillingError extends Error { readonly name = "AutlanticBillingError"; readonly code: AutlanticBillingErrorCode; readonly type: AutlanticBillingErrorType; readonly statusCode: number | undefined; readonly requestId: string | null; readonly path: string | undefined; readonly method: string | undefined; readonly details: Record | undefined; constructor(params: AutlanticBillingErrorParams); /** JSON-safe shape for logs / APIs. */ toJSON(): Record; static is(err: unknown): err is AutlanticBillingError; static fromHttp(input: { statusCode: number; message: string; requestId?: string | null; path?: string; method?: string; code?: string; }): AutlanticBillingError; static configuration(message: string, details?: Record): AutlanticBillingError; static notFound(message: string, details?: Record): AutlanticBillingError; static validation(message: string, details?: Record): AutlanticBillingError; } //# sourceMappingURL=errors.d.ts.map