import React from "react";
export type Column = {
    name: string;
    title: string;
    type?: string;
    sortable?: boolean;
    width?: number;
    alignment?: string;
    valignment?: string;
    style?: Record<string, any>;
};
type HiddenCol = {
    name: string;
};
export type MoreAction = {
    name: string;
    icon?: React.ReactNode;
    onClick: (item: Record<string, any>) => void;
};
export type DataListProps = {
    cols: Column[];
    hiddencols?: HiddenCol[];
    sortcol?: string;
    orderby?: string;
    limit?: number;
    allowSearch?: boolean;
    searchMode?: "auto" | "manual";
    hideToolbar?: boolean;
    handler: (params: Record<string, any>) => Promise<Record<string, any>[]>;
    openItem?: (item: Record<string, any>) => void;
    onEdit?: (item: Record<string, any>) => void;
    onView?: (item: Record<string, any>) => void;
    onDelete?: (item: Record<string, any>) => void;
    onMore?: MoreAction[];
    emptyState?: {
        title?: string;
        message?: string;
    };
    renderExpandedRow?: (item: Record<string, any>) => React.ReactNode;
    actionColumnWidth?: number;
    searchFields?: string[];
};
declare const DataList: React.FC<DataListProps>;
export default DataList;
