chore: import upstream snapshot with attribution
FreeBSD Smoke / FreeBSD Smoke (x86_64) (push) Has been cancelled
CI / Quality Guardrails (push) Has been cancelled
CI / Build & Test (macos-latest) (push) Has been cancelled
CI / Build & Test (ubuntu-latest) (push) Has been cancelled
CI / Build & Test (windows-latest) (push) Has been cancelled
CI / Format (push) Has been cancelled
CI / PowerShell Syntax (push) Has been cancelled
CI / Windows Cross-Target Check (Linux) (push) Has been cancelled

This commit is contained in:
wehub-resource-sync
2026-07-13 13:10:34 +08:00
commit a789495a98
1551 changed files with 718128 additions and 0 deletions
+9
View File
@@ -0,0 +1,9 @@
[package]
name = "jcode-ambient-types"
version = "0.1.0"
edition = "2024"
publish = false
[dependencies]
chrono = { version = "0.4", features = ["serde"] }
serde = { version = "1", features = ["derive"] }
+32
View File
@@ -0,0 +1,32 @@
use chrono::{DateTime, Utc};
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
pub enum UsageSource {
User,
Ambient,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct UsageRecord {
pub timestamp: DateTime<Utc>,
pub source: UsageSource,
pub tokens_input: u32,
pub tokens_output: u32,
pub provider: String,
}
impl UsageRecord {
pub fn total_tokens(&self) -> u64 {
self.tokens_input as u64 + self.tokens_output as u64
}
}
#[derive(Debug, Clone)]
pub struct RateLimitInfo {
pub limit_tokens: Option<u64>,
pub remaining_tokens: Option<u64>,
pub limit_requests: Option<u64>,
pub remaining_requests: Option<u64>,
pub reset_at: Option<DateTime<Utc>>,
}