import { Manifest, SearchService, SearchServiceAutocomplete, SearchServiceAutocompleteQueryParams, SearchServiceAutocompleteResponse, SearchServiceCommonHitSelectors, SearchServiceQueryParams, SearchServiceSearchResponse } from "@iiif/presentation-3"; import { ManifestNormalized } from "@iiif/presentation-3-normalized"; import * as zustand_vanilla0 from "zustand/vanilla"; //#region src/search1.d.ts type Search1Service = SearchService & { service?: SearchServiceAutocomplete | SearchServiceAutocomplete[] | undefined; }; interface Search1AutocompleteStore { hasAutocomplete: boolean; endpoint: string | undefined; results: SearchServiceAutocompleteResponse['terms']; lastQuery: SearchServiceAutocompleteQueryParams | null; loading: boolean; error: boolean; errorMessage: string; ignored: string[]; setSearchService: (service: Search1Service) => void; clearSearch: () => void; search: (query: string, options?: { motivation?: string; date?: string; user?: string; headers?: HeadersInit; }) => void | Promise; } declare function findSearch1Service(manifest: ManifestNormalized | Manifest): Search1Service | null; declare function findAutocompleteService(service: Search1Service): SearchServiceAutocomplete | undefined; declare const createSearch1AutocompleteStore: (service?: Search1Service | undefined, options?: { fetcher?: Fetcher; }) => zustand_vanilla0.StoreApi; type SingleSearchHit = { '@type': 'search:Hit'; annotations: string[]; selectors: Array; match?: string; before?: string; after?: string; }; interface Search1Store { endpoint: string | undefined; service: Search1Service | undefined; lastQuery: SearchServiceQueryParams; resources: SearchServiceSearchResponse['resources']; hits: SingleSearchHit[]; loading: boolean; error: boolean; hasAutocomplete: boolean; hasSearch: boolean; errorMessage: string; hitIndex: number; highlight: { results: SearchServiceSearchResponse['resources'] | null; hit: SingleSearchHit | null; }; search: (query: SearchServiceQueryParams, options?: { headers?: HeadersInit; }) => void | Promise; setSearchService: (service: Search1Service) => void; clearSearch: () => void; highlightHit: (index: number) => void; nextHit: () => void; previousHit: () => void; } type FetcherReturn = Promise<[T | null, error: string | null]>; type Fetcher = (query: string, options: { signal: AbortSignal; headers?: HeadersInit; }) => FetcherReturn; declare const createSearch1Store: (service?: Search1Service | string, options?: { fetcher?: Fetcher; }) => zustand_vanilla0.StoreApi; //#endregion export { createSearch1AutocompleteStore as a, findSearch1Service as c, SingleSearchHit as i, Search1Service as n, createSearch1Store as o, Search1Store as r, findAutocompleteService as s, Search1AutocompleteStore as t }; //# sourceMappingURL=search1-C_t1c_UU.d.cts.map