import { PropsWithChildren } from 'react'; import { AttachableEntity, AttachmentOperation } from './AttachmentTypes'; import { UseQueryOptions } from 'react-query'; export type AttachmentTableProps = Record> = { initiallyAttachedEntities: AttachableEntity[]; initiallyAttachedEntitiesStatus: 'idle' | 'loading' | 'success' | 'error'; initialAttachmentOperations: AttachmentOperation[]; entityName: { plural: string; singular: string; }; getNameQuery?: (entity: AttachableEntity) => UseQueryOptions; searchEntityPlaceholder: string; onAttachmentsOperationsChanged: (attachmentOperations: AttachmentOperation[]) => void; filteredEntities: { status: 'idle'; } | { status: 'loading' | 'error'; data?: { number: number; entities: AttachableEntity[]; }; } | { status: 'success'; data: { number: number; entities: AttachableEntity[]; }; }; onEntitySearchChange: (search?: string) => void; }; export declare const AttachmentProvider: = Record>({ children, }: PropsWithChildren<{}>) => import("react/jsx-runtime").JSX.Element; export declare const useAttachmentOperations: () => { resetAttachmentTable: (initiallyAttachedEntities: AttachableEntity[], //Deliberately using any here because we can't use generics initialAttachmentOperations: AttachmentOperation[]) => void; }; export declare const AttachmentTable: = Record>({ initiallyAttachedEntities, initiallyAttachedEntitiesStatus, initialAttachmentOperations, onAttachmentsOperationsChanged, entityName, searchEntityPlaceholder, getNameQuery, filteredEntities, onEntitySearchChange, }: AttachmentTableProps) => import("react/jsx-runtime").JSX.Element; //# sourceMappingURL=AttachmentTable.d.ts.map