export interface CopilotSuggestion { success: boolean; message: string; command?: string; } export interface ConflictResolutionSuggestion { recommendation: 'local' | 'remote' | 'both' | 'custom'; explanation: string; customContent?: string; } declare class CopilotService { private available; private _notAuthenticated; get isNotAuthenticated(): boolean; private getLanguageInstruction; isAvailable(): Promise; resetAvailability(): void; /** * Install GitHub Copilot CLI * Returns true if installation succeeded, false otherwise */ installCopilotCli(): Promise<{ success: boolean; message: string; }>; generateCommitMessage(diff: string): Promise; private summarizeDiff; private escapeForShell; analyzeContext(branch: string, stagedFiles: string[], modifiedFiles: string[]): Promise; predictProblems(action: string, currentBranch: string, hasUncommitted: boolean): Promise; explainConcept(concept: string): Promise; /** * Ask a Git question in natural language */ askGitQuestion(question: string): Promise; /** * Explain a Git error and suggest solutions */ explainGitError(errorMessage: string, context?: { command?: string; branch?: string; hasUncommitted?: boolean; }): Promise; /** * Suggest how to resolve a merge conflict */ suggestConflictResolution(fileName: string, localVersion: string, remoteVersion: string, context?: { branch?: string; remoteBranch?: string; }): Promise; private parseConflictSuggestion; /** * Summarize staged diff in plain language */ summarizeStagedDiff(diff: string): Promise; /** * Checks if parsed output looks like a CLI error rather than a real answer. * Returns true when the content should be discarded. */ private looksLikeError; private executeWithRetry; private parseAnswer; private parseCommitMessage; private parseSuggestion; } export declare const copilotService: CopilotService; export default copilotService; //# sourceMappingURL=copilot-service.d.ts.map