require('./logger-CMp-NS-e.cjs');
require('./esm-gWVPXn3r.cjs');
require('./pythonUtils-rOCm9w_5.cjs');
require('./types-Cixl-wRO.cjs');
require('./util-CxWghxGa.cjs');
require('./fetch-E3xbPP9w.cjs');
require('./cache-PWdK7nbt.cjs');
require('./genaiTracer-zK0Mtd_D.cjs');
const require_chat = require('./chat-DKNIBnnw.cjs');
require('./transform-Bow1252l.cjs');
require('./openai-eZz8QsxY.cjs');
require('./util-Dqg4mr2c.cjs');

//#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 require_chat.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
exports.createQuiverAiProvider = createQuiverAiProvider;
//# sourceMappingURL=quiverai-QLaorfoo.cjs.map