"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getDefaultProviders = void 0;
const openai_1 = require("./openai");
const anthropic_1 = require("./anthropic");
function getDefaultProviders(env) {
    const preferAnthropic = !process.env.OPENAI_API_KEY &&
        !env?.OPENAI_API_KEY &&
        (process.env.ANTHROPIC_API_KEY || env?.ANTHROPIC_API_KEY);
    if (preferAnthropic) {
        return {
            embeddingProvider: openai_1.DefaultEmbeddingProvider, // TODO(ian): AnthropicEmbeddingProvider
            gradingProvider: anthropic_1.DefaultGradingProvider,
            gradingJsonProvider: anthropic_1.DefaultGradingJsonProvider,
            suggestionsProvider: anthropic_1.DefaultSuggestionsProvider,
            moderationProvider: openai_1.DefaultModerationProvider,
        };
    }
    return {
        embeddingProvider: openai_1.DefaultEmbeddingProvider,
        gradingProvider: openai_1.DefaultGradingProvider,
        gradingJsonProvider: openai_1.DefaultGradingJsonProvider,
        suggestionsProvider: openai_1.DefaultSuggestionsProvider,
        moderationProvider: openai_1.DefaultModerationProvider,
    };
}
exports.getDefaultProviders = getDefaultProviders;
//# sourceMappingURL=defaults.js.map