export interface Config {
  version: string;
  defaultProvider: string;
  providers: {
    gemini?: {
      enabled: boolean;
      apiKey?: string;
      model: string;
      maxTokens: number;
      temperature: number;
    };
    anthropic?: {
      enabled: boolean;
      apiKey?: string;
      model: string;
      maxTokens: number;
      temperature: number;
    };
    openai?: {
      enabled: boolean;
      apiKey?: string;
      model: string;
      maxTokens: number;
    };
  };
  commit: {
    conventionalCommits: boolean;
    includeEmoji: boolean;
    maxLength: number;
    includeDiff: boolean;
    excludePatterns: string[];
  };
}

export const defaultConfig: Config = {
  version: "0.1.0",
  defaultProvider: "gemini",
  providers: {
    gemini: {
      enabled: true,
      model: "gemini-2.5-flash",
      maxTokens: 4096,
      temperature: 0.7,
    },
  },
  commit: {
    conventionalCommits: true,
    includeEmoji: false,
    maxLength: 72,
    includeDiff: true,
    excludePatterns: ["*.lock", "*.min.js"],
  },
};
