43 lines
1.1 KiB
TypeScript
43 lines
1.1 KiB
TypeScript
export type ClaudeSubscription = "no" | "yes" | "max20";
|
|
export type BooleanArg = "no" | "yes";
|
|
export interface InstallArgs {
|
|
tui: boolean;
|
|
claude?: ClaudeSubscription;
|
|
openai?: BooleanArg;
|
|
gemini?: BooleanArg;
|
|
copilot?: BooleanArg;
|
|
opencodeZen?: BooleanArg;
|
|
zaiCodingPlan?: BooleanArg;
|
|
kimiForCoding?: BooleanArg;
|
|
opencodeGo?: BooleanArg;
|
|
skipAuth?: boolean;
|
|
}
|
|
export interface InstallConfig {
|
|
hasClaude: boolean;
|
|
isMax20: boolean;
|
|
hasOpenAI: boolean;
|
|
hasGemini: boolean;
|
|
hasCopilot: boolean;
|
|
hasOpencodeZen: boolean;
|
|
hasZaiCodingPlan: boolean;
|
|
hasKimiForCoding: boolean;
|
|
hasOpencodeGo: boolean;
|
|
}
|
|
export interface ConfigMergeResult {
|
|
success: boolean;
|
|
configPath: string;
|
|
error?: string;
|
|
}
|
|
export interface DetectedConfig {
|
|
isInstalled: boolean;
|
|
hasClaude: boolean;
|
|
isMax20: boolean;
|
|
hasOpenAI: boolean;
|
|
hasGemini: boolean;
|
|
hasCopilot: boolean;
|
|
hasOpencodeZen: boolean;
|
|
hasZaiCodingPlan: boolean;
|
|
hasKimiForCoding: boolean;
|
|
hasOpencodeGo: boolean;
|
|
}
|