import { MastraModelGateway } from './base.js';
import type { AttachmentCapabilities, GatewayLanguageModel, ProviderConfig, TemperatureCapabilities } from './base.js';
export declare class ModelsDevGateway extends MastraModelGateway {
    readonly id = "models.dev";
    readonly name = "models.dev";
    private providerConfigs;
    private attachmentCapabilities;
    private temperatureCapabilities;
    constructor(providerConfigs?: Record<string, ProviderConfig>);
    fetchProviders(): Promise<Record<string, ProviderConfig>>;
    /**
     * Return attachment capabilities collected during the last `fetchProviders()` call.
     * Maps provider ID → list of model IDs that support attachments.
     */
    getAttachmentCapabilities(): AttachmentCapabilities;
    getTemperatureCapabilities(): TemperatureCapabilities;
    buildUrl(routerId: string, envVars?: typeof process.env): string | undefined;
    getApiKey(modelId: string): Promise<string>;
    resolveLanguageModel({ modelId, providerId, apiKey, headers, }: {
        modelId: string;
        providerId: string;
        apiKey: string;
        headers?: Record<string, string>;
    }): Promise<GatewayLanguageModel>;
}
//# sourceMappingURL=models-dev.d.ts.map