/**
 * Interface for git operations
 */
export interface IGitService {
    /**
     * Check if directory is a git repository
     * @param dir - Directory to check
     * @returns True if directory is a git repository
     */
    isRepository(dir: string): Promise<boolean>;
    /**
     * Check if working directory has uncommitted changes
     * @param dir - Directory to check
     * @returns True if there are uncommitted or unstaged changes
     */
    isDirty(dir: string): Promise<boolean>;
    /**
     * Get git status output
     * @param dir - Directory to check
     * @returns Git status output (short format)
     */
    getStatus(dir: string): Promise<string>;
}
/**
 * Git service implementation
 */
export declare class GitService implements IGitService {
    isRepository(dir: string): Promise<boolean>;
    isDirty(dir: string): Promise<boolean>;
    getStatus(dir: string): Promise<string>;
}
/**
 * No-op git service for testing or when git checks should be skipped
 */
export declare class NoOpGitService implements IGitService {
    isRepository(_dir: string): Promise<boolean>;
    isDirty(_dir: string): Promise<boolean>;
    getStatus(_dir: string): Promise<string>;
}
//# sourceMappingURL=git-service.d.ts.map