import { default as React } from 'react';

interface Field {
    name?: string;
    label: string;
    field_type: string;
    is_fullwidth?: boolean;
    custom_width?: number;
    is_hidden?: boolean;
    is_required?: boolean;
    disabled?: boolean;
    placeholder?: string;
    value?: any;
    default_value?: any;
    title?: string;
    title_position?: string;
    table_columns?: any[];
    table_rows?: any[];
    component?: React.ReactNode;
    field_properties?: {
        apiType?: string;
        customeFilter?: any;
        filterFields?: string | string[];
        attributes?: any;
        disabledIds?: any[];
        sortOrder?: string;
        maxChips?: number;
        allowDuplicates?: boolean;
    };
    validation?: any;
    filterField?: string;
}
interface Section {
    label?: string;
    is_accordion?: boolean;
    disabled?: boolean;
    form_switcher_label?: string;
}
interface FormSectionProps {
    section: Section;
    index: number;
    members?: Field[];
    switchForms?: any[];
    isFormSwitcher: boolean;
    control: any;
    fieldArrayName: string;
    formSwitcherName: string;
    displayAvtar?: boolean;
    isButton?: boolean;
    currencyOption?: any;
    values: any;
    onBlur?: (e: any, fieldName?: string) => void;
    setValue: (name: string, value: any) => void;
    onSelectFooterClick?: (field: Field) => void;
    getSelectedData?: (row: any, key: any) => void;
    setCurrencyOptions: (options: any) => void;
    refreshOptions: any;
    handleFieldCleanUp: (forms: any[]) => void;
    handleSetCountryCodeField: (country: any, field: Field, fieldArrayName: string, values: any) => void;
    handleTableAddClick: (field: Field) => void;
    onTableCellChange?: (data: any) => void;
    t: (key: string) => string;
    images: any;
}
declare const FormSection: React.NamedExoticComponent<FormSectionProps>;
export { FormSection };
export default FormSection;
