export interface PaymentsProviderLink { _type: string; url: string; } export interface PluginData { _type?: string; slug: string; file: string; status: 'installed' | 'active' | 'not_installed'; } export interface PaymentsProviderState { enabled: boolean; account_connected: boolean; needs_setup: boolean; test_mode: boolean; dev_mode: boolean; } export interface LinkData { href: string; } export interface ManagementData { _links: { settings: LinkData; }; } export declare enum PaymentsProviderType { OfflinePmsGroup = "offline_pms_group", OfflinePm = "offline_pm", Suggestion = "suggestion", Gateway = "gateway" } export type PaymentsProviderIncentive = { id: string; promo_id: string; title: string; description: string; short_description: string; cta_label: string; tc_url: string; badge: string; _dismissals: PaymentsProviderIncentiveDismissal[]; _links: { dismiss: LinkData; }; }; interface PaymentsProviderIncentiveDismissal { timestamp: number; context: string; } export type RecommendedPaymentMethod = { id: string; _order: number; title: string; description: string; category?: 'primary' | 'secondary'; icon: string; enabled: boolean; extraTitle: string; extraDescription: string; extraIcon: string; }; export type PaymentsProviderOnboardingState = { supported: boolean; started: boolean; completed: boolean; test_mode: boolean; test_drive_account?: boolean; wpcom_has_working_connection?: boolean; wpcom_is_store_connected?: boolean; wpcom_has_connected_owner?: boolean; wpcom_is_connection_owner?: boolean; }; export type PaymentsEntity = { id: string; title: string; description: string; icon: string; plugin: PluginData; onboarding?: { _links?: { preload?: LinkData; }; type?: string; }; _links: Record; _suggestion_id?: string; }; export type PaymentsProvider = PaymentsEntity & { _type: PaymentsProviderType; _order: number; image?: string; supports?: string[]; management?: ManagementData; state?: PaymentsProviderState; links?: PaymentsProviderLink[]; onboarding?: { state?: PaymentsProviderOnboardingState; messages?: { not_supported?: string; }; _links?: { onboard?: LinkData; reset?: LinkData; }; recommended_payment_methods?: RecommendedPaymentMethod[]; type?: string; }; tags?: string[]; _incentive?: PaymentsProviderIncentive; }; export type PaymentGatewayProvider = PaymentsProvider & { _order: number; supports: string[]; management: ManagementData; state: PaymentsProviderState; onboarding: { state: PaymentsProviderOnboardingState; messages: { not_supported?: string; }; _links: { onboard: LinkData; reset: LinkData; disable_test_account?: LinkData; }; recommended_payment_methods: RecommendedPaymentMethod[]; type: string; }; }; export type OfflinePaymentMethodProvider = PaymentsProvider & { _order: number; supports: string[]; management: ManagementData; state: PaymentsProviderState; onboarding: { state: PaymentsProviderOnboardingState; _links: { onboard: LinkData; }; }; }; export type OfflinePmsGroupProvider = PaymentsProvider & { _order: number; management: ManagementData; }; export type PaymentsExtensionSuggestionProvider = PaymentsProvider & { _order: number; onboarding: { state: PaymentsProviderOnboardingState; _links: { preload?: LinkData; }; type?: string; }; _suggestion_id: string; _links: { hide: LinkData; }; }; export type SuggestedPaymentsExtension = PaymentsEntity & { _type: string; _priority: number; category: string; image: string; short_description: string; tags: string[]; links: PaymentsProviderLink[]; _incentive?: PaymentsProviderIncentive; }; export type SuggestedPaymentsExtensionCategory = { id: string; _priority: number; title: string; description: string; }; export type PaymentsSettingsState = { providers: PaymentsProvider[]; offlinePaymentGateways: OfflinePaymentMethodProvider[]; suggestions: SuggestedPaymentsExtension[]; suggestionCategories: SuggestedPaymentsExtensionCategory[]; isFetching: boolean; errors: Record; isWooPayEligible: boolean; }; export type OrderMap = Record; export type PaymentProvidersResponse = { providers: PaymentsProvider[]; offline_payment_methods: OfflinePaymentMethodProvider[]; suggestions: SuggestedPaymentsExtension[]; suggestion_categories: SuggestedPaymentsExtensionCategory[]; }; export type EnableGatewayResponse = { success: boolean; data: unknown; }; export interface WooPayEligibilityResponse { is_eligible: boolean; } export {}; //# sourceMappingURL=types.d.ts.map