import { AuthParams, FetchStateAndError, File, FilePayload, ID } from '@zeniai/client-epic-state';
import { FormSectionProps } from '../formElements/common/formSection';
export interface AttachmentFormData {
    fileIndex: number;
    fileId?: ID;
}
export type FormDataKeys = keyof AttachmentFormData;
export declare const uniqueName: (sectionId: string, key: FormDataKeys) => `${string}.fileId` | `${string}.fileIndex`;
export declare const formUniqueName: (formId: ID) => `${string}_form`;
export type FormDataKeyUniqueNames = ReturnType<typeof uniqueName>;
export interface AllTaskAttachmentsProps extends FormSectionProps {
    authParams: AuthParams;
    deleteFileStatusById: Record<ID, FetchStateAndError | undefined>;
    files: File[];
    filesEndPoint: string;
    updateFileStatusById: Record<ID, FetchStateAndError | undefined>;
    onDeleteFile: (fileId: ID) => void;
    onEditFileName: (fileId: ID, newFilename: string) => void;
    updateFilesEntity: (files: FilePayload[]) => void;
}
export declare const AllTaskAttachments: ({ sectionId, deleteFileStatusById, updateFileStatusById, filesEndPoint, authParams, files, updateFilesEntity, onEditFileName, onDeleteFile, }: AllTaskAttachmentsProps) => import("react/jsx-runtime").JSX.Element;
