feat(coding-agent): replace model registry with model runtime
Move provider auth and OAuth flows onto pi-ai Models, compose models.json and extension overlays through ModelRuntime, and retain ModelRegistry as an extension compatibility facade.
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
import type { OAuthCredentials } from "../auth/types.ts";
|
||||
|
||||
/** Legacy extension OAuth prompt. */
|
||||
export interface OAuthPrompt {
|
||||
message: string;
|
||||
placeholder?: string;
|
||||
allowEmpty?: boolean;
|
||||
}
|
||||
|
||||
/** Legacy extension OAuth authorization link. */
|
||||
export interface OAuthAuthInfo {
|
||||
url: string;
|
||||
instructions?: string;
|
||||
}
|
||||
|
||||
/** Legacy extension OAuth device-code notification. */
|
||||
export interface OAuthDeviceCodeInfo {
|
||||
userCode: string;
|
||||
verificationUri: string;
|
||||
intervalSeconds?: number;
|
||||
expiresInSeconds?: number;
|
||||
}
|
||||
|
||||
export interface OAuthSelectOption {
|
||||
id: string;
|
||||
label: string;
|
||||
}
|
||||
|
||||
export interface OAuthSelectPrompt {
|
||||
message: string;
|
||||
options: OAuthSelectOption[];
|
||||
}
|
||||
|
||||
/** Callback surface retained only for coding-agent extension compatibility. */
|
||||
export interface OAuthLoginCallbacks {
|
||||
onAuth(info: OAuthAuthInfo): void;
|
||||
onDeviceCode(info: OAuthDeviceCodeInfo): void;
|
||||
onPrompt(prompt: OAuthPrompt): Promise<string>;
|
||||
onProgress?(message: string): void;
|
||||
onManualCodeInput?(): Promise<string>;
|
||||
onSelect(prompt: OAuthSelectPrompt): Promise<string | undefined>;
|
||||
signal?: AbortSignal;
|
||||
}
|
||||
|
||||
export type { OAuthCredentials };
|
||||
Reference in New Issue
Block a user