import type { AppState } from "../utils.js";
interface GitCommandResponse {
    stdout: string;
    stderr: string;
    code: number;
}
export declare function gitStatus(state: AppState, body: {
    volume?: string;
    repo: string;
}): Promise<import("../utils.js").ApiEnvelope<GitCommandResponse>>;
export declare function gitExec(state: AppState, body: {
    volume?: string;
    repo: string;
    args: string[];
}): Promise<import("../utils.js").ApiEnvelope<GitCommandResponse>>;
export declare function gitClone(state: AppState, body: {
    volume?: string;
    repo_parent: string;
    url: string;
    branch?: string;
    depth?: number;
    target_dir?: string;
    list_files_limit?: number;
}): Promise<import("../utils.js").ApiEnvelope<{
    repo_path: string;
    tracked_files_count: number;
    tracked_files: string[];
    tracked_files_truncated: boolean;
    command: GitCommandResponse;
}>>;
export declare function gitInit(state: AppState, body: {
    volume?: string;
    repo: string;
    initial_branch?: string;
}): Promise<import("../utils.js").ApiEnvelope<GitCommandResponse>>;
export {};
//# sourceMappingURL=git.d.ts.map