import { AfterViewInit, ElementRef, EventEmitter } from '@angular/core';
import { ItAbstractComponent } from '../../../abstracts/abstract.component';
import * as i0 from "@angular/core";
import * as i1 from "../../../utils/coercion";
export declare class ItCollapseComponent extends ItAbstractComponent implements AfterViewInit {
    /**
     * Enable multiple collapse
     * @default false
     */
    multi?: boolean;
    /**
     * Toggles the collapsible element on invocation
     * @default false
     */
    opened?: boolean;
    /**
     * Custom class
     */
    class: string;
    /**
     * This event fires immediately when the show method is called.
     */
    showEvent: EventEmitter<Event>;
    /**
     * This event is triggered when the tooltip has been made visible to the user (it will wait for the CSS transitions to complete).
     */
    shownEvent: EventEmitter<Event>;
    /**
     * This event fires immediately when the hide method is called.
     */
    hideEvent: EventEmitter<Event>;
    /**
     * This event is raised when the tooltip has finished being hidden from the user (it will wait for the CSS transitions to complete).
     */
    hiddenEvent: EventEmitter<Event>;
    private collapse?;
    private open;
    protected collapseDiv?: ElementRef<HTMLDivElement>;
    ngAfterViewInit(): void;
    /**
     * Shows if collapse is open or not
     */
    isOpen(): boolean;
    /**
     * Shows a resealable item
     * NOTE: Returns to the caller before the collapsable element has actually been shown (onShown event).
     */
    show(): void;
    /**
     * Hides a resealable item
     * NOTE: Returns to the caller before the collapsable element has actually been hidden (onHidden Event)
     */
    hide(): void;
    /**
     * Toggle a collapsible item to show or hide it.
     * NOTE: Returns to the caller before the collapsable element has actually been shown or hidden (onShown and onHidden events)
     */
    toggle(): void;
    /**
     * Eliminates the possibility of an item being resealable
     */
    dispose(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<ItCollapseComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ItCollapseComponent, "it-collapse", ["itCollapse"], { "multi": { "alias": "multi"; "required": false; }; "opened": { "alias": "opened"; "required": false; }; "class": { "alias": "class"; "required": false; }; }, { "showEvent": "showEvent"; "shownEvent": "shownEvent"; "hideEvent": "hideEvent"; "hiddenEvent": "hiddenEvent"; }, never, ["*"], true, never>;
    static ngAcceptInputType_multi: i1.BooleanInput;
    static ngAcceptInputType_opened: i1.BooleanInput;
}
