import type { Auth, Provider, Model } from "@opencode-ai/sdk"; export type { PluginConfigFromSchema as PluginConfig, AccountIdSourceFromSchema as AccountIdSource, TokenSuccessFromSchema as TokenSuccess, TokenFailureFromSchema as TokenFailure, TokenResultFromSchema as TokenResult, TokenFailureReasonFromSchema as TokenFailureReason, } from "./schemas.js"; export interface UserConfig { global: ConfigOptions; models: { [modelName: string]: { options?: ConfigOptions; variants?: Record; [key: string]: unknown; }; }; } export interface ConfigOptions { reasoningEffort?: "none" | "minimal" | "low" | "medium" | "high" | "xhigh"; reasoningSummary?: "auto" | "concise" | "detailed" | "off" | "on"; textVerbosity?: "low" | "medium" | "high"; include?: string[]; } export interface ReasoningConfig { effort: "none" | "minimal" | "low" | "medium" | "high" | "xhigh"; summary: "auto" | "concise" | "detailed"; } export interface OAuthServerInfo { port: number; ready: boolean; close: () => void; waitForCode: (state: string) => Promise<{ code: string; } | null>; } export interface PKCEPair { challenge: string; verifier: string; } export interface AuthorizationFlow { pkce: PKCEPair; state: string; url: string; } export interface ParsedAuthInput { code?: string; state?: string; } /** * JWT payload with ChatGPT account info */ export interface JWTPayload { "https://api.openai.com/auth"?: { chatgpt_account_id?: string; organizations?: unknown; email?: string; chatgpt_user_email?: string; }; organizations?: unknown; orgs?: unknown; accounts?: unknown; workspaces?: unknown; teams?: unknown; email?: string; preferred_username?: string; [key: string]: unknown; } /** * Message input item */ export interface InputItem { id?: string; type: string; role: string; content?: unknown; [key: string]: unknown; } /** * Request body structure */ export interface RequestBody { model: string; store?: boolean; stream?: boolean; instructions?: string; input?: InputItem[]; tools?: unknown; reasoning?: Partial; text?: { verbosity?: "low" | "medium" | "high"; }; include?: string[]; providerOptions?: { openai?: Partial & { store?: boolean; include?: string[]; }; [key: string]: unknown; }; /** Stable key to enable prompt-token caching on Codex backend */ prompt_cache_key?: string; max_output_tokens?: number; max_completion_tokens?: number; [key: string]: unknown; } /** * SSE event data structure */ export interface SSEEventData { type: string; response?: unknown; [key: string]: unknown; } /** * Cache metadata for Codex instructions */ export interface CacheMetadata { etag: string | null; tag: string; lastChecked: number; url: string; } /** * GitHub release data */ export interface GitHubRelease { tag_name: string; [key: string]: unknown; } export type { Auth, Provider, Model }; export type OAuthAuthDetails = Extract; //# sourceMappingURL=types.d.ts.map