import React, { RefObject } from 'react'; import { AddressFields } from '@chargify/address'; import { PaymentsFormConfig, CreditCardFields } from '../../types'; type PaymentProfileProps = { paymentMethodType?: 'creditCard' | 'bankAccount'; useThreeDSecure?: boolean; formElementId?: string; requiredFields?: string[]; config: PaymentsFormConfig; onUpdateField: (fieldName: keyof AddressFields | keyof CreditCardFields, form: 'billingAddress' | 'paymentMethod', value: string | number) => void; onValidateField: (fieldName: keyof AddressFields | keyof CreditCardFields, form: 'billingAddress' | 'paymentMethod', value: string | number) => void; billingAddress: { values: AddressFields; errors: { [key in keyof AddressFields]?: 'required' | 'invalid'; }; }; paymentMethod: { values: CreditCardFields; hostedFieldsErrors: string[]; errors: { [key in keyof CreditCardFields]?: 'required' | 'invalid'; }; }; targetElementRef?: RefObject; }; declare const PaymentProfile: { ({ paymentMethodType, requiredFields, useThreeDSecure, formElementId, onUpdateField, onValidateField, billingAddress, paymentMethod, config, targetElementRef, }: PaymentProfileProps): React.JSX.Element; LoadingSkeleton: () => React.JSX.Element; }; export default PaymentProfile;