import type { RawSearchResult, SearchEngine } from '../types.js';
import type { MergedSearchResult } from './dedup.js';
export declare function normalizeQueries(queries: string[]): string[];
export interface FanOutOptions {
    maxResults: number;
    timeRange?: string;
    language?: string;
    includeDomains?: string[];
    excludeDomains?: string[];
    fromDate?: string;
    toDate?: string;
    category?: 'general' | 'news' | 'code' | 'docs' | 'papers' | 'images';
}
export interface FanOutResult {
    results: RawSearchResult[];
    enginesUsed: string[];
    errors: string[];
}
export declare function fanOutSearch(queries: string[], engines: SearchEngine[], options: FanOutOptions): Promise<FanOutResult>;
export declare function synthesizeIntent(queries: string[]): string;
export declare function mergeWithRRF(rankedLists: MergedSearchResult[][]): MergedSearchResult[];
export declare function decomposeMultiHop(query: string): string[] | null;
export declare function expandQueryHeuristic(query: string): string[];
export declare function expandIfSingle(query: string | string[]): string[];
//# sourceMappingURL=multi-query.d.ts.map