import { type ProjectContextGraph } from '@kernlang/review'; /** Recursively collect source files under the given paths (files pass through). */ export declare function collectSourceFiles(paths: string[]): string[]; export interface ContextOptions { maxDepth?: number; /** * Rewrite every artifact path relative to this directory so the emitted * kern-context.json is portable (committable, comparable across machines). * When unset, paths stay absolute. */ base?: string; } /** * Build the context artifact for a set of entry paths. Pure over the filesystem * it reads — returned for direct use and so the CLI wrapper stays a thin shell. */ export declare function buildContextJson(paths: string[], opts?: ContextOptions): ProjectContextGraph; /** * Build the compact, prompt-ready `` spine for a set of entry paths — * the whole-project context an LLM/agent drops straight into a prompt. Scopes to * every file in the artifact (the whole project) and fits `spineBudget` tokens * (default {@link DEFAULT_SPINE_TOKENS}), degrading through tiers when the * project is large. Returns '' when there are no exported symbols to surface. */ export declare function buildContextSpine(paths: string[], opts?: ContextOptions & { spineBudget?: number; }): string; export declare function runContext(args: string[]): void;