/** * Pure transcript search (V2-057). Scans normalized items for a case- * insensitive substring match and exposes match navigation as plain index * arithmetic, so the search bar component only needs to hold the query * string and current match index. */ import { type TranscriptState } from "./transcript-types.js"; export interface TranscriptMatch { readonly itemId: string; readonly start: number; readonly end: number; } export declare function findMatches(state: TranscriptState, query: string): TranscriptMatch[]; /** Wraps forward; returns -1 when there are no matches to navigate. */ export declare function nextMatchIndex(matches: readonly TranscriptMatch[], current: number): number; /** Wraps backward; returns -1 when there are no matches to navigate. */ export declare function prevMatchIndex(matches: readonly TranscriptMatch[], current: number): number;