import { Address, AddressType, AddressUpdatableInfo, CreateInternationalWireDetailsLocalData, ID, InternationalWireSelectorView } from '@zeniai/client-epic-state';
import { ResponsiveSized } from '../../../../context/windowSizeProvider';
import { DisableMode } from '../../../formElements/common/common';
import { MailingDetailsSectionFormData } from '../domesticDetailsPage/sections/MailingDetailsSection';
import { InternationalWireSectionFormData } from './sections/InternationalWireAccountSection';
/**
 * Dimensions
 */
export declare const D: {
    paddingTop: ResponsiveSized;
    paddingRight: ResponsiveSized;
    paddingBottom: ResponsiveSized;
    paddingLeft: ResponsiveSized;
    labelWidth: ResponsiveSized;
    largeLabelWidth: ResponsiveSized;
    width: ResponsiveSized;
    paddingTopBottomContainer: ResponsiveSized;
    paddingLeftContainer: ResponsiveSized;
    paddingRightContainer: ResponsiveSized;
    height: ResponsiveSized;
    controlHeight: ResponsiveSized;
    paddingTopBottom: ResponsiveSized;
    marginTop: ResponsiveSized;
    marginBottom: ResponsiveSized;
    marginRight: ResponsiveSized;
    marginLeft: ResponsiveSized;
    labelMarginLeft: ResponsiveSized;
    labelMarginRight: ResponsiveSized;
    labelMarginTop: ResponsiveSized;
    buttonWidth: ResponsiveSized;
};
declare const internationalWireSectionId = "internationalWireSection";
declare const mailingAddressSectionId = "mailingAddressSection";
export interface FormData {
    [internationalWireSectionId]: InternationalWireSectionFormData;
    [mailingAddressSectionId]?: MailingDetailsSectionFormData;
}
export interface InternationalWireDetailsPageProps {
    addressType: AddressType;
    billAmount: number;
    internationalWireView: InternationalWireSelectorView;
    vendorType: string;
    addressToEdit?: AddressUpdatableInfo;
    isCountryDropdownReadonly?: boolean;
    isCurrencyDropdownReadonly?: boolean;
    isDisabled?: DisableMode;
    mailingAddress?: Address;
    onAccountDetailsUpdated: (localData: CreateInternationalWireDetailsLocalData, billAmount: number, vendorType: string, isCountryOrCurrencyUpdated: boolean) => void;
    onAddressClick: (addressType: AddressType) => void;
    onBackClick: () => void;
    onCurrencyUpdated: (currency: string, billAmount: number, vendorType: string) => void;
    onSaveHandler: () => void;
}
export declare const uniqueName: (formId: ID) => `${string}_form`;
export declare const InternationalWireDetailsPage: ({ internationalWireView, vendorType, isCountryDropdownReadonly, isCurrencyDropdownReadonly, isDisabled, addressType, addressToEdit, mailingAddress, billAmount, onAccountDetailsUpdated, onCurrencyUpdated, onSaveHandler, onBackClick, onAddressClick, }: InternationalWireDetailsPageProps) => import("react/jsx-runtime").JSX.Element;
export {};
