import type { ProductListingSummaryState, RegularFacet, RegularFacetState, SearchSummaryState, Summary } from '@coveo/headless/commerce';
import { type CSSResultGroup, LitElement } from 'lit';
import type { InitializableComponent } from '../../../decorators/types';
import type { CommerceBindings } from '../atomic-commerce-interface/atomic-commerce-interface';
/**
 * The `atomic-commerce-facet` component renders a commerce facet that the end user can interact with to filter products.
 *
 * @part facet - The wrapper for the entire facet.
 * @part placeholder - The placeholder shown before the first search is executed.
 *
 * @part label-button - The button that displays the label and allows to expand/collapse the facet.
 * @part label-button-icon - The label button icon.
 * @part clear-button - The button that resets the actively selected facet values.
 * @part clear-button-icon - The clear button icon.
 *
 * @part search-wrapper - The facet search box wrapper.
 * @part search-input - The facet search box input.
 * @part search-icon - The facet search box submit button.
 * @part search-clear-button - The button to clear the facet search box of input.
 * @part more-matches - The label indicating there are more matches for the current facet search query.
 * @part no-matches - The label indicating there are no matches for the current facet search query.
 * @part matches-query - The highlighted query inside the matches labels.
 * @part search-highlight - The highlighted query inside the facet values.
 *
 * @part values - The facet values container.
 * @part value-label - The facet value label, common for all displays.
 * @part value-count - The facet value count, common for all displays.
 *
 * @part value-checkbox - The facet value checkbox, available when display is 'checkbox'.
 * @part value-checkbox-checked - The checked facet value checkbox, available when display is 'checkbox'.
 * @part value-checkbox-label - The facet value checkbox clickable label, available when display is 'checkbox'.
 * @part value-checkbox-icon - The facet value checkbox icon, available when display is 'checkbox'.
 *
 * @part show-more - The show more values button.
 * @part show-less - The show less values button.
 * @part show-more-less-icon - The icons of the show more and show less buttons.
 */
export declare class AtomicCommerceFacet extends LitElement implements InitializableComponent<CommerceBindings> {
    /**
     * The Summary controller instance.
     */
    summary: Summary<SearchSummaryState | ProductListingSummaryState>;
    /**
     * The facet controller instance.
     */
    facet: RegularFacet;
    /**
     * Whether the facet is collapsed.
     */
    isCollapsed: boolean;
    /**
     * The field identifier for this facet.
     */
    field?: string;
    bindings: CommerceBindings;
    summaryState: SearchSummaryState | ProductListingSummaryState;
    facetState: RegularFacetState;
    error: Error;
    static styles: CSSResultGroup;
    private showLessFocus;
    private showMoreFocus;
    private headerFocus;
    private unsubscribeFacetController?;
    private ariaLiveRegion;
    initialize(): void;
    disconnectedCallback(): void;
    protected shouldUpdate(changedProperties: Map<string | number | symbol, unknown>): boolean;
    private renderHeader;
    private renderBody;
    private renderValuesContainer;
    private renderSearchResults;
    private renderValues;
    private renderShowMoreLess;
    private renderMatches;
    private get activeValues();
    private get displayName();
    private get facetValueProps();
    private initFocusTargets;
    private initAriaLive;
    private get focusTargets();
    private isFacetState;
    private ensureSubscribed;
    protected render(): import("lit-html").TemplateResult<1>;
    updated(changedProps: Map<string, unknown>): void;
    private validateFacet;
}
declare global {
    interface HTMLElementTagNameMap {
        'atomic-commerce-facet': AtomicCommerceFacet;
    }
}
