/** * Arial Server - Git operations * * Uses Bun.spawn with argument arrays to prevent shell injection. */ export interface GitResult { ok: boolean; stdout: string; stderr: string; error?: Error; } export declare function getCurrentBranch(cwd: string): Promise; export declare function getDefaultBranch(cwd: string): Promise; export declare function checkoutBranch(cwd: string, branch: string): Promise; export declare function pruneWorktrees(cwd: string): Promise; export declare function createWorktree(sourceDir: string, worktreeDir: string, branch: string, baseBranch: string): Promise; export declare function removeWorktree(sourceDir: string, worktreeDir: string): Promise; export declare function listWorktrees(cwd: string): Promise; export declare function push(cwd: string, branch: string, setUpstream?: boolean): Promise; export declare function stageAll(cwd: string): Promise; export interface CommitAuthor { name: string; email: string; } export declare function commit(cwd: string, message: string, author?: CommitAuthor): Promise; export declare function deleteBranch(cwd: string, branch: string, force?: boolean): Promise; export declare function isGitRepo(cwd: string): Promise; export declare function fetch(cwd: string): Promise; export declare function getHeadCommit(cwd: string, branch?: string): Promise; /** * Clone a repository using HTTPS with token authentication. * The token is embedded in the URL for authentication. */ export declare function cloneWithToken(remoteUrl: string, targetDir: string, token: string): Promise; /** * Set the remote URL for origin. */ export declare function setRemoteUrl(cwd: string, url: string): Promise; /** * Set the remote URL with embedded OAuth token for authentication. * Used to ensure git operations (fetch, push) can authenticate. */ export declare function setRemoteUrlWithToken(cwd: string, remoteUrl: string, token: string): Promise; //# sourceMappingURL=operations.d.ts.map