import type { ReactNode } from 'react'; import type { ArkmeBillingOrderSnapshot, ArkmeBillingPaymentMethod, ArkmeBillingProduct, ArkmeQuotaSnapshot } from '../types.js'; export type ArkmeQuotaViewState = { kind: 'loading'; } | { kind: 'ready'; quota: ArkmeQuotaSnapshot; } | { kind: 'error'; message: string; }; export type ArkmeProductsViewState = { kind: 'loading'; } | { kind: 'ready'; products: ArkmeBillingProduct[]; } | { kind: 'error'; message: string; }; export declare function formatArkmeBillingPrice(priceMinor: number, _currency: 'CNY'): string; export declare function formatArkmePoints(value: string): string; export interface ArkmeBalanceSettingsRowViewProps { quotaState: ArkmeQuotaViewState; onOpen(): void; } export declare function ArkmeBalanceSettingsRowView(props: ArkmeBalanceSettingsRowViewProps): import("react").JSX.Element; interface ArkmeRechargeDialogViewProps { quotaState: ArkmeQuotaViewState; productsState: ArkmeProductsViewState; selectedProductId: string | undefined; creatingMethod: ArkmeBillingPaymentMethod | undefined; purchaseError: string; onClose(): void; onRefreshQuota(): void; onRetryProducts(): void; onSelectProduct(productId: string): void; onPurchase(paymentMethod: ArkmeBillingPaymentMethod): void; } export declare function ArkmeRechargeDialogView(props: ArkmeRechargeDialogViewProps): import("react").JSX.Element; interface ArkmePaymentDialogProps { order: ArkmeBillingOrderSnapshot; nowMillis: number; statusError: string; statusRetryable: boolean; statusRetryInMillis?: number; quotaState: ArkmeQuotaViewState; onClose(): void; onRetryStatus(): void; onRegenerate(): void; onRefreshQuota(): void; onOpenPaymentUrl(url: string): void; } export declare function ArkmePaymentDialog(props: ArkmePaymentDialogProps): import("react").JSX.Element; export declare function ArkmeBillingSettings({ active, renderTrigger, modal, onCreditsChanged }?: { active?: boolean; onCreditsChanged?: () => void; modal?: boolean; renderTrigger?: (props: ArkmeBalanceSettingsRowViewProps & { onRefresh(): void; }) => ReactNode; }): import("react").JSX.Element; export {}; //# sourceMappingURL=ArkmeBillingSettings.d.ts.map