import { z } from 'zod'; import { T_IO_PROPS, tableColumn, T_IO_RETURNS, serializableRecord, menuItem } from '../ioSchema'; import Logger from '../classes/Logger'; export declare type CellValue = string | number | boolean | null | Date | undefined; export declare type ColumnResult = ({ label: string | number | boolean | null | Date | undefined; value?: CellValue; } & ({ url: string; } | { action: string; params?: z.infer; } | {})) | CellValue; export interface Column extends z.input { label: string; renderCell: (row: Row) => ColumnResult; } export declare function selectTable(logger: Logger): | undefined; value?: string | number | boolean | Date | null | undefined; href?: string | undefined; url?: string | undefined; action?: string | undefined; label: string; } | null | undefined> | {} = any>(props: Omit<{ disabled?: boolean | undefined; helpText?: string | undefined; columns?: { label: string; }[] | undefined; defaultPageSize?: number | undefined; minSelections?: number | undefined; maxSelections?: number | undefined; data: { menu?: ({ theme?: "default" | "danger" | undefined; label: string; } & ({ params?: Record | undefined; disabled?: boolean | undefined; action: string; } | { disabled?: boolean | undefined; url: string; } | { disabled: true; }))[] | undefined; data: Record | undefined; value?: string | number | boolean | Date | null | undefined; href?: string | undefined; url?: string | undefined; action?: string | undefined; label: string; } | null | undefined> | {}; key: string; }[]; }, "data" | "columns"> & { data: Row[]; columns?: (string | Column)[] | undefined; rowMenuItems?: ((row: Row) => z.infer[]) | undefined; }) => { props: { data: { menu?: ({ theme?: "default" | "danger" | undefined; label: string; } & ({ params?: Record | undefined; disabled?: boolean | undefined; action: string; } | { disabled?: boolean | undefined; url: string; } | { disabled: true; }))[] | undefined; data: Record | undefined; value?: string | number | boolean | Date | null | undefined; href?: string | undefined; url?: string | undefined; action?: string | undefined; label: string; } | null | undefined> | {}; key: string; }[]; columns: { label: string; renderCell: (args_0: any, ...args_1: unknown[]) => string | number | boolean | Date | ({ value?: string | number | boolean | Date | null | undefined; label?: string | number | boolean | Date | null | undefined; } & ({ url: string; } | { href: string; } | { params?: Record | undefined; action: string; } | {})) | null | undefined; }[]; disabled?: boolean | undefined; helpText?: string | undefined; defaultPageSize?: number | undefined; minSelections?: number | undefined; maxSelections?: number | undefined; rowMenuItems?: ((row: Row) => z.infer[]) | undefined; }; getValue(response: T_IO_RETURNS<'SELECT_TABLE'>): Row[]; }; export declare function displayTable(logger: Logger): | undefined; value?: string | number | boolean | Date | null | undefined; href?: string | undefined; url?: string | undefined; action?: string | undefined; label: string; } | null | undefined> | {} = any>(props: Omit<{ helpText?: string | undefined; columns?: { label: string; }[] | undefined; defaultPageSize?: number | undefined; orientation?: "vertical" | "horizontal" | undefined; data: { menu?: ({ theme?: "default" | "danger" | undefined; label: string; } & ({ params?: Record | undefined; disabled?: boolean | undefined; action: string; } | { disabled?: boolean | undefined; url: string; } | { disabled: true; }))[] | undefined; data: Record | undefined; value?: string | number | boolean | Date | null | undefined; href?: string | undefined; url?: string | undefined; action?: string | undefined; label: string; } | null | undefined> | {}; key: string; }[]; }, "data" | "columns"> & { data: Row[]; columns?: (string | Column)[] | undefined; rowMenuItems?: ((row: Row) => z.infer[]) | undefined; }) => { props: { data: { menu?: ({ theme?: "default" | "danger" | undefined; label: string; } & ({ params?: Record | undefined; disabled?: boolean | undefined; action: string; } | { disabled?: boolean | undefined; url: string; } | { disabled: true; }))[] | undefined; data: Record | undefined; value?: string | number | boolean | Date | null | undefined; href?: string | undefined; url?: string | undefined; action?: string | undefined; label: string; } | null | undefined> | {}; key: string; }[]; columns: { label: string; renderCell: (args_0: any, ...args_1: unknown[]) => string | number | boolean | Date | ({ value?: string | number | boolean | Date | null | undefined; label?: string | number | boolean | Date | null | undefined; } & ({ url: string; } | { href: string; } | { params?: Record | undefined; action: string; } | {})) | null | undefined; }[]; helpText?: string | undefined; defaultPageSize?: number | undefined; orientation?: "vertical" | "horizontal" | undefined; rowMenuItems?: ((row: Row) => z.infer[]) | undefined; }; };