import type { WorktreeDisposition } from './worktree-disposition.js'; export type ExecFileFn = (file: string, args: string[], opts?: { cwd?: string; }) => Promise<{ stdout: string; stderr: string; }>; export interface WorktreeHandle { path: string; branch: string; cleanup: (opts?: { force?: boolean; disposition?: WorktreeDisposition; }) => Promise; } export declare const DEFAULT_BRANCH_PREFIX = "afk/"; export declare function validateBranchPrefix(value: string, source: string): string; export declare function resolveBranchPrefix(override?: string): string; export declare function setupWorktree(flagValue: string | true, opts?: { execFile?: ExecFileFn; branchPrefix?: string; baseRef?: string; }): Promise; export interface DeferredWorktree { repoRoot: string; handle(): WorktreeHandle | undefined; create(flagValue: string | true): Promise; } export declare function setupWorktreeDeferred(opts?: { execFile?: ExecFileFn; branchPrefix?: string; baseRef?: string; }): Promise; export declare function validateBaseRef(value: string, source: string): void; export declare function resolveBaseRef(override?: string): string | undefined;