import { AuthParams, FetchStateAndError, File, FilePayload, ID, VendorDetails } from '@zeniai/client-epic-state';
import { FormSectionProps } from '../../../../../formElements/common/formSection';
import { SelectDocumentType } from '../../../../../formElements/documentUploadWithTypeField/DocumentUploadWithTypeField';
export interface AllVendorDocumentsSectionProps extends FormSectionProps {
    authParams: AuthParams;
    filesEndPoint: string;
    deleteFileStatusById?: Record<ID, FetchStateAndError | undefined>;
    updateFileStatusById?: Record<ID, FetchStateAndError | undefined>;
    vendorData?: VendorDetails;
    onEditFileName?: (fileId: ID, name: string) => void;
    updateFilesEntity?: (files: FilePayload[]) => void;
}
export interface VendorDocumentsSectionProps extends AllVendorDocumentsSectionProps {
    index: number;
    addedDocuments?: AddedDocuments[];
    onDeleteFile?: (fileId: ID) => void;
    onDeleteType?: (fileId?: ID) => void;
}
export declare const vendorDocumentsSectionId = "vendorDocuments";
export interface VendorDocumentsSectionFormData {
    fileIds: ID[];
    documents?: SelectDocument[];
    fileIdsToBeDeleted?: ID[];
}
interface SelectDocument {
    fileId: ID;
    back?: File;
    front?: File;
    selectDocumentType?: SelectDocumentType;
}
interface AddedDocuments {
    documentType?: SelectDocumentType;
    file?: File;
    fileId?: ID;
}
declare const AllVendorDocumentsSection: (props: AllVendorDocumentsSectionProps) => import("react/jsx-runtime").JSX.Element;
export default AllVendorDocumentsSection;
