import { CustomElement } from '../../Abstracts/CustomElement';
import type { IFloatingTriggerElementProps } from './IFloatingTriggerElementProps';
declare const FloatingTriggerElement_base: (abstract new (...args: Array<any>) => import("../../../Behaviors/Themeable").IThemeableProps) & typeof CustomElement & import("../../../Behaviors/Themeable").IThemeableCtor;
/**
 * FloatingTrigger - A convenience wrapper that manages trigger-floating element interactions automatically.
 *
 * @description
 * The FloatingTrigger component simplifies the common pattern of showing/hiding floating elements in response
 * to trigger interactions. It automatically connects a trigger element to a floating element, handling click
 * interactions, click-outside detection, and managing the active state. This component eliminates boilerplate
 * code for common dropdown, popover, and menu patterns by providing declarative trigger-content relationships.
 *
 * @name FloatingTrigger
 * @element mosaik-floating-trigger
 * @category Primitives
 *
 * @slot - The trigger element that activates the floating content (typically a button)
 * @slot floating - The floating element to show/hide (typically mosaik-floating)
 *
 * @example
 * Basic dropdown trigger:
 * ```html
 * <mosaik-floating-trigger>
 *   <mosaik-button label="Open Menu"></mosaik-button>
 *   <mosaik-floating slot="floating" placement="bottom-start">
 *     <mosaik-menu>
 *       <mosaik-menu-item label="Option 1"></mosaik-menu-item>
 *       <mosaik-menu-item label="Option 2"></mosaik-menu-item>
 *     </mosaik-menu>
 *   </mosaik-floating>
 * </mosaik-floating-trigger>
 * ```
 *
 * @example
 * Popover with custom trigger:
 * ```html
 * <mosaik-floating-trigger>
 *   <div class="custom-trigger">Click for more info</div>
 *   <mosaik-floating slot="floating" arrow>
 *     <mosaik-card>
 *       <p>Additional information here</p>
 *     </mosaik-card>
 *   </mosaik-floating>
 * </mosaik-floating-trigger>
 * ```
 *
 * @example
 * Icon button with dropdown:
 * ```html
 * <mosaik-floating-trigger>
 *   <mosaik-button icon="more-vertical" appearance="plain"></mosaik-button>
 *   <mosaik-floating slot="floating" placement="bottom-end">
 *     <mosaik-list>
 *       <mosaik-list-item>Edit</mosaik-list-item>
 *       <mosaik-list-item>Delete</mosaik-list-item>
 *     </mosaik-list>
 *   </mosaik-floating>
 * </mosaik-floating-trigger>
 * ```
 *
 * @public
 */
export declare class FloatingTriggerElement extends FloatingTriggerElement_base implements IFloatingTriggerElementProps {
    private readonly _clickOutsideController;
    private _clickSubscription;
    /**
     * @public
     */
    constructor();
    /**
     * Returns the `{@link is}` property.
     * The `{@link is}` property represents natural name of this element.
     *
     * @public
     * @static
     * @readonly
     */
    static get is(): string;
    /**
     * @public
     * @override
     */
    disconnectedCallback(): void;
    /**
     * @private
     */
    private onClickedOutside;
}
/**
 * @public
 */
export declare namespace FloatingTriggerElement {
    type Props = IFloatingTriggerElementProps;
}
/**
 * @public
 */
declare global {
    interface HTMLElementTagNameMap {
        'mosaik-floating-trigger': FloatingTriggerElement;
    }
}
export {};
//# sourceMappingURL=FloatingTriggerElement.d.ts.map