import { type LanguageModel } from "ai";
import type { AIProviderName } from "../constants/enums.js";
import { BaseProvider } from "../core/baseProvider.js";
import type { NeurolinkCredentials, StreamOptions, StreamResult, ValidationSchema } from "../types/index.js";
/**
 * Cloudflare Workers AI Provider
 *
 * Edge-served open models (Llama / Mistral / Qwen / Gemma) at
 * `https://api.cloudflare.com/client/v4/accounts/{accountId}/ai/v1`
 * (OpenAI-compatible). Cheapest tier for high-volume usage.
 *
 * Required env: `CLOUDFLARE_API_KEY` + `CLOUDFLARE_ACCOUNT_ID`.
 *
 * @see https://developers.cloudflare.com/workers-ai/configuration/open-ai-compatibility/
 */
export declare class CloudflareProvider extends BaseProvider {
    private model;
    private apiKey;
    private baseURL;
    constructor(modelName?: string, sdk?: unknown, _region?: string, credentials?: NeurolinkCredentials["cloudflare"]);
    protected executeStream(options: StreamOptions, _analysisSchema?: ValidationSchema): Promise<StreamResult>;
    private executeStreamInner;
    protected getProviderName(): AIProviderName;
    protected getDefaultModel(): string;
    protected getAISDKModel(): LanguageModel;
    protected formatProviderError(error: unknown): Error;
    validateConfiguration(): Promise<boolean>;
    getConfiguration(): {
        provider: AIProviderName;
        model: string;
        defaultModel: string;
        baseURL: string;
    };
}
export default CloudflareProvider;
