DocSearch.d.ts 1.4 KB

12345678910111213141516171819202122232425262728293031323334
  1. import type { AutocompleteState, AutocompleteOptions } from '@algolia/autocomplete-core';
  2. import type { SearchOptions } from '@algolia/client-search';
  3. import type { SearchClient } from 'algoliasearch/lite';
  4. import React from 'react';
  5. import type { DocSearchHit, InternalDocSearchHit, StoredDocSearchHit } from './types';
  6. import type { ButtonTranslations, ModalTranslations } from '.';
  7. export declare type DocSearchTranslations = Partial<{
  8. button: ButtonTranslations;
  9. modal: ModalTranslations;
  10. }>;
  11. export interface DocSearchProps {
  12. appId: string;
  13. apiKey: string;
  14. indexName: string;
  15. placeholder?: string;
  16. searchParameters?: SearchOptions;
  17. transformItems?: (items: DocSearchHit[]) => DocSearchHit[];
  18. hitComponent?: (props: {
  19. hit: InternalDocSearchHit | StoredDocSearchHit;
  20. children: React.ReactNode;
  21. }) => JSX.Element;
  22. resultsFooterComponent?: (props: {
  23. state: AutocompleteState<InternalDocSearchHit>;
  24. }) => JSX.Element | null;
  25. transformSearchClient?: (searchClient: SearchClient) => SearchClient;
  26. disableUserPersonalization?: boolean;
  27. initialQuery?: string;
  28. navigator?: AutocompleteOptions<InternalDocSearchHit>['navigator'];
  29. translations?: DocSearchTranslations;
  30. getMissingResultsUrl?: ({ query: string }: {
  31. query: any;
  32. }) => string;
  33. }
  34. export declare function DocSearch(props: DocSearchProps): JSX.Element;