import type { Column, RowData } from "./index"; import type { FilterOperator, FilterOption } from "./SvGrid.types"; export declare const filterOperatorOptions: Array; /** Operators whose predicate is a set-membership test over a token list. * The filter row renders a multi-value chip input for these instead of a * single text box. Sourced from the shared catalogue so the grid and the * expression editor cannot disagree about which control to render. */ export declare const SET_OPERATORS: ReadonlyArray; /** Operators that need no value input - they act on emptiness alone. */ export declare const VALUELESS_OPERATORS: ReadonlyArray; /** Which operators make sense for each column editor type. */ export declare const TEXT_OPERATORS: Array; export declare const NUMBER_OPERATORS: Array; export declare const DATE_OPERATORS: Array; export declare const CHECKBOX_OPERATORS: Array; export declare const fallbackOperatorOption: FilterOption; export declare function operatorOption(value: FilterOperator): FilterOption; /** Returns the operators that make sense for the given column's data type. */ export declare function operatorsForColumn(column: Column | undefined): Array; /** Default operator for a column (first one valid for its type). */ export declare function defaultOperatorFor(column: Column | undefined): FilterOperator; /** Date columns get friendlier labels for "less / greater than". */ export declare function operatorLabelFor(option: FilterOption, column: Column | undefined): string; /** * Localized operator label: honors date `Before`/`After` relabels, then the * `localeText` override for the operator, falling back to the English * `option.label`. `messages` is a loose string map to avoid a type cycle. */ export declare function localizeOperatorLabel(option: FilterOption, column: Column | undefined, messages?: Record | null): string;