/**
 * @license
 *-------------------------------------------------------------------------------------------
 * Copyright © 2026 Progress Software Corporation. All rights reserved.
 * Licensed under commercial license. See LICENSE.md in the package root for more information
 *-------------------------------------------------------------------------------------------
 */
import { GridFilterOperator } from './GridFilterOperator.js';
/**
 * The props of the GridFilterCell component
 * ([more information](https://www.telerik.com/kendo-react-ui/components/grid/cells#toc-filter-cells)
 * and [example](https://www.telerik.com/kendo-react-ui/components/grid/filtering#toc-custom-filter-cells)).
 */
export interface GridFilterCellProps {
    /**
     * The column field in which the cell is located.
     */
    field?: string;
    /**
     * The method that will be called if the cell needs to inform its parent Grid about a change.
     */
    onChange: (event: {
        value: any;
        operator: string | Function;
        syntheticEvent: React.SyntheticEvent<any>;
    }) => void;
    /**
     * The list of the default operators for the current filter type.
     */
    operators: GridFilterOperator[];
    /**
     * The title which will be set to the input element in the filter cell.
     */
    title?: string;
    /**
     * The type of the filter. Determines which editor will be rendered for filtering.
     */
    filterType: 'text' | 'numeric' | 'boolean' | 'date';
    /**
     * The value of the cell.
     */
    value: any;
    /**
     * The operator that will be used for the cell filtering.
     */
    operator?: string | Function;
    /**
     * The list of values for the Boolean filter.
     */
    booleanValues: GridFilterOperator[];
    /**
     * Accessible label of the filter.
     *
     * @remarks
     * This property is related to accessibility.
     */
    ariaLabel?: string;
    /**
     * Configures the `size` of the cell.
     *
     * The available options are:
     * - small
     * - medium
     * - large
     * - null&mdash;Does not set a size `className`.
     *
     * @default `medium`
     */
    size?: 'small' | 'medium' | 'large';
}
