import { type IAnimatable } from '../../../Behaviors/Animatable';
import { CustomElement } from '../../Abstracts/CustomElement';
import { IBackdropElementProps } from './IBackdropElementProps';
declare const BackdropElement_base: (abstract new (...args: Array<any>) => import("../../../Behaviors/Themeable").IThemeableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Animatable").IAnimatableProps & IAnimatable) & typeof CustomElement & import("../../../Behaviors/Themeable").IThemeableCtor;
/**
 * Backdrop - A semi-transparent overlay that creates visual focus by dimming background content.
 *
 * Typically used behind modals, dialogs, popups, and other overlay components to draw attention
 * to foreground content and prevent interaction with background elements. Features smooth
 * fade-in/fade-out animations for enhanced user experience.
 *
 * @name BackdropElement
 * @element mosaik-backdrop
 * @category Primitive
 *
 * @csspart backdrop - The semi-transparent overlay surface
 *
 * @cssprop --backdrop-color - Background color of the overlay (default: rgba(0,0,0,0.5))
 * @cssprop --backdrop-blur - Backdrop blur effect intensity
 * @cssprop --backdrop-z-index - Z-index stacking order for the overlay
 *
 * @example
 * ```html
 * <!-- Basic backdrop -->
 * <mosaik-backdrop></mosaik-backdrop>
 *
 * <!-- Hidden backdrop (for programmatic control) -->
 * <mosaik-backdrop hidden></mosaik-backdrop>
 *
 * <!-- Behind a modal dialog -->
 * <mosaik-backdrop id="dialogBackdrop"></mosaik-backdrop>
 * <div class="modal-dialog">
 *   <h2>Confirm Action</h2>
 *   <p>Are you sure you want to proceed?</p>
 *   <button onclick="hideDialog()">Cancel</button>
 *   <button onclick="confirmAction()">Confirm</button>
 * </div>
 *
 * <script>
 *   function showDialog() {
 *     document.getElementById('dialogBackdrop').hidden = false;
 *   }
 *
 *   function hideDialog() {
 *     document.getElementById('dialogBackdrop').hidden = true;
 *   }
 * </script>
 * ```
 *
 * @public
 */
export declare class BackdropElement extends BackdropElement_base implements IBackdropElementProps, IAnimatable {
    private _hidden;
    /**
     * @public
     */
    constructor();
    /**
     * Returns the `{@link is}` property.
     * The `{@link is}` property represents natural name of this element.
     *
     * @public
     * @static
     * @readonly
     */
    static get is(): string;
    /**
     * Gets or sets the `hidden` property.
     *
     * @public
     * @override
     */
    get hidden(): boolean;
    set hidden(value: boolean);
    /**
     * @public
     * @override
     */
    onEnterAnimation(): Promise<boolean>;
    /**
     * @public
     * @override
     */
    onExitAnimation(): Promise<boolean>;
}
/**
 * @public
 */
export declare namespace BackdropElement {
    type Props = IBackdropElementProps;
}
/**
 * @public
 */
declare global {
    interface HTMLElementTagNameMap {
        'mosaik-backdrop': BackdropElement;
    }
}
export {};
//# sourceMappingURL=BackdropElement.d.ts.map