///
import { ElementRef } from "@angular/core";
import { Feature } from "../feature";
export declare class IgGridHidingFeature extends Feature {
constructor(el: ElementRef);
/**
* Destroys the hiding widget
*/
destroy(): void;
/**
* Shows the Column Chooser dialog. If it is visible the method does nothing.
*/
showColumnChooser(): void;
/**
* Hides the Column Chooser dialog. If it is not visible the method does nothing.
*/
hideColumnChooser(): void;
/**
* Shows a hidden column. If the column is not hidden the method does nothing.
* Note: This method is asynchronous which means that it returns immediately and any subsequent code will execute in parallel. This may lead to runtime errors. To avoid them put the subsequent code in the callback parameter provided by the method.
*
* @param column An identifier for the column. If a number is provided it will be used as a column index else if a strings is provided it will be used as a column key.
* @param isMultiColumnHeader If it is true then the column is of type multicolumnheader. An identifier for the column should be of type string.
* @param callback Specifies a custom function to be called when the column(s) is shown(optional)
*/
showColumn(column: Object, isMultiColumnHeader?: boolean, callback?: Function): void;
/**
* Hides a visible column. If the column is hidden the method does nothing.
* Note: This method is asynchronous which means that it returns immediately and any subsequent code will execute in parallel. This may lead to runtime errors. To avoid them put the subsequent code in the callback parameter provided by the method.
*
* @param column An identifier for the column. If a number is provided it will be used as a column index else if a strings is provided it will be used as a column key.
* @param isMultiColumnHeader If it is true then the column is of type multicolumnheader. An identifier for the column should be of type string.
* @param callback Specifies a custom function to be called when the column is hidden(optional)
*/
hideColumn(column: Object, isMultiColumnHeader?: boolean, callback?: Function): void;
/**
* Hides visible columns specified by the array. If the column is hidden the method does nothing.
* Note: This method is asynchronous which means that it returns immediately and any subsequent code will execute in parallel. This may lead to runtime errors. To avoid them put the subsequent code in the callback parameter provided by the method.
*
* @param columns An array of identifiers for the columns. If a number is provided it will be used as a column index else if a strings is provided it will be used as a column key.
* @param callback Specifies a custom function to be called when all columns are hidden(optional)
*/
hideMultiColumns(columns: any[], callback?: Function): void;
/**
* Show visible columns specified by the array. If the column is shown the method does nothing.
* Note: This method is asynchronous which means that it returns immediately and any subsequent code will execute in parallel. This may lead to runtime errors. To avoid them put the subsequent code in the callback parameter provided by the method.
*
* @param columns An array of identifiers for the columns. If a number is provided it will be used as a column index else if a strings is provided it will be used as a column key.
* @param callback Specifies a custom function to be called when all columns are shown(optional)
*/
showMultiColumns(columns: any[], callback?: Function): void;
/**
* Gets whether the reset button in the column chooser dialog is to be rendered or not.
*/
isToRenderButtonReset(): void;
/**
* Reset hidden/shown column to initial state of dialog(when it is opened)
*/
resetHidingColumnChooser(): void;
/**
* Renders the Reset button in the Column Chooser dialog.
*/
renderColumnChooserResetButton(): void;
/**
* Remove Reset button in column chooser modal dialog
*/
removeColumnChooserResetButton(): void;
}