import type { EnsureWorktreeRequest, RemoveWorktreeRequest, WorktreeGateway } from '../../../../modules/worktree-management/entities/worktree/worktree.gateway.js';
import type { EnsureResult, RemoveResult, WorktreeEntry, WorktreeIdentity } from '../../../../modules/worktree-management/entities/worktree/worktree.schema.js';
import type { GitCommandExecutor } from '../../../../modules/worktree-management/entities/gitCommand/gitCommand.gateway.js';
export interface WorktreeFileSystemGatewayDependencies {
    executor: GitCommandExecutor;
    baseDirectory?: string;
}
export declare class WorktreeFileSystemGateway implements WorktreeGateway {
    private readonly executor;
    private readonly baseDirectory;
    constructor(deps: WorktreeFileSystemGatewayDependencies);
    ensure(request: EnsureWorktreeRequest): Promise<EnsureResult>;
    remove(request: RemoveWorktreeRequest): Promise<RemoveResult>;
    exists(identity: WorktreeIdentity): Promise<boolean>;
    list(): Promise<WorktreeEntry[]>;
}
//# sourceMappingURL=worktree.fileSystem.gateway.d.ts.map