import { type JSX, type ReactNode } from 'react';
import { type DataTableColumn, type GetRowId } from '../../../components/data-table/DataTable.js';
import { type TableToolbarProps } from '../../molecules/table_toolbar/TableToolbar.js';
export type BackofficeDataTableSelection<Row> = {
    selectedRowIds: ReadonlySet<string>;
    onSelectionChange: (next: ReadonlySet<string>) => void;
    isRowSelectable?: (row: Row, index: number) => boolean;
};
export type BackofficeDataTableProps<Row> = {
    columns: readonly DataTableColumn<Row>[];
    rows: readonly Row[];
    getRowId: GetRowId<Row>;
    toolbar?: TableToolbarProps;
    selection?: BackofficeDataTableSelection<Row>;
    bulkActions?: ReactNode;
    emptyState?: JSX.Element;
    className?: string;
};
export declare const BackofficeDataTable: <Row>({ columns, rows, getRowId, toolbar, selection, bulkActions, emptyState, className, }: BackofficeDataTableProps<Row>) => JSX.Element;
export default BackofficeDataTable;
//# sourceMappingURL=BackofficeDataTable.d.ts.map