/**
 * Bedrock Message Mapper
 *
 * Converts NodeLLM messages to Bedrock Converse API format.
 * Handles system messages, tool calls, and content blocks.
 */
import { Message } from "../../chat/Message.js";
import { ToolDefinition } from "../../chat/Tool.js";
import { BedrockMessage, BedrockContentBlock, BedrockConverseRequest, BedrockToolConfig } from "./types.js";
import { ThinkingConfig } from "../../providers/Provider.js";
/**
 * Convert NodeLLM messages to Bedrock Converse format.
 * Extracts system messages to the top-level system field.
 */
export declare function convertMessages(messages: Message[]): {
    messages: BedrockMessage[];
    system?: BedrockContentBlock[];
};
/**
 * Convert NodeLLM tool definitions to Bedrock tool config.
 */
export declare function convertTools(tools?: ToolDefinition[]): BedrockToolConfig | undefined;
/**
 * Build a complete Bedrock Converse request from NodeLLM ChatRequest.
 */
export declare function buildConverseRequest(messages: Message[], tools?: ToolDefinition[], options?: {
    maxTokens?: number;
    temperature?: number;
    thinking?: ThinkingConfig;
    guardrail?: {
        guardrailIdentifier: string;
        guardrailVersion: string;
        trace?: "enabled" | "disabled";
    };
    additionalModelRequestFields?: Record<string, any>;
}): BedrockConverseRequest;
//# sourceMappingURL=mapper.d.ts.map