import { CreateConfig, DeleteConfig, UpdateConfig } from '../../../definitions/shared/crud';
import { DataTableColumn, DataTableOptions, ExportConfig, TableAction } from '../../../definitions/cards/DataTableCard';
export interface DataTableCardProps {
    /** Title rendered above the table. Falls back to the more generic `title`. */
    tableTitle?: string;
    title?: string;
    subtitle?: string;
    showCard?: boolean;
    classList?: string[] | string;
    /** Column definitions. */
    headers?: DataTableColumn[];
    /** Behaviour and toolbar configuration. */
    options?: DataTableOptions;
    /** Sub-array path on `item` when rendering nested tables. */
    listKey?: string;
    /** Static (non-paginated) row source. */
    listData?: unknown[];
    /** Per-row action buttons (also merged with `options.additionalActions`). */
    actions?: TableAction[];
    /** Enable row selection. */
    selectable?: boolean;
    /** Bulk action buttons. */
    bulkActions?: TableAction[];
    /** Empty-state message. */
    emptyMessage?: string;
    /** Page-level data model. Used as the row source when `listKey` is set. */
    item?: Record<string, unknown>;
    /** Create-modal configuration. */
    createConfig?: CreateConfig;
    /** Inline update configuration. */
    updateConfig?: UpdateConfig;
    /** Delete configuration. */
    deleteConfig?: DeleteConfig;
}
declare const _default: import('vue').DefineComponent<DataTableCardProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
    action: (payload: {
        action: TableAction;
        row: Record<string, unknown>;
    }) => any;
    export: (payload: {
        export: ExportConfig;
    }) => any;
}, string, import('vue').PublicProps, Readonly<DataTableCardProps> & Readonly<{
    onAction?: ((payload: {
        action: TableAction;
        row: Record<string, unknown>;
    }) => any) | undefined;
    onExport?: ((payload: {
        export: ExportConfig;
    }) => any) | undefined;
}>, {
    showCard: boolean;
    selectable: boolean;
    headers: DataTableColumn[];
    item: Record<string, unknown>;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLElement>;
export default _default;
//# sourceMappingURL=DataTableCard.vue.d.ts.map