/** * Configuration reader for paper-search-agent. * Reads config.toml and exposes typed switches for discovery sources, * retrieval routes, and optional integrations. */ export interface PathConfig { cache_dir: string; corpus_dir: string; } export interface DiscoveryConfig { openalex: boolean; crossref: boolean; scopus: boolean; springer_meta: boolean; arxiv: boolean; pubmed: boolean; europe_pmc: boolean; semantic_scholar: boolean; unpaywall: boolean; } export interface RetrievalConfig { elsevier_api: boolean; springer_oa_api: boolean; wiley_tdm: boolean; europe_pmc_fulltext: boolean; browser_assisted: boolean; manual_import: boolean; } export interface IntegrationsConfig { zotero: boolean; } export interface BrowserConfig { auto_save_state: boolean; state_directory: string; } export interface TokenBudgetConfig { abstract_first_triage: boolean; max_fulltext_tokens: number; } export interface AppConfig { discovery: DiscoveryConfig; retrieval: RetrievalConfig; integrations: IntegrationsConfig; browser: BrowserConfig; token_budget: TokenBudgetConfig; paths: PathConfig; } /** * Load configuration from config.toml, falling back to defaults for * any missing section or key. */ export declare function loadConfig(configPath?: string): AppConfig; /** Return the list of enabled discovery source names. */ export declare function enabledDiscoverySources(config: AppConfig): string[]; /** * Return the subset of enabled discovery sources that support keyword search. * Unpaywall is DOI lookup only, so it should not be exposed via search tools. */ export declare function enabledSearchDiscoverySources(config: AppConfig): string[]; /** Return the list of enabled retrieval route names. */ export declare function enabledRetrievalRoutes(config: AppConfig): string[]; //# sourceMappingURL=config.d.ts.map