import { AfterViewInit, EventEmitter, OnDestroy, ChangeDetectorRef, NgZone, Renderer2 } from '@angular/core';
import { AnimationEvent } from '../animations/animations.interface';
import { BoxContentDirective, BoxFooterDirective, BoxHeaderDirective, BoxToolsDirective } from './box.directive';
export declare class BoxComponent implements AfterViewInit, OnDestroy {
    private changeDetectorRef;
    private ngZone;
    private renderer2;
    isCollaping: boolean;
    remove: boolean;
    removed: boolean;
    private toggleButtonListener;
    private removeButtonListener;
    boxColor: string;
    buttonsStyleClass: string;
    contentStyleClass: string;
    contentColor: string;
    footer: string;
    footerColor: string;
    footerStyleClass: string;
    header: string;
    headerBorder: boolean;
    headerColor: string;
    headerStyleClass: string;
    isCollapsable: boolean;
    isCollapsed: boolean;
    isLoading: boolean;
    isRemovable: boolean;
    isSolid: boolean;
    loadingColor: string;
    loadingStyleClass: string;
    styleClass: string;
    onCollapseDone: EventEmitter<{}>;
    onCollapseStart: EventEmitter<{}>;
    boxHeaderDirective: BoxHeaderDirective;
    boxFooterDirective: BoxFooterDirective;
    boxContentDirective: BoxContentDirective;
    boxToolsDirective: BoxToolsDirective;
    private toggleButtonElement;
    private removeButtonElement;
    /**
     * @method constructor
     * @param  {ChangeDetectorRef} privatechangeDetectorRef [description]
     * @param  {NgZone}            privatengZone            [description]
     * @param  {Renderer2}         privaterenderer2         [description]
     */
    constructor(changeDetectorRef: ChangeDetectorRef, ngZone: NgZone, renderer2: Renderer2);
    /**
     * @method ngAfterViewInit
     */
    ngAfterViewInit(): void;
    /**
     * @method ngOnDestroy
     */
    ngOnDestroy(): void;
    /**
     * [removedDone description]
     * @method removedDone
     * @param  {[type]}    event [description]
     */
    removedDone(event: any): void;
    /**
     * [collapseStart description]
     * @method collapseStart
     * @param  {AnimationEvent} event [description]
     */
    collapseStart(event: AnimationEvent): void;
    /**
     * [collapseDone description]
     * @method collapseDone
     * @param  {AnimationEvent} event [description]
     */
    collapseDone(event: AnimationEvent): void;
}
