#!/usr/bin/env node
import "./chunk-DHDDz29n.js";
import "./logger-Bzi5o47S.js";
import "./fetch-CruohpfF.js";
import "./cloud-CZHXB86j.js";
import "./types-BjfZC_QB.js";
import "./cache-_erPRF2X.js";
import "./util-DhvhJDlT.js";
import "./esm-Bwuh5HXW.js";
import "./pythonUtils-mprm8p4h.js";
import "./genaiTracer-CqNnnXrE.js";
import { t as OpenAiChatCompletionProvider } from "./chat-Bvvgb30H.js";
import "./transform-DFkyOjQ7.js";
import "./openai-D_5h8sBa.js";
import "./util-ImmJ_Dxe.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-h9NdOMN2.js.map