import { ColumnProps as CustomColumnProps, FilterProps as CustomFilterProps, NodeUnionOf, ResolveProps, Schema } from '@lattice-php/core'; import { ComponentPropsMap, Column, ColumnPropsMap, Filter, FilterPropsMap, Table, TableNodeType } from './generated.js'; export type { Column, Column as ColumnWireProps, ColumnFilter, ColumnNodeType, Filter, Filter as FilterWireProps, FilterClause, FilterIndicator, FilterNodeType, SortDirection, Table as TableWireProps, TableNodeType, TablePagination, TableQuery, TableResult, TableSort, } from './generated.js'; export type { ContentAlign, Side } from '@lattice-php/ui'; declare module "@lattice-php/core" { interface ComponentProps extends ComponentPropsMap { } interface ColumnProps extends ColumnPropsMap { } interface FilterProps extends FilterPropsMap { } } export interface ColumnProps extends CustomColumnProps { } export type ColumnPropsOf = ResolveProps>; export type CommonColumnProps = Column; export type ColumnNode = { type: TType; key: string; props: ColumnPropsOf; schema?: Schema; }; export interface FilterProps extends CustomFilterProps { } export type FilterPropsOf = ResolveProps>; export type FilterNode = { type: TType; key: string; props: FilterPropsOf; schema?: Schema; }; export type ActionNode = NodeUnionOf<"action" | "action.bulk" | "action.group">; export type TableRow = Record; export type TableNodeProps = Partial; export type TableNode = { type: TableNodeType; id?: string; key?: string; props?: TableNodeProps; }; export type TableColumn = ColumnNode;