import * as React from 'react'; /** * Schema for a table column */ export interface TableColumnSchema { /** Unique key for the column, maps to data field */ key: string; /** Display label for the column header */ label: string; /** Whether the column is sortable (not yet implemented) */ sortable?: boolean; /** Whether cells in this column are editable (not yet implemented) */ editable?: boolean; /** Column width - can be number (pixels) or string (e.g., '100px', '20%') */ width?: number | string; } /** * Schema for configuring an AITable */ export interface TableBlockSchema { /** Unique identifier for the component instance */ id: string; /** Optional title displayed above the table */ title?: string; /** Column definitions */ columns: TableColumnSchema[]; /** Array of row data */ data: Record[]; /** Whether rows can be selected with checkboxes */ selectable?: boolean; /** Pagination configuration (not yet implemented) */ pagination?: boolean | { pageSize: number; }; } /** * Props for AITable */ export interface AITableProps { /** Schema defining the table configuration */ schema: TableBlockSchema; /** Additional class names */ className?: string; } /** * AITable - Renders interactive data tables from JSON schema. * * Supports row selection with checkboxes and emits interaction events * through the AIInteractionContext when selections change. */ export declare function AITable({ schema, className, }: AITableProps): React.ReactElement; export declare namespace AITable { var displayName: string; } export default AITable;