import { EXCLUDED_GROUPS, QUOTA_TYPE_VALUES } from '../constants' import type { PricingModel } from '../types' // ---------------------------------------------------------------------------- // Model Helper Utilities // ---------------------------------------------------------------------------- /** * Get available groups for a model */ export function getAvailableGroups( model: PricingModel, usableGroup: Record ): string[] { const modelEnableGroups = Array.isArray(model.enable_groups) ? model.enable_groups : [] return Object.keys(usableGroup) .filter((g) => !EXCLUDED_GROUPS.includes(g)) .filter((g) => modelEnableGroups.includes(g)) } /** * Replace model placeholder in endpoint path */ export function replaceModelInPath(path: string, modelName: string): string { return path.replace(/\{model\}/g, modelName) } /** * Check if model is token-based pricing */ export function isTokenBasedModel(model: PricingModel): boolean { return model.quota_type === QUOTA_TYPE_VALUES.TOKEN }