import { PropertyValues, TemplateResult } from 'lit';
import { UiElement } from '../../UiElement.js';
/**
 * @fires transitioning - When the element is transitioning.
 * @slot - Main slot for the content
 */
export default class UiCollapse extends UiElement {
    /**
     * Whether the chip is disabled. The user can't interact with the chip when `true`.
     * @attribute
     */
    accessor disabled: boolean;
    /**
     * Set noAnimation to true to disable animations.
     * @attr
     */
    accessor noAnimation: boolean | undefined;
    /**
     * Renders the collapse horizontally when true and vertically otherwise
     * @attribute
     */
    accessor horizontal: boolean;
    /**
     * Set opened to true to show the collapse element and to false to hide it.
     * @attribute
     */
    accessor open: boolean;
    get dimension(): 'width' | 'height';
    /**
     * `maxWidth` or `maxHeight`.
     * @private
     */
    get dimensionMax(): 'maxWidth' | 'maxHeight';
    /**
     * `max-width` or `max-height`.
     * @private
     */
    get dimensionMaxCss(): 'max-width' | 'max-height';
    get isAttached(): boolean;
    protected transitioningInternal: boolean;
    /**
     * @return When true, the element is transitioning its open state. When false,
     * the element has finished opening/closing.
     */
    get transitioning(): boolean;
    /**
     * Stores the desired size of the collapse body.
     */
    protected desiredSize: string;
    constructor();
    connectedCallback(): void;
    protected willUpdate(cp: PropertyValues<this>): void;
    /**
     * Toggle the opened state.
     */
    toggle(): void;
    /**
     * Updates the size of the element.
     * @param size The new value for `maxWidth`/`maxHeight` as css property value, usually `auto` or `0px`.
     * @param animated if `true` updates the size with an animation, otherwise without.
     */
    protected updateSize(size: string, animated?: boolean): void;
    protected updateTransition(enabled?: boolean): void;
    /**
     * Calculates the size of the element when opened.
     */
    protected calcSize(): string;
    protected transitionEnd(): void;
    protected notifyResize(): void;
    protected notifyTransitioning(): void;
    protected handleTransitionEnd(e: Event): void;
    protected handleOpenChange(): void;
    protected handleHorizontalChange(): void;
    render(): TemplateResult;
}
//# sourceMappingURL=Collapse.d.ts.map