import type OpenAI from "openai"; import type { ChatCompletion } from "openai/resources/chat/completions"; import type { Message } from "@use-crux/core"; import type { NativeAssistantTurn, NativeAssistantReadContext } from "@use-crux/core/adapter"; /** OpenAI assistant turn data read from a chat-completion response. */ export type OpenAIAssistantTurn = NativeAssistantTurn; /** OpenAI provider transcript codec used by request builders and response normalization. */ export declare const openAITranscript: import("@use-crux/core/adapter").NativeTranscriptCodec; /** * Convert canonical Crux messages into OpenAI chat-completion messages. * * Uses the compiled {@link openAITranscript} codec shared by runtime calls. */ export declare function fromMessages(messages: readonly Message[]): OpenAI.ChatCompletionMessageParam[]; /** * Convert OpenAI chat messages back into canonical Crux messages. * * Uses the same {@link openAITranscript} decoder as runtime responses. */ export declare function toMessages(sdkMessages: readonly unknown[]): Message[]; /** Read assistant transcript text and tool-call intent from an OpenAI response. */ export declare function readOpenAIAssistant(result: ChatCompletion, context?: NativeAssistantReadContext): OpenAIAssistantTurn; /** * Parse an OpenAI tool-call `arguments` string into args, tolerating provider * quirks. Falls back to the raw string when it is empty or malformed JSON, so * generate and stream tool-call parsing produce identical args for the same * wire input. */ export declare function safeParseJson(str: string): unknown;