File size: 809 Bytes
4e7af9b | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | import { api } from './client'
type AuthProvider = 'anthropic' | 'openai' | 'openrouter' | 'local' | 'opencode' | 'nvidia'
type CliAuthConfig = {
authProvider: AuthProvider | null
nvidiaApiKey?: string
openRouterApiKey?: string
openAiApiKey?: string
openAiAccessToken?: string
openCodeApiKey?: string
openCodeModelName?: string
localBaseUrl?: string
localModelName?: string
}
export type { AuthProvider, CliAuthConfig }
export const cliAuthApi = {
get(): Promise<CliAuthConfig> {
return api.get<CliAuthConfig>('/api/cli-auth')
},
update(config: Partial<CliAuthConfig>): Promise<{ ok: true }> {
return api.put<{ ok: true }>('/api/cli-auth', config)
},
invalidateCache(): Promise<{ ok: true }> {
return api.post<{ ok: true }>('/api/cli-auth/invalidate', {})
},
}
|