review-copilot
Version:
ReviewCopilot - AI-powered code review assistant with customizable prompts
66 lines (65 loc) • 1.58 kB
TypeScript
export type AIProviderType = 'openai' | 'deepseek' | 'anthropic' | 'gemini';
export interface AIProvider {
provider: AIProviderType;
apiKey: string;
model: string;
baseURL?: string;
}
export interface ReviewTrigger {
on: 'pull_request' | 'merge_request' | 'push';
actions?: string[];
}
export interface ReviewRule {
enabled: boolean;
pattern?: string;
prompt: string;
filePatterns?: string[];
}
export interface CustomReviewPoint {
name: string;
prompt: string;
}
export interface Config {
ai: AIProvider;
triggers: ReviewTrigger[];
rules: {
commitMessage: ReviewRule;
branchName: ReviewRule;
codeChanges: ReviewRule;
};
customReviewPoints?: CustomReviewPoint[];
}
export interface ReviewResult {
success: boolean;
message: string;
suggestions: Array<{
message: string;
severity: 'info' | 'warning' | 'error';
file?: string;
line?: number;
}>;
errors: Array<{
message: string;
file?: string;
line?: number;
}>;
}
export interface AIProviderConfig {
apiKey: string;
provider: AIProviderType;
baseURL?: string;
model: string;
defaultHeaders?: Record<string, string>;
timeout?: number;
}
export interface IAIProvider {
review(prompt: string, content: string): Promise<string>;
}
export interface AIEnvConfig {
[key: string]: {
envKey: string;
defaultBaseURL?: string;
defaultModel?: string;
};
}
export declare const AI_PROVIDER_CONFIG: AIEnvConfig;