tau_agent_base/
subscription_usage.rs1use serde::{Deserialize, Serialize};
7
8pub fn is_oauth_token(key: &str) -> bool {
10 key.starts_with("sk-ant-oat")
11}
12
13#[derive(Debug, Clone, Serialize, Deserialize, Default)]
14pub struct UsageBucket {
15 pub utilization: Option<f64>,
16 pub resets_at: Option<String>,
17}
18
19#[derive(Debug, Clone, Serialize, Deserialize, Default)]
20pub struct ExtraUsage {
21 #[serde(default)]
22 pub is_enabled: bool,
23 pub monthly_limit: Option<f64>,
24 pub used_credits: Option<f64>,
25}
26
27#[derive(Debug, Clone, Serialize, Deserialize, Default)]
28pub struct SubscriptionUsage {
29 pub five_hour: Option<UsageBucket>,
30 pub seven_day: Option<UsageBucket>,
31 pub seven_day_sonnet: Option<UsageBucket>,
32 pub seven_day_opus: Option<UsageBucket>,
33 pub extra_usage: Option<ExtraUsage>,
34}