import type { InsightEngine } from '../../../../app/insight-engine/insight-engine.js';
import type { FacetValueState } from '../../../../features/facets/facet-api/value.js';
import { type CoreFacet, type CoreFacetState, type Facet, type FacetSearch, type FacetSearchState, type FacetState, type FacetValue, type SpecificFacetSearchResult } from '../../../core/facets/facet/headless-core-facet.js';
import { type CoreFacetOptions, type FacetOptions, type FacetSearchOptions } from './headless-insight-facet-options.js';
export type { CoreFacet, CoreFacetOptions, CoreFacetState, Facet, FacetOptions, FacetSearch, FacetSearchOptions, FacetSearchState, FacetState, FacetValue, FacetValueState, SpecificFacetSearchResult, };
export interface FacetProps {
    /**
     * The options for the `Facet` controller.
     * */
    options: FacetOptions;
}
/**
 * Creates an insight `Facet` controller instance.
 *
 * @param engine - The insight engine.
 * @param props - The configurable `Facet` properties.
 * @returns A `Facet` controller instance.
 *
 * @group Controllers
 * @category Facet
 */
export declare function buildFacet(engine: InsightEngine, props: FacetProps): Facet;
