import type { BranchListItem, TaskListItem } from '../../../infra/task/index.js'; export type ListAction = 'diff' | 'instruct' | 'sync' | 'pull' | 'try' | 'merge' | 'delete' | 'create_pr'; export type BranchActionTarget = TaskListItem | Pick; export declare function resolveTargetBranch(target: BranchActionTarget): string; export declare function resolveTargetWorktreePath(target: BranchActionTarget): string | undefined; export declare function resolveTargetInstruction(target: BranchActionTarget): string; /** * Validates that the target is a task target with a valid worktree path. * Returns `false` with an error log if validation fails. * Throws if the target is not a task target (programming error). */ export declare function validateWorktreeTarget(target: BranchActionTarget, actionName: string): target is TaskListItem & { worktreePath: string; }; export declare function ensureRootBranchReady(projectDir: string, target: BranchActionTarget, actionName: string): boolean; /** Relay push: clone HEAD を root repo 経由で origin へ転送する(checked-out branch を変更しない) */ export declare function pushWorktreeToOrigin(worktreePath: string, projectDir: string, branch: string): void; //# sourceMappingURL=taskActionTarget.d.ts.map