import type { SearchEngine } from '../../app/search-engine/search-engine.js';
import type { FacetValue } from '../../features/facets/facet-set/interfaces/response.js';
import { type Breadcrumb, type BreadcrumbValue, type CategoryFacetBreadcrumb, type BreadcrumbManager as CoreBreadcrumbManager, type BreadcrumbManagerState as CoreBreadcrumbManagerState, type DateFacetBreadcrumb, type DeselectableValue, type FacetBreadcrumb, type NumericFacetBreadcrumb, type StaticFilterBreadcrumb } from '../core/breadcrumb-manager/headless-core-breadcrumb-manager.js';
export type { Breadcrumb, BreadcrumbValue, CategoryFacetBreadcrumb, CoreBreadcrumbManager, CoreBreadcrumbManagerState, DateFacetBreadcrumb, DeselectableValue, FacetBreadcrumb, NumericFacetBreadcrumb, StaticFilterBreadcrumb, };
/**
 * The `BreadcrumbManager` headless controller manages a summary of the currently active facet filters.
 *
 * Example: [breadcrumb-manager.fn.tsx](https://github.com/coveo/ui-kit/blob/main/samples/headless/search-react/src/components/breadcrumb-manager/breadcrumb-manager.fn.tsx)
 *
 * @group Controllers
 * @category BreadcrumbManager
 */
export interface BreadcrumbManager extends CoreBreadcrumbManager {
    /**
     * The state of the `BreadcrumbManager` controller.
     */
    state: BreadcrumbManagerState;
}
/**
 * A scoped and simplified part of the headless state that's relevant to the `BreadcrumbManager` controller.
 *
 * @group Controllers
 * @category BreadcrumbManager
 */
export interface BreadcrumbManagerState extends CoreBreadcrumbManagerState {
    /**
     * The list of automatic facet breadcrumbs.
     */
    automaticFacetBreadcrumbs: AutomaticFacetBreadcrumb[];
}
/**
 * Represents a breadcrumb for an automatic facet.
 */
export interface AutomaticFacetBreadcrumb extends Breadcrumb<FacetValue> {
    /**
     * The label of the underlying facet.
     */
    label: string;
}
/**
 * Creates a `BreadcrumbManager` controller instance.
 *
 * @param engine - The headless engine.
 * @returns A `BreadcrumbManager` controller instance.
 *
 * @group Controllers
 * @category BreadcrumbManager
 */
export declare function buildBreadcrumbManager(engine: SearchEngine): BreadcrumbManager;
