/** * Repo Client * * Integrates with @fractary/core SDK for repository and work tracking operations. * Supports both PAT and GitHub App authentication. */ import type { LoadedFaberConfig } from '../types/config.js'; interface Issue { id: string; number: number; title: string; description: string; labels: string[]; url: string; state: string; } interface WorktreeResult { path: string; absolute_path: string; branch: string; created_at: string; organization: string; project: string; work_id: string; } interface IssueUpdateOptions { id: string; comment?: string; addLabel?: string; removeLabel?: string; } /** * Repo Client - integrates with @fractary/core SDK * * Provides repository and work tracking operations using WorkManager and RepoManager * from the @fractary/core SDK. */ export declare class RepoClient { private workManager; private repoManager; private organization; private project; /** * Create a RepoClient instance (async factory method) * * Supports both PAT and GitHub App authentication. * GitHub App takes precedence if configured. * * @param config - FABER CLI configuration with GitHub settings * @returns Promise resolving to RepoClient instance */ static create(config: LoadedFaberConfig): Promise; /** * Private constructor - use RepoClient.create() factory method */ private constructor(); /** * Fetch specific issues by ID * * Uses WorkManager from @fractary/core SDK */ fetchIssues(ids: string[]): Promise; /** * Search issues by labels * * Uses WorkManager from @fractary/core SDK */ searchIssues(labels: string[]): Promise; /** * Create a git branch * * Uses RepoManager from @fractary/core SDK */ createBranch(branchName: string): Promise; /** * Create a git worktree * * Uses RepoManager from @fractary/core SDK */ createWorktree(options: { workId: string; path?: string; }): Promise; /** * Update GitHub issue * * Uses WorkManager from @fractary/core SDK */ updateIssue(options: IssueUpdateOptions): Promise; } export {}; //# sourceMappingURL=repo-client.d.ts.map