import { PayrexxBaseModel, PayrexxTimestamps, Currency, MultiLanguageString } from '@/types'; export interface PaymentMethodRequest extends PayrexxBaseModel { filterCurrency?: Currency; filterPaymentType?: string; filterPsp?: number; } export interface PaymentMethodResponse extends PayrexxBaseModel, PayrexxTimestamps { name: string; label: MultiLanguageString; logo: PaymentMethodLogo; optionsByPsp: PaymentMethodPspOption[]; filterCurrency?: Currency; filterPaymentType?: string; filterPsp?: number; } export interface PaymentMethodLogo { small?: string; medium?: string; large?: string; vector?: string; } export interface PaymentMethodPspOption { pspId: number; pspName: string; pspLabel?: MultiLanguageString; supportedCurrencies: Currency[]; configuration: PaymentMethodConfiguration; fees?: PaymentMethodFees; limits?: PaymentMethodLimits; } export interface PaymentMethodConfiguration { [key: string]: any; requiresAuthentication?: boolean; supportsRefunds?: boolean; supportsPartialRefunds?: boolean; supportsRecurring?: boolean; supportsPreAuthorization?: boolean; settlementTime?: string; authorizationValidity?: number; } export interface PaymentMethodFees { fixedFee?: number; percentageFee?: number; minFee?: number; maxFee?: number; feeCurrency?: Currency; } export interface PaymentMethodLimits { minAmount?: number; maxAmount?: number; maxAmountPerDay?: number; maxAmountPerMonth?: number; maxTransactionsPerDay?: number; maxTransactionsPerMonth?: number; } export type PaymentMethodType = 'card' | 'bank_transfer' | 'digital_wallet' | 'buy_now_pay_later' | 'cryptocurrency' | 'voucher' | 'other'; export type KnownPaymentMethodCode = 'mastercard' | 'visa' | 'american_express' | 'paypal' | 'apple_pay' | 'google_pay' | 'klarna' | 'twint' | 'postfinance' | 'bitcoin' | 'sepa' | 'sofort' | string; //# sourceMappingURL=payment-method.d.ts.map