import { type WormholeConsumerConstructor } from 'stencil-wormhole';
import type { SearchIndex as AlgoliaIndex } from 'algoliasearch';
import type { StorageMethods } from '../../utils/store/component-store';
import type { IndexResult, AlgoliaResultHit, SearchIndex } from './algolia-interface';
export declare enum SearchChangeEvent {
    Filter = "filter",
    Page = "page",
    Replica = "replica",
    Init = "init"
}
export interface WormholeState {
    indexResults: IndexResult;
    filterChanged?: string;
    facets?: {
        [prop: string]: {
            [prop: string]: number;
        };
    };
    results: AlgoliaResultHit[];
    resultsPage: number;
    tplRenderFn?: (...args: any[]) => any;
    changeEvent: SearchChangeEvent;
    algoliaIndex: AlgoliaIndex;
    searchIndex: SearchIndex;
    browseIndex: boolean;
    globalStoreMethod: StorageMethods;
    isLoading: boolean;
}
export declare const Wormhole: (Component: WormholeConsumerConstructor, props: (keyof WormholeState)[]) => void;
export * from 'stencil-wormhole';
