/** * Google Programmable Search API Integration * * Stage 3 of the entity resolution pipeline. * Broad search for entities when Wikidata/OpenLibrary fail. */ import type { ResponseCache } from '../caching/types'; import type { CostTracker } from '../costs/tracker'; import type { EntityType, GoogleSearchConfig, GoogleSearchResult } from './types'; /** * Full configuration for Google search. */ export interface GoogleSearchFullConfig extends GoogleSearchConfig { /** Response cache for API calls */ cache?: ResponseCache | undefined; /** Cost tracker for API usage billing */ costTracker?: CostTracker | undefined; /** Request timeout in milliseconds */ timeout?: number | undefined; /** Custom fetch function (for testing) */ customFetch?: typeof fetch | undefined; } /** * Build a category-aware search query. * * Appends category hint to improve search relevance. */ export declare function buildSearchQuery(title: string, category: EntityType): string; /** * Search Google using Programmable Search API. * * @param query - Search query string * @param config - API configuration with key and cx * @returns Array of search results (up to 5) */ export declare function searchGoogle(query: string, config: GoogleSearchFullConfig): Promise; /** * Search Google for an entity with category-aware query. * * @param title - Entity title * @param category - Entity category * @param config - API configuration * @param author - Optional author (for books) * @returns Array of search results */ export declare function searchGoogleForEntity(title: string, category: EntityType, config: GoogleSearchFullConfig, author?: string): Promise; //# sourceMappingURL=google.d.ts.map