2025-08-04 22:16:26 +08:00
|
|
|
export interface Provider {
|
|
|
|
|
id: string
|
|
|
|
|
name: string
|
|
|
|
|
apiUrl: string
|
|
|
|
|
apiKey: string
|
|
|
|
|
model?: string
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export interface ProviderStatus {
|
|
|
|
|
isOnline: boolean
|
|
|
|
|
responseTime: number
|
|
|
|
|
lastChecked: Date
|
|
|
|
|
error?: string
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export interface AppConfig {
|
|
|
|
|
providers: Record<string, Provider>
|
|
|
|
|
current: string
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
declare global {
|
|
|
|
|
interface Window {
|
|
|
|
|
electronAPI: {
|
|
|
|
|
getProviders: () => Promise<Record<string, Provider>>
|
|
|
|
|
getCurrentProvider: () => Promise<string>
|
|
|
|
|
addProvider: (provider: Provider) => Promise<boolean>
|
|
|
|
|
deleteProvider: (id: string) => Promise<boolean>
|
2025-08-05 09:51:41 +08:00
|
|
|
updateProvider: (provider: Provider) => Promise<boolean>
|
2025-08-04 22:16:26 +08:00
|
|
|
checkStatus: (provider: Provider) => Promise<ProviderStatus>
|
|
|
|
|
switchProvider: (providerId: string) => Promise<boolean>
|
|
|
|
|
getClaudeCodeConfigPath: () => Promise<string>
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|