import type { Tab } from '@coveo/headless';
import { LitElement } from 'lit';
import { type TabCommon } from '../../common/tabs/tab-common';
import type { Bindings } from '../../search/atomic-search-interface/atomic-search-interface';
import type { InitializableComponent } from '../../../decorators/types';
/**
 * The `atomic-ipx-tab` component represents an individual tab within the IPX interface.
 *
 * @internal
 */
export declare class AtomicIpxTab extends LitElement implements TabCommon, InitializableComponent<Bindings> {
    static styles: import("lit").CSSResult;
    /**
     * The label that will be shown to the user.
     */
    label: string;
    /**
     * Whether this tab is active upon rendering.
     * If multiple tabs are set to active on render, the last one to be rendered will override the others.
     */
    active: boolean;
    /**
     * The expression that will be passed to the search as a `cq` parameter upon being selected.
     */
    expression: string;
    bindings: Bindings;
    error: Error;
    private tabState;
    tab: Tab;
    private isAppLoaded;
    connectedCallback(): void;
    disconnectedCallback(): void;
    initialize(): void;
    /**
     * Activates the tab.
     */
    select(): void;
    protected updated(): void;
    private updateHostAttributes;
    private handleClick;
    private handleKeydown;
    render(): import("lit-html").TemplateResult<1>;
}
declare global {
    interface HTMLElementTagNameMap {
        'atomic-ipx-tab': AtomicIpxTab;
    }
}
