import { AddressType, AllowedValueWithCode, CompanyInfoLocalData, CompanyView, Country, Month, NewAddressData } from '@zeniai/client-epic-state';
import { CreatableSingleSelectFieldValue } from '../../../creatableSingleSelect/CreatableSingleSelectField';
import { FormSectionProps } from '../../../formElements/common/formSection';
import { CountryMultiSelectFieldValue } from '../../../formElements/countryMultiSelectField/CountryMultiSelectField';
import { MultiSelectFieldValue } from '../../../formElements/multiSelectField/MultiSelectField';
import { SingleSelectFieldValue } from '../../../singleSelect/SingleSelectField';
/**
 * Component & its Props
 */
export interface CompanyInfoSectionProps extends FormSectionProps {
    allIndustries: AllowedValueWithCode[];
    companyViewData: CompanyView;
    allNationalityCountries?: Country[];
    companyAddress?: NewAddressData;
    companyInfo?: CompanyInfoLocalData;
    isCompanyVerified?: boolean;
    style?: React.CSSProperties;
    onCompanyAddressClick: (addressType: AddressType) => void;
}
export declare function CompanyInfoSection({ companyViewData, allIndustries, allNationalityCountries, companyInfo, companyAddress, sectionId, isDisabled, isCompanyVerified, onCompanyAddressClick, style, }: CompanyInfoSectionProps): import("react/jsx-runtime").JSX.Element;
/**
 * Form Data Type
 */
export interface CompanyInfoSectionFormData {
    businessModel: CreatableSingleSelectFieldValue;
    companyName: string;
    firstMonthOfFY: Month;
    industry: SingleSelectFieldValue;
    legalName: string;
    phone: string;
    website: string;
    companyIndustryType?: SingleSelectFieldValue;
    companySourceOfFunds?: SingleSelectFieldValue;
    companySourceOfFundsDescription?: string;
    companySubIndustry?: SingleSelectFieldValue;
    countriesOfOperations?: CountryMultiSelectFieldValue;
    purposeOfAccount?: SingleSelectFieldValue;
    purposeOfAccountDescription?: string;
    regulatedStatus?: string;
    regulatedStatusDescription?: string;
    transactionVolume?: SingleSelectFieldValue;
    transactionVolumeDescription?: string;
    usNexus?: string;
    usNexusTypes?: MultiSelectFieldValue;
}
type FormDataKeys = keyof CompanyInfoSectionFormData;
declare const uniqueName: (sectionId: string, key: FormDataKeys) => `${string}.phone` | `${string}.legalName` | `${string}.companyIndustryType` | `${string}.companySourceOfFunds` | `${string}.companySourceOfFundsDescription` | `${string}.companySubIndustry` | `${string}.countriesOfOperations` | `${string}.purposeOfAccount` | `${string}.purposeOfAccountDescription` | `${string}.regulatedStatus` | `${string}.regulatedStatusDescription` | `${string}.transactionVolume` | `${string}.transactionVolumeDescription` | `${string}.usNexus` | `${string}.usNexusTypes` | `${string}.companyName` | `${string}.website` | `${string}.industry` | `${string}.firstMonthOfFY` | `${string}.businessModel`;
export type FormDataKeyUniqueNames = ReturnType<typeof uniqueName>;
export {};
