import type { OpaqueId, TransitionNonce } from "../domain/records.js"; import type { ProcessRunner } from "../providers/process.js"; export interface TicketWorktreeRecord { schema_version: 1; ticket_id: OpaqueId; repository_root: string; worktree_root: string; branch: string; requested_base: string; base_commit: string; create_nonce: TransitionNonce; } export interface CreateTicketWorktreeOptions { repositoryRoot: string; worktreesRoot: string; recordsRoot: string; locksRoot: string; ticketId: string; actorId: string; transitionNonce: string; baseRef?: string; env?: NodeJS.ProcessEnv; runner: ProcessRunner; } export interface TicketWorktreeResult { record: TicketWorktreeRecord; replayed: boolean; recovered: boolean; } /** * Creates one isolated branch/worktree. This boundary deliberately has no merge * or removal operation: cleanup and integration remain explicit operator acts. */ export declare function createTicketWorktree(options: CreateTicketWorktreeOptions): TicketWorktreeResult; export declare function parseTicketWorktreeRecord(value: unknown, label?: string): TicketWorktreeRecord;