/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { TemplateRef } from '@angular/core';
import { CellTemplateDirective } from '../rendering/cell-template.directive';
import { EditTemplateDirective } from '../editing/edit-template.directive';
import { ColumnSortSettings } from './sort-settings';
import { ColumnBase } from './column-base';
import { FilterCellTemplateDirective } from '../filtering/cell/filter-cell-template.directive';
import { FilterMenuTemplateDirective } from '../filtering/menu/filter-menu-template.directive';
import { OptionChangesService } from '../common/option-changes.service';
import * as i0 from "@angular/core";
/**
 * @hidden
 */
export declare function isColumnComponent(column: any): column is ColumnComponent;
/**
 * Represents the columns of the TreeList.
 *
 * @example
 * ```html
 * <kendo-treelist [kendoTreeListFlatBinding]="data" ...>
 *   <kendo-treelist-column field="name" title="Name"></kendo-treelist-column>
 *   <kendo-treelist-column field="title"title="Title"></kendo-treelist-column>
 * </kendo-treelist>
 * ```
 */
export declare class ColumnComponent extends ColumnBase {
    /**
     * Defines whether the expanded indicator should be rendered in the column.
     * @default false
     */
    expandable: boolean;
    /**
     * The field to which the column is bound.
     */
    field: string;
    /**
     * The format that is applied to the value before it is displayed. For more information on the supported date and number formats,
     * refer to the [Column Formats](slug:formats_columns_treelist) documentation article.
     */
    format: any;
    /**
     * Allows the column headers to be clicked and the `sortChange` event emitted.
     * You have to handle the `sortChange` event yourself and sort the data.
     */
    sortable: boolean | ColumnSortSettings;
    /**
     * Defines the editor type ([see example]({% slug editing_reactive_forms_treelist %}#toc-setup)).
     * Used when the column enters the edit mode. [See example](slug:editing_reactive_forms_treelist).
     *
     * @default 'text'
     */
    editor: 'text' | 'numeric' | 'date' | 'boolean';
    /**
     * Defines the filter type that is displayed inside the filter row.
     *
     * @default 'text'
     */
    filter: 'text' | 'numeric' | 'boolean' | 'date';
    /**
     * Defines if a filter UI will be displayed for this column.
     *
     * @default true
     */
    filterable: boolean;
    /**
     * Defines whether the column is editable.
     *
     * @default true
     */
    editable: boolean;
    template: CellTemplateDirective;
    editTemplate: EditTemplateDirective;
    filterCellTemplate: FilterCellTemplateDirective;
    filterMenuTemplate: FilterMenuTemplateDirective;
    constructor(parent?: ColumnBase, optionChanges?: OptionChangesService);
    get templateRef(): TemplateRef<any>;
    get editTemplateRef(): TemplateRef<any>;
    get filterCellTemplateRef(): TemplateRef<any>;
    get filterMenuTemplateRef(): TemplateRef<any>;
    get displayTitle(): string;
    /**
     * @hidden
     */
    get isEditable(): boolean;
    static ɵfac: i0.ɵɵFactoryDeclaration<ColumnComponent, [{ optional: true; host: true; skipSelf: true; }, null]>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ColumnComponent, "kendo-treelist-column", never, { "expandable": { "alias": "expandable"; "required": false; }; "field": { "alias": "field"; "required": false; }; "format": { "alias": "format"; "required": false; }; "sortable": { "alias": "sortable"; "required": false; }; "editor": { "alias": "editor"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; "filterable": { "alias": "filterable"; "required": false; }; "editable": { "alias": "editable"; "required": false; }; }, {}, ["template", "editTemplate", "filterCellTemplate", "filterMenuTemplate"], never, true, never>;
}
