""" tokencalc — Genesys AI token cost & business case calculator core. Pure-Python, UI-agnostic. The JupyterLab notebook and the Streamlit app are thin presentation layers over these functions. """ from .benefit_model import calculate_total_benefit from .business_case import build_business_case, npv, payback_years from .cost_model import ( calculate_consumption_ai_cost, calculate_per_user_ai_cost, calculate_platform_license_cost, calculate_total_cost, ) from .defaults import ( CONTRACTED_NAMED_USERS, CTM_DEFAULT_FEATURE_SCOPES, CTM_DEFAULT_ROLLOUT, CTM_DEFAULT_SITES, CTM_DEFAULT_TAKEOUTS, DEFAULT_METERS, DEFAULT_PRICING, PLATFORM_RATE_PER_USER_MONTHLY, ) from .rollout import NO_ROLLOUT, RolloutPlan from .exports import ( export_csv, export_excel, meters_dataframe, scenario_state_from_json, scenario_state_to_json, sites_dataframe, ) from .inputs import CostTakeout, FeatureScope, SiteInput from .meters import Confidence, MeterType, TokenMeter, TokenPricing from .scenarios import BENEFIT_PARAMS, SCENARIOS, Scenario, get_scenario __version__ = "0.1.0" __all__ = [ "BENEFIT_PARAMS", "CONTRACTED_NAMED_USERS", "CTM_DEFAULT_FEATURE_SCOPES", "CTM_DEFAULT_ROLLOUT", "CTM_DEFAULT_SITES", "CTM_DEFAULT_TAKEOUTS", "Confidence", "CostTakeout", "DEFAULT_METERS", "DEFAULT_PRICING", "FeatureScope", "MeterType", "NO_ROLLOUT", "PLATFORM_RATE_PER_USER_MONTHLY", "RolloutPlan", "SCENARIOS", "Scenario", "SiteInput", "TokenMeter", "TokenPricing", "build_business_case", "calculate_consumption_ai_cost", "calculate_per_user_ai_cost", "calculate_platform_license_cost", "calculate_total_benefit", "calculate_total_cost", "export_csv", "export_excel", "get_scenario", "meters_dataframe", "npv", "payback_years", "scenario_state_from_json", "scenario_state_to_json", "sites_dataframe", ]