/** * Codex Responses provider codec. Pure request/response translation between * OpenAI Chat Completions JSON and the OpenAI Responses API as Codex speaks * it, including SSE deltas. HTTP transport lives in `codex-responses-backend.ts`. * * This is the outbound provider path (gateway → Codex). The inbound Responses * adapter lives under `adapters/responses-codec.ts`. */ import { type ResponsesReasoningOwner } from "../adapters/openai-responses-wire.js"; import { type ChatBody } from "./backend-core.js"; import { type ProviderRecord } from "./protocol.js"; export declare class CodexResponsesTranslationError extends Error { readonly field: string; readonly code = "codex_responses_unmappable_chat_field"; constructor(field: string, message?: string); } export declare function responsesRequest(body: ChatBody, model: string, options: { forceStream: boolean; omitSampling: boolean; }): Record; export declare function codexReasoningModeError(body: ChatBody): string | undefined; export declare function codexReasoningOwner(model: string): ResponsesReasoningOwner; export declare const CODEX_EMPTY_RESPONSE_ERROR: { readonly message: "Codex completed without assistant content or tool calls"; readonly type: "upstream_empty_response"; }; export declare function codexCompletionResponse(model: string, payload: Record): Response; export declare function codexTerminalError(payload: unknown): Record; export type CodexStreamState = { hasToolCalls: boolean; hasAssistantContent: boolean; emittedText: Map; }; export declare function createCodexStreamState(): CodexStreamState; export declare function codexSseToChatChunks(event: string, item: ProviderRecord, model: string, state: CodexStreamState): unknown[]; export type CodexForceStreamState = { completedOutput: Map>; completedResponse?: Record; terminalFailure?: Record; }; export declare function createCodexForceStreamState(): CodexForceStreamState; export declare function applyCodexForceStreamEvent(eventType: unknown, record: ProviderRecord, state: CodexForceStreamState): void; export declare function codexForceStreamResponse(model: string, state: CodexForceStreamState): Response | undefined;