import { EventEmitter, OnDestroy } from '@angular/core';
import { IgxToggleDirective, ToggleViewCancelableEventArgs, ToggleViewEventArgs } from '../../directives/toggle/toggle.directive';
import { OverlaySettings } from '../../services/public_api';
import { IgxColumnActionsComponent } from '../column-actions/column-actions.component';
import { ColumnDisplayOrder } from '../common/enums';
import { IColumnToggledEventArgs } from '../common/events';
import { IgxGridToolbarComponent } from './grid-toolbar.component';
/**
 * Base class for the pinning/hiding column and exporter actions.
 *
 * @hidden @internal
 */
export declare abstract class BaseToolbarDirective implements OnDestroy {
    protected toolbar: IgxGridToolbarComponent;
    /**
     * Sets the height of the column list in the dropdown.
     */
    columnListHeight: string;
    /**
     * Title text for the column action component
     */
    title: string;
    /**
     * The placeholder text for the search input.
     */
    prompt: string;
    /**
     * Sets overlay settings
     */
    set overlaySettings(overlaySettings: OverlaySettings);
    /**
     * Returns overlay settings
     */
    get overlaySettings(): OverlaySettings;
    /**
     * Emits an event before the toggle container is opened.
     */
    opening: EventEmitter<ToggleViewCancelableEventArgs>;
    /**
     * Emits an event after the toggle container is opened.
     */
    opened: EventEmitter<ToggleViewEventArgs>;
    /**
     * Emits an event before the toggle container is closed.
     */
    closing: EventEmitter<ToggleViewEventArgs>;
    /**
     * Emits an event after the toggle container is closed.
     */
    closed: EventEmitter<ToggleViewEventArgs>;
    /**
     * Emits when after a column's checked state is changed
     */
    columnToggle: EventEmitter<IColumnToggledEventArgs>;
    private $destroyer;
    private $sub;
    private _overlaySettings;
    /**
     * Returns the grid containing this component.
     */
    get grid(): import("../grid-base.directive").IgxGridBaseDirective;
    constructor(toolbar: IgxGridToolbarComponent);
    ngOnDestroy(): void;
    /** @hidden @internal */
    toggle(anchorElement: HTMLElement, toggleRef: IgxToggleDirective, actions?: IgxColumnActionsComponent): void;
    /** @hidden @internal */
    focusSearch(columnActions: HTMLElement): void;
    private _setupListeners;
}
/**
 * @hidden @internal
 * Base class for pinning/hiding column actions
 */
export declare abstract class BaseToolbarColumnActionsDirective extends BaseToolbarDirective {
    hideFilter: boolean;
    filterCriteria: string;
    columnDisplayOrder: ColumnDisplayOrder;
    columnsAreaMaxHeight: string;
    uncheckAllText: string;
    checkAllText: string;
    indentetion: number;
    buttonText: string;
    protected columnActionsUI: IgxColumnActionsComponent;
    checkAll(): void;
    uncheckAll(): void;
}
