import { CustomElement } from '../../Abstracts/CustomElement';
import type { IDisclosureElementProps } from './IDisclosureElementProps';
declare const DisclosureElement_base: (abstract new (...args: Array<any>) => import("../../../../Controls/Behaviors/Themeable").IThemeableProps) & typeof CustomElement & import("../../../../Controls/Behaviors/Themeable").IThemeableCtor;
/**
 * Disclosure - A component that represents a disclosure widget for revealing or hiding additional content.
 *
 * @description This component provides an interface for expanding and collapsing content, making it useful for organizing information in a way that is accessible yet unobtrusive.
 *
 * @name Disclosure
 * @element mosaik-disclosure
 * @category UI Components
 *
 * @slot - The default slot for placing the main content inside the disclosure.
 * @slot end - The slot for placing content at the end of the disclosure.
 * @slot start - The slot for placing content at the start of the disclosure.
 * @slot summary - The slot for placing summary content that triggers the disclosure.
 *
 * @csspart details - The part representing the details content area.
 * @csspart summary - The part representing the summary content area.
 *
 * @cssprop {String} --disclosure-font-family - The font family CSS custom property.
 * @cssprop {String} --disclosure-font-letter-spacing - The font letter spacing CSS custom property.
 * @cssprop {String} --disclosure-font-line-height - The font line height CSS custom property.
 * @cssprop {String} --disclosure-font-size - The font size CSS custom property.
 * @cssprop {String} --disclosure-font-text-decoration - The font text decoration CSS custom property.
 * @cssprop {String} --disclosure-font-text-transform - The font text transform CSS custom property.
 * @cssprop {String} --disclosure-font-weight - The font weight CSS custom property.
 * @cssprop {String} --disclosure-gap - The gap CSS custom property.
 * @cssprop {String} --disclosure-padding-bottom - The padding bottom CSS custom property.
 * @cssprop {String} --disclosure-padding-left - The padding left CSS custom property.
 * @cssprop {String} --disclosure-padding-right - The padding right CSS custom property.
 * @cssprop {String} --disclosure-padding-top - The padding top CSS custom property.
 * @cssprop {String} --disclosure-shadow - The shadow CSS custom property.
 * @cssprop {String} --disclosure-shadow-blur - The shadow blur CSS custom property.
 * @cssprop {String} --disclosure-shadow-color - The shadow color CSS custom property.
 * @cssprop {String} --disclosure-shadow-offset-x - The shadow offset x CSS custom property.
 * @cssprop {String} --disclosure-shadow-offset-y - The shadow offset y CSS custom property.
 * @cssprop {String} --disclosure-shadow-spread - The shadow spread CSS custom property.
 * @cssprop {String} --disclosure-transition-duration - The transition duration CSS custom property.
 * @cssprop {String} --disclosure-transition-mode - The transition mode CSS custom property.
 * @cssprop {String} --disclosure-transition-property - The transition property CSS custom property.
 * @cssprop {String} --disclosure-translate - The translate CSS custom property.
 *
 * @example
 * Basic usage with summary attribute:
 * ```html
 * <mosaik-disclosure summary="Additional Details">
 *   <mosaik-text text="This content is revealed when the summary is clicked."></mosaik-text>
 * </mosaik-disclosure>
 * ```
 *
 * @example
 * With custom summary slot content:
 * ```html
 * <mosaik-disclosure>
 *   <mosaik-button slot="summary" label="Show More" appearance="plain"></mosaik-button>
 *   <mosaik-text text="Detailed content that is hidden by default."></mosaik-text>
 * </mosaik-disclosure>
 * ```
 *
 * @public
 */
export declare class DisclosureElement extends DisclosureElement_base implements IDisclosureElementProps {
    private _detailsElement;
    private _summary;
    private _isExpanded;
    /**
     * @public
     */
    constructor();
    /**
     * Returns the `is` property.
     * The `is` property represents natural name of this element.
     *
     * @public
     * @static
     * @readonly
     */
    static get is(): string;
    /**
     * Gets or sets the `summary` property.
     *
     * @public
     * @attr
     */
    get summary(): string;
    set summary(value: string);
    /**
     * Gets or sets the `isExpanded` property.
     *
     * @public
     * @attr
     */
    get isExpanded(): boolean;
    set isExpanded(value: boolean);
    /**
     * @public
     * @override
     */
    connectedCallback(): void;
    /**
     * @public
     * @override
     */
    disconnectedCallback(): void;
    /**
     * Show extra content.
     */
    show(): void;
    /**
     * Hide extra content.
     */
    hide(): void;
    /**
     * Toggle the current(expanded/collapsed) state.
     */
    toggle(): void;
    /**
     * Update the aria attr and fire `toggle` event
     */
    onToggle(): void;
    /**
     * @protected
     * @override
     */
    protected onApplyTemplate(): void;
}
/**
 * @public
 */
export declare namespace DisclosureElement {
    type Props = IDisclosureElementProps;
}
/**
 * @public
 */
declare global {
    interface HTMLElementTagNameMap {
        'mosaik-disclosure': DisclosureElement;
    }
}
export {};
//# sourceMappingURL=DisclosureElement.d.ts.map