import type { DataGridLocale } from './locale/locale'; import type { ColType, ColGroupType, PathType } from './typings'; import { Subject } from '@lemon-fe/utils'; import type { ColDef, ColGroupDef } from 'ag-grid-community'; export declare const prefix: (val?: string | undefined) => string; export declare function isColumn(col: ColGroupType | ColType): col is ColType; export declare function isColumnDef(col: ColGroupDef | ColDef): col is ColDef; export declare function getColField(col: { field?: string; key?: string; dataIndex?: PathType; colId?: string; }): string | undefined; export declare function isCustomField(id: string): boolean; export declare function withSyncRender(callback: (...args: any) => any): void; export declare class ColMethod { private record; private get; set(col: ColType, method: PathType): void; reset(): void; toRef: any>(field: string | undefined, path: PathType) => K; } export declare class Store> { private state; private subject; constructor(initialState: T); setState(value: Partial | ((prevState: T) => Partial)): void; getState(): T; subscribe(...args: Parameters['subscribe']>): { unsubscribe: () => void; }; } export declare class Selection { private record; private keys; private dirty; private observers; constructor(keys?: string[]); flush(): readonly [string[], T[]]; get(id: string): T | undefined; has(id: string): boolean; set(id: string, data: T): void; delete(id: string): void; clear(): void; clone(data: Map): void; isSameKeys(keys: string[]): boolean; isDirty(): boolean; getKeys(): string[]; forEach(cb: (key: string) => void): void; listen(cb: (keys: string[]) => void): () => void; } export declare const columnTypes: Record; export declare function getDefaultColumnTypes(locale: DataGridLocale): Record>;