/** * SaaS 多租户架构类型定义 * * 用户账户 → API Key → 配额限制 → 计费模型 */ /** 套餐计划 */ export type PlanTier = "free" | "starter" | "pro" | "enterprise"; /** 用户账户 */ export interface TenantAccount { id: string; email: string; name: string; plan: PlanTier; /** API Keys */ apiKeys: ApiKeyInfo[]; /** 创建时间 */ createdAt: string; /** 最后活跃 */ lastActiveAt: string; /** 状态 */ status: "active" | "suspended" | "deleted"; /** 自定义设置 */ settings: TenantSettings; } /** API Key */ export interface ApiKeyInfo { key: string; name: string; createdAt: string; lastUsedAt?: string; expiresAt?: string; permissions: ApiPermission[]; /** 速率限制覆盖 */ rateLimitOverride?: number; } /** API 权限 */ export type ApiPermission = "read" | "write" | "publish" | "admin" | "analytics" | "marketplace"; /** 租户设置 */ export interface TenantSettings { /** 默认 LLM 提供商 */ llmProvider?: string; /** 默认安全级别 */ safetyLevel?: "strict" | "moderate" | "loose"; /** 启用的平台 */ enabledPlatforms?: string[]; /** 自定义 Webhook URL */ webhookUrl?: string; /** 时区 */ timezone?: string; } /** 配额项 */ export type QuotaType = "api_calls" | "publishes" | "ai_tokens" | "storage_mb" | "skills" | "workflows" | "agents" | "scrapes"; /** 配额限制 */ export interface QuotaLimit { type: QuotaType; /** 每月配额 */ monthlyLimit: number; /** 当月已用 */ used: number; /** 重置时间 */ resetAt: string; } /** 套餐配额定义 */ export interface PlanQuotas { plan: PlanTier; quotas: Record; /** 价格(分/月) */ priceCents: number; /** 功能标志 */ features: string[]; } /** 用量记录 */ export interface UsageRecord { tenantId: string; type: QuotaType; amount: number; timestamp: string; metadata?: Record; } /** 月度账单 */ export interface MonthlyBill { tenantId: string; period: string; plan: PlanTier; basePriceCents: number; overageCharges: OverageCharge[]; totalCents: number; status: "pending" | "paid" | "overdue"; } /** 超额费用 */ export interface OverageCharge { type: QuotaType; overageAmount: number; unitPriceCents: number; totalCents: number; } export interface SaasConfig { /** 数据存储路径 */ dataPath: string; } //# sourceMappingURL=types.d.ts.map