import type { ExtensionAPI } from "@earendil-works/pi-coding-agent"; import type { Api, Context, Model } from "@earendil-works/pi-ai"; import type { CodexDiagnosticsSink, OpenAICodexStreamOptions, ResponsesBody } from "./openai-codex/types.ts"; import { type CodexTurnState } from "./openai-codex/turn-state.ts"; import { type CodexProviderRuntimeConfig } from "./openai-codex/transport-recovery.ts"; export { buildRequestBody } from "./openai-codex/request-body.ts"; export { parseSSE } from "./openai-codex/sse.ts"; export { buildCachedWebSocketRequestBody } from "./openai-codex/websocket-continuation.ts"; export { closeOpenAICodexWebSocketSessions } from "./openai-codex/websocket.ts"; export type { ResponsesBody } from "./openai-codex/types.ts"; export declare function prewarmOpenAICodexWebSocket(model: Model, context: Context, options: OpenAICodexStreamOptions, deps: { getConfig?: () => CodexProviderRuntimeConfig | undefined; useResponsesLite?: (model: Model) => boolean; turnState?: CodexTurnState | undefined; getDiagnostics?: (() => CodexDiagnosticsSink | undefined) | undefined; }): Promise; export declare function registerOpenAICodexCustomProvider(pi: ExtensionAPI, options: { getConfig?: () => CodexProviderRuntimeConfig | undefined; useResponsesLite?: (model: Model) => boolean; turnState?: CodexTurnState | undefined; onPreparedPayload?: ((payload: ResponsesBody) => void) | undefined; getDiagnostics?: (() => CodexDiagnosticsSink | undefined) | undefined; }): void;