import { ReactElement } from 'react'; import { BCDropListOptionsType } from '../constants'; export declare const ColumnTypes: { Normal: string; DropList: string; Textbox: string; Status: string; Actions: string; Custom: string; }; export declare const StatusTypes: { Active: string; Pending: string; Inactive: string; }; export type Action = { key: string; icon: string | ReactElement; handler?: () => any; tooltip?: string; }; export type Column = { title?: string; valueResolver?: (obj: Row) => string; valueSetter?: (obj: Row, newValue: string) => void; renderer?: (obj: Row) => JSX.Element; type?: string; list?: BCDropListOptionsType[]; actions?: Action[] | ((row: any) => Action[]); sorted?: boolean; cssClass?: string; }; export type Row = { [key: string]: unknown; } & { id: any; }; export type SharedBCTableProps = { textboxChanged?: (row: Row) => void; actionClicked?: (key: string, row: Row, index: number) => void; dropListChanged?: (row: Row, choosedKey?: string) => void; }; export type BCCellProps = SharedBCTableProps & { column: Column; row: Row; index: number; forceUpdate: () => void; actionClicked?: (key: string, row: Row, index: number) => void; }; export type BCTableProps = SharedBCTableProps & { className?: string; rows: Row[]; columns: Column[]; builtInSearch?: boolean; searchPattern?: string; noItemsMessage?: string; rtl?: boolean; loading?: boolean; }; export declare const BCCell: ({ column, row, index, forceUpdate, textboxChanged, dropListChanged, actionClicked }: BCCellProps) => JSX.Element | null; export declare const BCTable: ({ className, rows: inputRows, columns, dropListChanged, textboxChanged, actionClicked, builtInSearch, searchPattern, noItemsMessage, rtl, loading, }: BCTableProps) => import("@emotion/react/jsx-runtime").JSX.Element; export default BCTable;