/**
 * git 상태 스냅샷과 diff 요약을 계산하는 파일이다.
 * review/commit 프롬프트에 필요한 워크스페이스 문맥을 동일한 형식으로 수집한다.
 */
import type { WorkspaceDelta, WorkspaceSnapshot } from './types';
/**
 * @description
 * 현재 작업 디렉터리를 기준으로 git 명령을 실행하고 표준 출력을 문자열로 반환한다.
 * 모든 git 관련 보조 로직이 동일한 실행 옵션을 공유하도록 공통 진입점을 제공한다.
 * @param rootDir git 명령을 실행할 기준 디렉터리
 * @param command 실행할 git 명령 문자열
 * @returns trim 처리된 표준 출력
 */
export declare function runGitCommand(rootDir: string, command: string): string;
/**
 * @description 지정 디렉터리가 Git 저장소인지 확인한다.
 * @param rootDir 확인할 디렉터리 경로
 * @returns Git 저장소이면 true
 */
export declare function isGitRepository(rootDir: string): boolean;
/**
 * @description 현재 워크스페이스의 Git 상태 스냅샷을 캡처한다.
 * @param rootDir 작업 디렉터리
 * @returns 워크스페이스 스냅샷 객체
 */
export declare function captureWorkspaceSnapshot(rootDir: string): WorkspaceSnapshot;
/**
 * @description 두 워크스페이스 스냅샷 간의 차이를 계산한다.
 * @param before 작업 전 스냅샷
 * @param after 작업 후 스냅샷
 * @returns 워크스페이스 변경 사항
 */
export declare function diffWorkspaceSnapshots(before: WorkspaceSnapshot, after: WorkspaceSnapshot): WorkspaceDelta;
/**
 * @description 콘텐츠를 마크다운 코드 블록으로 감싼다.
 * @param content 코드 블록 내용
 * @param language 언어 식별자
 * @returns 마크다운 코드 블록 문자열
 */
export declare function formatCodeBlock(content: string, language?: string): string;
/**
 * @description 워크스페이스 스냅샷을 마크다운 형식으로 포맷한다.
 * @param snapshot 포맷할 스냅샷
 * @returns 마크다운 문자열
 */
export declare function formatWorkspaceSnapshot(snapshot: WorkspaceSnapshot): string;
/**
 * @description 워크스페이스 변화(delta)를 마크다운 형식으로 포맷한다.
 * @param delta 포맷할 워크스페이스 변화
 * @returns 마크다운 문자열
 */
export declare function formatWorkspaceDelta(delta: WorkspaceDelta): string;
//# sourceMappingURL=git-helpers.d.ts.map