/**
 * Message Builder Module
 *
 * Handles all message construction logic for AI providers.
 * Extracted from BaseProvider to follow Single Responsibility Principle.
 *
 * Responsibilities:
 * - Building messages from text generation options
 * - Building messages from stream options
 * - Multimodal input detection
 * - Message format conversion (to ModelMessage[])
 *
 * @module core/modules/MessageBuilder
 */
import type { ModelMessage } from "ai";
import type { AIProviderName, TextGenerationOptions, StreamOptions } from "../../types/index.js";
/**
 * MessageBuilder class - Handles message construction for AI providers
 */
export declare class MessageBuilder {
    private readonly providerName;
    private readonly modelName;
    constructor(providerName: AIProviderName, modelName: string);
    /**
     * Build messages array for generation
     * Detects multimodal input and routes to appropriate message builder
     */
    buildMessages(options: TextGenerationOptions): Promise<ModelMessage[]>;
    /**
     * Build messages array for streaming operations
     * This is a protected helper method that providers can use to build messages
     * with automatic multimodal detection, eliminating code duplication
     *
     * @param options - Stream options or text generation options
     * @returns Promise resolving to ModelMessage array ready for AI SDK
     */
    buildMessagesForStream(options: StreamOptions | TextGenerationOptions): Promise<ModelMessage[]>;
}
