/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { NgZone, Renderer2, OnDestroy, ChangeDetectorRef } from '@angular/core';
import { PopupService } from '@progress/kendo-angular-popup';
import { LocalizationService } from "@progress/kendo-angular-l10n";
import { SVGIcon } from '@progress/kendo-svg-icons';
import { Button } from '@progress/kendo-angular-buttons';
import { ColumnInfoService } from '../common/column-info.service';
import * as i0 from "@angular/core";
/**
 * Represents the component for selecting columns in the TreeList.
 * To show and hide the columns without including the column chooser item in the [Column Menu](slug:columnmenu_treelist),
 * add the component inside the [`ToolbarTemplate`]({% slug api_treelist_toolbartemplatedirective %}) directive.
 *
 * @example
 * ```html
 * <kendo-treelist ...>
 *   <ng-template kendoTreeListToolbarTemplate>
 *     <kendo-treelist-column-chooser> </kendo-treelist-column-chooser>
 *   </ng-template>
 * </kendo-treelist>
 * ```
 */
export declare class ColumnChooserComponent implements OnDestroy {
    localization: LocalizationService;
    private columnInfoService;
    private popupService;
    private ngZone;
    private renderer;
    private changeDetector;
    /**
     * Specifies if the changes in the visibility of the column will be immediately applied.
     *
     * @default false
     */
    autoSync: boolean;
    /**
     * Specifies if all columns can be hidden.
     *
     * @default true
     */
    allowHideAll: boolean;
    private anchor;
    private columnList;
    get columns(): any[];
    columnsIcon: SVGIcon;
    popupRef: any;
    popupId: string;
    private closeClick;
    private escapeListener;
    constructor(localization: LocalizationService, columnInfoService: ColumnInfoService, popupService: PopupService, ngZone: NgZone, renderer: Renderer2, changeDetector: ChangeDetectorRef);
    ngOnDestroy(): void;
    /**
     * @hidden
     */
    toggle(anchor: Button, template: any): void;
    /**
     * @hidden
     */
    onApply(changed: any[]): void;
    /**
     * @hidden
     */
    onChange(changed: any[]): void;
    private close;
    private detachClose;
    static ɵfac: i0.ɵɵFactoryDeclaration<ColumnChooserComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ColumnChooserComponent, "kendo-treelist-column-chooser", never, { "autoSync": { "alias": "autoSync"; "required": false; }; "allowHideAll": { "alias": "allowHideAll"; "required": false; }; }, {}, never, never, true, never>;
}
