import type { FullToolInfo } from '@polka-codes/core';
/**
 * Helper to extract the target commit from a git range
 * For ranges like "A..B", "A...B", or "HEAD~3..HEAD", returns B
 * For single commit, returns the commit
 * For local changes, returns null
 */
export declare function extractTargetCommit(range?: string, pr?: number): string | null;
/**
 * Create git-aware version of readFile that reads from a specific commit
 */
export declare function createGitReadFile(commit: string): FullToolInfo;
/**
 * Create git-aware version of listFiles that lists files at a specific commit
 */
export declare function createGitListFiles(commit: string): FullToolInfo;
/**
 * Create git-aware version of readBinaryFile that reads binary files at a specific commit
 */
export declare function createGitReadBinaryFile(commit: string): FullToolInfo;
/**
 * Create git-aware file tools for reviewing a specific commit
 * Returns wrapped versions of readFile, listFiles, and readBinaryFile
 */
export declare function createGitAwareTools(commit: string): {
    readFile: FullToolInfo;
    listFiles: FullToolInfo;
    readBinaryFile: FullToolInfo;
};
/**
 * Create git-aware version of gitDiff that shows changes introduced by a specific commit
 * Uses `git show <commit>` to display the diff for that commit
 */
export declare function createGitAwareDiff(commit: string): FullToolInfo;
//# sourceMappingURL=git-file-tools.d.ts.map