/**
 * `LionCollapsible` is a class for custom collapsible element (`<lion-collapsible>` web component).
 *
 * @customElement lion-collapsible
 * @extends LitElement
 */
export class LionCollapsible extends LitElement {
    static get styles(): import("@lion/core").CSSResult[];
    static get properties(): {
        opened: {
            type: BooleanConstructor;
            reflect: boolean;
        };
    };
    opened: boolean;
    /**
     * Toggle the current(opened/closed) state.
     * @public
     */
    public toggle(): void;
    /**
     * Show extra content.
     * @public
     */
    public show(): void;
    /**
     * Hide extra content.
     * @public
     */
    public hide(): void;
    /**
     * Show animation implementation in sub-classer.
     * @param {Object} opts
     * @protected
     */
    protected _showAnimation(opts: Object): Promise<void>;
    /**
     * Hide animation implementation in sub-classer.
     * @param {Object} opts
     * @protected
     */
    protected _hideAnimation(opts: Object): Promise<void>;
    /**
     * @protected
     */
    protected get _invokerNode(): HTMLElement | undefined;
    /**
     * @protected
     */
    protected get _contentNode(): HTMLElement | undefined;
    /**
     * @protected
     */
    protected get _contentHeight(): string;
    /**
     * Update content slot size and fire `opened-changed` event
     * @private
     */
    private __openedChanged;
    /**
     * Toggle extra content visibility on state change.
     * @private
     */
    private __updateContentSize;
    /**
     * Set default state for content based on `opened` attr
     * @private
     */
    private __setDefaultState;
}
import { LitElement } from "@lion/core";
