export type PlanName = 'free' | 'pro' | 'enterprise'; export interface PlanLimits { name: PlanName; monthlyMessages: number | 'unlimited'; monthlyBytes: number | 'unlimited'; } export interface LicenseConfig { apiKey?: string; persistUsagePath?: string; defaultPlan?: PlanName; } export interface UsageRecord { monthKey: string; messages: number; bytes: number; } export declare class LicenseManager { private config; private plan; private usage; private persistPath?; constructor(config?: LicenseConfig); getPlan(): PlanLimits; verifyApiKey(): boolean; private resolvePlan; private loadUsage; private saveUsage; resetIfNewMonth(): void; canConsume(deltaMessages: number, deltaBytes: number): { ok: boolean; reason?: string; }; record(deltaMessages: number, deltaBytes: number): void; } //# sourceMappingURL=licensing.d.ts.map