import { z } from 'zod'; import { ComputedRef } from 'vue'; import { DataApi, DataResolverState, FullQueryState, RowAction } from '../types/shared'; import { DataTableColumn, DataTableColumnGroup, DataTableSchema, TDataTableColumn } from '../types/datatable'; declare const BASE_CONF_CONF_SCHEMA: z.ZodObject<{ label: z.ZodOptional]>>; key: z.ZodString; fixed: z.ZodOptional, z.ZodLiteral<"right">]>>; visible: z.ZodBoolean; condition: z.ZodOptional>; order: z.ZodNumber; }, z.core.$strip>; type BaseColConf = z.infer & { children: BaseColConf[]; }; export declare const RUNTIME_COLS_CONFIG_SCHEMA: z.ZodArray>>; export type RuntimeColsConfig = z.infer; export declare function useTableColumns(params: { selection: ComputedRef; remote: ComputedRef; columns: ComputedRef>; queryState: FullQueryState; resolver: DataResolverState; dataApi: DataApi; persistency: ComputedRef; tableKey: ComputedRef; searchQuery: ComputedRef; data: FullQueryState['data']; sortState: FullQueryState['sortState']; rowActions: ComputedRef; expandable: ComputedRef; expandedContent: ComputedRef; draggable: ComputedRef; }): { columnDefs: ComputedRef; columnConfig: globalThis.Ref<{ key: string; visible: boolean; order: number; label?: string | z.core.$InferOuterFunctionType | undefined; fixed?: "left" | "right" | undefined; condition?: z.core.$InferOuterFunctionType | undefined; children: /*elided*/ any[]; }[], BaseColConf[] | { key: string; visible: boolean; order: number; label?: string | z.core.$InferOuterFunctionType | undefined; fixed?: "left" | "right" | undefined; condition?: z.core.$InferOuterFunctionType | undefined; children: /*elided*/ any[]; }[]>; hasActiveRowActions: ComputedRef; resetColumnsConfig: () => void; }; export declare function getFlatColumns(columns: Array, parent?: string[], includeGroupParents?: boolean): Array<(DataTableColumn | DataTableColumnGroup) & { childOf: string[]; }>; export declare function mapColumnsConfig(columns: Array, persistency: false | 'localStorage' | 'sessionStorage', tableKey: string, persistedConfig: RuntimeColsConfig | null): RuntimeColsConfig; export declare function sortCols(a: BaseColConf, b: BaseColConf): number; export {};