import { Effect } from "effect"; export type ResponsesReasoningOwner = { provider: string; nativeModel: string; }; export type ResponsesReasoningInputPolicy = { mode: "drop"; } | { mode: "relay"; } | { mode: "forward"; owner: ResponsesReasoningOwner; /** Keep the RouteKit wrapper for a later Chat-to-Responses provider bridge. */ unwrap?: boolean; }; export type ParsedResponsesEncryptedContent = { owner: ResponsesReasoningOwner; ciphertext: string; }; export type PreparedResponsesReasoningInput
= { body: Body; dropped: number; }; /** Wrap provider-owned opaque reasoning without expanding the ciphertext itself. */ export declare function wrapResponsesEncryptedContent(ciphertext: string, owner: ResponsesReasoningOwner): string; /** Parse a RouteKit-owned encrypted-reasoning envelope. Raw provider ciphertext is ownerless. */ export declare function parseResponsesEncryptedContent(value: unknown): ParsedResponsesEncryptedContent | undefined; /** * Apply the destination policy to Responses input without mutating the request. * Incompatible reasoning items are removed while their assistant/tool carriers * remain in the portable transcript. */ export declare function prepareResponsesReasoningInput(body: Body, policy: ResponsesReasoningInputPolicy): PreparedResponsesReasoningInput; /** * Add ownership to encrypted reasoning emitted by a successful native * Responses call. Provider failures and unrelated response formats pass through. */ export declare function wrapResponsesReasoningResponse(response: Response, owner: ResponsesReasoningOwner, options?: { keepaliveMs?: number; }): Effect.Effect