/**-----------------------------------------------------------------------------------------
* 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 { ColumnInfoService } from '../common/column-info.service';
import { SVGIcon } from '@progress/kendo-svg-icons';
import { Button } from '@progress/kendo-angular-buttons';
import { ContextService } from '../common/provider.service';
import * as i0 from "@angular/core";
/**
* Represents the component for toggling visibility of the Grid columns visibility. [See example](slug:columnmenu_grid#toc-using-standalone-column-chooser).
* To show and hide the columns without including the column chooser item in the [Column Menu](slug:columnmenu_grid),
* add the component inside the [ToolbarTemplate](slug:toolbartemplate_grid) directive.
*
* @example
* ```html
*
*
*
*
*
*
* ```
*/
export declare class ColumnChooserComponent implements OnDestroy {
ctx: ContextService;
columnInfoService: 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(ctx: ContextService, columnInfoService: ColumnInfoService, popupService: PopupService, ngZone: NgZone, renderer: Renderer2, changeDetector: ChangeDetectorRef);
ngOnDestroy(): void;
/**
* @hidden
*/
messageFor: (token: string) => string;
/**
* @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;
static ɵcmp: i0.ɵɵComponentDeclaration;
}