import type { GraphLanguageAdapter } from './types.js'; /** * Inputs that drive graph language-adapter selection: the project root to probe * for language signals and an optional explicit language override. */ export interface GraphAdapterSelectionInput { /** Project root to probe for language signals (defaults to the process cwd). */ readonly cwd?: string; /** Explicit language override; when set, skips signal-based detection. */ readonly language?: string; } interface GraphAdapterRegistryReader { readonly size: number; getAll(): readonly { readonly id: string; readonly adapter: GraphLanguageAdapter; }[]; getById(id: string): { readonly adapter: GraphLanguageAdapter; } | undefined; } /** * Selects the graph language adapter for a run. Kept separate from * GraphAdapterRegistry so registration/lookup and selection policy can evolve * independently as more adapters land. */ export declare class GraphAdapterSelector { private readonly registry; constructor(registry: GraphAdapterRegistryReader); pick(input?: GraphAdapterSelectionInput): GraphLanguageAdapter; private pickImplicit; private fallbackAdapter; private warnNoMatchingAdapter; private pickByFileDominance; private countFilesPerAdapter; private resolveTie; } export {}; //# sourceMappingURL=selector.d.ts.map