import { ensureRuntime, ensureText } from './helpers.js';
import { createEmbeddingModel, createImageModel, createLanguageModel, createSpeechModel, createTranscriptionModel, createVideoModel, } from './model-factories.js';
export function createNimiAiProvider(config) {
    const { runtime, defaults } = ensureRuntime(config);
    const provider = ((modelId) => createLanguageModel(runtime, defaults, ensureText(modelId, 'modelId')));
    provider.text = (modelId) => createLanguageModel(runtime, defaults, ensureText(modelId, 'modelId'));
    provider.embedding = (modelId) => createEmbeddingModel(runtime, defaults, ensureText(modelId, 'modelId'));
    provider.image = (modelId) => createImageModel(runtime, defaults, ensureText(modelId, 'modelId'));
    provider.video = (modelId) => createVideoModel(runtime, defaults, ensureText(modelId, 'modelId'));
    provider.tts = (modelId) => createSpeechModel(runtime, defaults, ensureText(modelId, 'modelId'));
    provider.stt = (modelId) => createTranscriptionModel(runtime, defaults, ensureText(modelId, 'modelId'));
    return provider;
}
//# sourceMappingURL=index.js.map