Public API barrel file for the `doc-search` package, re-exporting all components, hooks, utilities, and types needed to embed document search functionality in consuming applications. ## Key Components | Export | Source | Description | |---|---|---| | `DocSearchBar` / `DocSearchBarProps` | `./doc-search-bar` | Search input component | | `DocSearchResultRow` / props + entry types | `./doc-search-result-row` | Renders a single search result | | `formatRelativePath` | `./format-relative-path` | Path formatting utility | | `useDocSearch` / `UseDocSearchConfig` | `./use-doc-search` | Debounced fetch + result navigation hook | | `resolveSearchResultAction` / `SearchResultAction` | `./resolve-search-result-action` | Determines the action for a given result | | `mapDocSearchResults` | `./map-doc-search-results` | Transforms raw API results into UI-ready shape | | `DocSearchResult` | `./types` | Shared result type | ## Usage Example ```typescript import { DocSearchBar, DocSearchResultRow, useDocSearch, type UseDocSearchConfig, type DocSearchResult, } from '@openframe/doc-search' const config: UseDocSearchConfig = { endpoint: '/api/docs/search', debounceMs: 300, } function MySearchPanel() { const { query, setQuery, results, navigate } = useDocSearch(config) return ( <> {results.map((result: DocSearchResult) => ( ))} ) } ``` > **Note for embedders:** `useDocSearch` bundles the debounced fetch and result navigation logic previously in `hub/hooks/use-docs.ts`, so you do not need to re-implement it when mounting `DocSearchBar` outside the hub.