/** Caller-owned checkout identity. Reuse only for the same server, account and pack. */ export interface RemoteCreditCheckoutOptions { idempotencyKey?: string; } export interface RemoteCreditCheckout { url: string; requestIdempotencyKey: string; } export declare const creditCheckoutKeyPattern: RegExp; export declare function creditCheckoutRequestKey(value: unknown): string; export declare const creditCheckoutMessages: { readonly CREDIT_CHECKOUT_UNCONFIRMED: "Checkout creation could not be confirmed. Keep the request idempotency key, inspect billing, and use the same key for an explicit retry on the same server, account and pack. No automatic retry was made."; readonly CREDIT_CHECKOUT_IN_PROGRESS: "This checkout is still being created. Wait before explicitly retrying the same server, account and pack with the same request idempotency key. No automatic retry was made."; readonly CREDIT_CHECKOUT_EXPIRED: "This checkout has expired. Inspect billing before deliberately starting a new purchase with a new request idempotency key. Do not retry this checkout automatically."; readonly CREDIT_CHECKOUT_FULFILLED: "This checkout is already fulfilled. Inspect the account balance; do not create another checkout to recover this purchase."; }; export type RemoteCreditCheckoutErrorCode = keyof typeof creditCheckoutMessages; /** Only recognized server states become typed outcomes; never retain server text. */ export declare function creditCheckoutFailure(value: unknown, status: number, key: string): { code: RemoteCreditCheckoutErrorCode; retryAfterSeconds?: number; };