type PaymentMode = 'payment' | 'subscription' | 'setup'; interface PaymentInputs { amount?: number; currency?: string; mode?: PaymentMode; price_id?: string; product_id?: string; product_name?: string; customer_email?: string; success_url?: string; cancel_url?: string; quantity?: number; metadata?: Record; } interface PaymentResponseData { sessionId: string; url: string; sessionObject: any; } interface PaymentResponseMetadata { integrationKey: string; capabilityId: string; executedAt: string; credentialName: string; mode: PaymentMode; amount?: number; currency?: string; [key: string]: any; } interface PaymentResponse { success: boolean; message?: string; error?: string; data?: PaymentResponseData; metadata?: PaymentResponseMetadata; } interface PaymentCallbackPayload { [key: string]: any; } interface UsePaymentOptions { capabilityId?: string; integrationKey?: string; onSuccess?: (payload: PaymentCallbackPayload) => void; onFailure?: (payload: PaymentCallbackPayload) => void; } /** * React hook for handling Stripe checkout payments with loading, error states * @param options - Configuration including capability ID, integration key, and callbacks * @returns Object with payment function and state management */ export declare function usePayment(options?: UsePaymentOptions): { createCheckout: (inputs: PaymentInputs) => Promise; reset: () => void; loading: boolean; error: string | null; success: boolean; }; export {}; //# sourceMappingURL=usePayment.d.ts.map