/**
 * github_repo_digest: bounded source-code observability for public GitHub repos.
 *
 * This complements research_sources: /sources finds current repo links, and this
 * tool turns one repo into a compact component/manifests/command digest without
 * cloning or sending a model call.
 */
import type { Tool, ToolResult } from './types.js';
interface ParsedRepo {
    owner: string;
    repo: string;
}
interface KeyFile {
    path: string;
    text: string;
}
export declare const GitHubRepoDigestTool: Tool;
export declare function buildGitHubRepoDigest(input: Record<string, unknown>): Promise<ToolResult>;
export declare function parseGitHubRepo(value: string): ParsedRepo | null;
declare function summarizeLanguages(paths: string[]): string[];
declare function summarizeHarnessSurfaces(paths: string[]): string[];
declare function summarizeCommands(files: KeyFile[]): string[];
declare function selectKeyFiles(paths: string[], maxTextFiles: number, docsOnly?: boolean): string[];
declare function selectAnalysisPaths(paths: string[], maxFiles: number): string[];
declare function redactSecrets(value: string): string;
export declare const _internal: {
    parseGitHubRepo: typeof parseGitHubRepo;
    selectAnalysisPaths: typeof selectAnalysisPaths;
    selectKeyFiles: typeof selectKeyFiles;
    summarizeHarnessSurfaces: typeof summarizeHarnessSurfaces;
    summarizeLanguages: typeof summarizeLanguages;
    summarizeCommands: typeof summarizeCommands;
    redactSecrets: typeof redactSecrets;
};
export {};
