import type { SearchStatus, SearchStatusState } from '@coveo/headless';
import { LitElement, type TemplateResult } from 'lit';
import type { Bindings } from '../atomic-search-interface/atomic-search-interface';
import type { InitializableComponent } from '../../../decorators/types';
import '../../common/atomic-focus-trap/atomic-focus-trap';
import '../../common/atomic-icon/atomic-icon';
/**
 * The `atomic-popover` component displays any facet as a popover menu.
 *
 * @slot default - The required slotted facet.
 * @part backdrop - The transparent backdrop hiding the content behind popover menu.
 * @part popover-button - The button to click to display or hide the popover menu.
 * @part value-label - The associated facet label.
 * @part value-count - Number of selected values for the facet
 * @part arrow-icon - The arrow icon on the button to display or hide the popover menu.
 * @part placeholder - The placeholder displayed when the facet is loading.
 * @part facet - The wrapper that contains the slotted 'facet'.
 */
export declare class AtomicPopover extends LitElement implements InitializableComponent<Bindings> {
    static styles: import("lit").CSSResult[];
    private buttonRef;
    private popupRef;
    private popperInstance?;
    bindings: Bindings;
    error: Error;
    searchStatusState: SearchStatusState;
    searchStatus: SearchStatus;
    private isOpen;
    private childFacet?;
    initialize(): void;
    connectedCallback(): void;
    disconnectedCallback(): void;
    render(): TemplateResult<1>;
    protected updated(): void;
    private renderDropdownButton;
    private renderBackdrop;
    private renderPopover;
    private handleInitializePopover;
    private handleKeyDown;
    private get popoverId();
    private get label();
    private closePopover;
    private toggleOpen;
}
declare global {
    interface HTMLElementTagNameMap {
        'atomic-popover': AtomicPopover;
    }
}
