import type { AIProviderName } from "../constants/enums.js";
import { BaseProvider } from "../core/baseProvider.js";
import type { EnhancedGenerateResult, NeurolinkCredentials, StreamOptions, StreamResult, TextGenerationOptions, ValidationSchema } from "../types/index.js";
import type { LanguageModel } from "../types/index.js";
/**
 * Recraft Provider — image generation with vector / illustration focus.
 *
 * Hits external.api.recraft.ai/v1/images/generations (OpenAI-compat
 * shape). Returns either url or b64_json; we convert URL → base64 for
 * the uniform imageOutput contract.
 *
 * @see https://www.recraft.ai/docs
 */
export declare class RecraftProvider extends BaseProvider {
    private readonly apiKey;
    private readonly baseURL;
    private readonly proxyFetch;
    constructor(modelName?: string, sdk?: unknown, _region?: string, credentials?: NeurolinkCredentials["recraft"]);
    protected getProviderName(): AIProviderName;
    protected getDefaultModel(): string;
    supportsTools(): boolean;
    protected getAISDKModel(): LanguageModel;
    protected executeStream(_options: StreamOptions, _analysisSchema?: ValidationSchema): Promise<StreamResult>;
    protected formatProviderError(error: unknown): Error;
    protected executeImageGeneration(options: TextGenerationOptions): Promise<EnhancedGenerateResult>;
    validateConfiguration(): Promise<boolean>;
    getConfiguration(): {
        provider: AIProviderName;
        model: string;
        defaultModel: string;
        baseURL: string;
    };
}
export default RecraftProvider;
