#!/usr/bin/env node
import "./chunk-BS0sO6YE.js";
import "./logger-BHK-IvoX.js";
import "./fetch-DosdWgS6.js";
import "./cloud-C9kfZ2hm.js";
import "./types-DEGWIbpc.js";
import "./cache-yJYq8tpE.js";
import "./util-DBUDMCjO.js";
import "./esm-Dvm9q3-2.js";
import "./pythonUtils-BPIMTFdP.js";
import "./genaiTracer-as_vZY-b.js";
import { t as OpenAiChatCompletionProvider } from "./chat-CCsVmcOt.js";
import "./transform-CqRcQELM.js";
import "./openai-D86NWRzF.js";
import "./util-D9m-bcmg.js";

//#region src/providers/quiverai.ts
const QUIVERAI_API_BASE_URL = "https://api.quiver.ai/v1";
/**
* QuiverAI chat provider extends OpenAI chat completion provider.
* QuiverAI's chat API is OpenAI-compatible and excels at SVG generation.
*/
var QuiverAiChatProvider = class extends OpenAiChatCompletionProvider {
	constructor(modelName, providerOptions = {}) {
		const config = providerOptions.config || {};
		super(modelName, {
			...providerOptions,
			config: {
				...config,
				apiBaseUrl: config.apiBaseUrl || QUIVERAI_API_BASE_URL,
				apiKeyEnvar: "QUIVERAI_API_KEY"
			}
		});
	}
	id() {
		return `quiverai:${this.modelName}`;
	}
	toString() {
		return `[QuiverAI Provider ${this.modelName}]`;
	}
	getApiUrlDefault() {
		return QUIVERAI_API_BASE_URL;
	}
};
function createQuiverAiProvider(providerPath, providerOptions = {}, env) {
	const splits = providerPath.split(":");
	const modelType = splits[1];
	const effectiveEnv = env || providerOptions.env;
	return new QuiverAiChatProvider((modelType === "chat" ? splits.slice(2) : splits.slice(1)).join(":") || "arrow-0.5", {
		...providerOptions,
		env: effectiveEnv
	});
}

//#endregion
export { createQuiverAiProvider };
//# sourceMappingURL=quiverai-BovvTlUo.js.map