import { Content } from '../types';
export declare class ContentBuilder {
    private contents;
    static create(): ContentBuilder;
    addTextMessage(text: string, role?: 'user' | 'model' | 'system'): ContentBuilder;
    addConversationTurn(userText: string, modelText: string): ContentBuilder;
    build(): Content[];
    clear(): ContentBuilder;
    getLastContent(): Content | undefined;
    removeLastContent(): ContentBuilder;
    static fromMessages(messages: Array<{
        role: 'user' | 'model' | 'system';
        text: string;
    }>): Content[];
    static textOnly(text: string, role?: 'user' | 'model' | 'system'): Content[];
}
export declare class FileEncoder {
    static encodeFileToBase64(file: File): Promise<string>;
    static encodeBufferToBase64(buffer: ArrayBuffer): Promise<string>;
    static getMimeTypeFromFile(file: File): string;
    static getMimeTypeFromExtension(filename: string): string;
}
export declare class MessageValidator {
    static validateContent(content: Content): void;
    static validateContents(contents: Content[]): void;
}
