import { Logger } from "./logger";
import { TaskRunner } from "./taskrunner";
export interface Git {
    /**
     * If not in a git repo or no changes, findAllTypescriptFiles() is returned
     */
    findChangedFilesOrAllTypescriptFiles(sinceLastPush?: boolean): Promise<string[]>;
    findChangedFiles(sinceLastPush?: boolean): Promise<string[]>;
    findAllTypescriptFiles(): Promise<string[]>;
    isPristine(): Promise<boolean>;
    execute(args: string[]): Promise<string[]>;
    isOnMasterOrReleaseBranch(): Promise<boolean>;
    isOnBranch(): Promise<boolean>;
    getBranchName(): Promise<string>;
}
export declare function createGit(dependencies: {
    taskRunner: TaskRunner;
    logger: Logger;
}): Git;
