/** * Core search engine implementation */ import type { SearchOptions, SearchResponse } from './types.js'; /** * Spec data structure for search */ export interface SearchableSpec { path: string; name: string; status: string; priority?: string; tags?: string[]; title?: string; description?: string; content?: string; /** Created date (ISO string) */ created?: string; /** Updated date (ISO string) */ updated?: string; /** Assignee */ assignee?: string; } /** * Check if spec contains all query terms across any combination of fields * * This enables cross-field matching: term A can be in title, term B in content * * @param spec - Spec to check * @param queryTerms - Terms that must all be present * @returns True if all terms are found somewhere in the spec, false for empty queryTerms */ export declare function specContainsAllTerms(spec: SearchableSpec, queryTerms: string[]): boolean; /** * Search specs with intelligent relevance ranking * * @param query - Search query string * @param specs - Specs to search * @param options - Search options * @returns Search results with relevance scoring */ export declare function searchSpecs(query: string, specs: SearchableSpec[], options?: SearchOptions): SearchResponse; /** * Advanced search with query syntax support * * @param query - Search query string with optional advanced syntax * @param specs - Specs to search * @param options - Search options * @returns Search results with relevance scoring */ export declare function advancedSearchSpecs(query: string, specs: SearchableSpec[], options?: SearchOptions): SearchResponse; /** * Search specs with intelligent relevance ranking, with support for advanced query syntax * * Automatically detects advanced syntax (AND, OR, NOT, field:value, etc.) and uses * the appropriate search method. * * @param query - Search query string (supports advanced syntax) * @param specs - Specs to search * @param options - Search options * @returns Search results with relevance scoring */ export declare function searchSpecsAdvanced(query: string, specs: SearchableSpec[], options?: SearchOptions): SearchResponse; //# sourceMappingURL=engine.d.ts.map