@nehorai/credits 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/README.md +153 -0
  2. package/dist/adapters/generic.d.ts +1 -1
  3. package/dist/adapters/generic.d.ts.map +1 -1
  4. package/dist/adapters/generic.js +1 -1
  5. package/dist/adapters/generic.js.map +1 -1
  6. package/dist/adapters/index.d.ts +2 -2
  7. package/dist/adapters/index.d.ts.map +1 -1
  8. package/dist/adapters/index.js +1 -1
  9. package/dist/adapters/index.js.map +1 -1
  10. package/dist/adapters/types.d.ts +4 -4
  11. package/dist/adapters/types.d.ts.map +1 -1
  12. package/dist/auth/api-key.d.ts +1 -1
  13. package/dist/auth/api-key.d.ts.map +1 -1
  14. package/dist/auth/index.d.ts +2 -2
  15. package/dist/auth/index.d.ts.map +1 -1
  16. package/dist/auth/index.js +1 -1
  17. package/dist/auth/index.js.map +1 -1
  18. package/dist/config/costs.d.ts +2 -2
  19. package/dist/config/costs.d.ts.map +1 -1
  20. package/dist/config/costs.js +1 -1
  21. package/dist/config/costs.js.map +1 -1
  22. package/dist/config/index.d.ts +1 -1
  23. package/dist/config/index.d.ts.map +1 -1
  24. package/dist/core/index.d.ts +7 -7
  25. package/dist/core/index.d.ts.map +1 -1
  26. package/dist/core/index.js +4 -4
  27. package/dist/core/index.js.map +1 -1
  28. package/dist/core/operations.d.ts +2 -2
  29. package/dist/core/operations.d.ts.map +1 -1
  30. package/dist/index.d.ts +18 -18
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +15 -15
  33. package/dist/index.js.map +1 -1
  34. package/dist/notifications/index.js +1 -1
  35. package/dist/notifications/index.js.map +1 -1
  36. package/dist/repository/index.d.ts +4 -4
  37. package/dist/repository/index.d.ts.map +1 -1
  38. package/dist/repository/index.js +3 -3
  39. package/dist/repository/index.js.map +1 -1
  40. package/dist/repository/memory/index.d.ts +2 -2
  41. package/dist/repository/memory/index.d.ts.map +1 -1
  42. package/dist/repository/memory/index.js +2 -2
  43. package/dist/repository/memory/index.js.map +1 -1
  44. package/dist/repository/types.d.ts +1 -1
  45. package/dist/repository/types.d.ts.map +1 -1
  46. package/dist/sdk/admin-client.d.ts +1 -1
  47. package/dist/sdk/admin-client.d.ts.map +1 -1
  48. package/dist/sdk/admin-client.js +1 -1
  49. package/dist/sdk/admin-client.js.map +1 -1
  50. package/dist/sdk/client.d.ts +1 -1
  51. package/dist/sdk/client.d.ts.map +1 -1
  52. package/dist/sdk/client.js +1 -1
  53. package/dist/sdk/client.js.map +1 -1
  54. package/dist/sdk/errors.d.ts +1 -1
  55. package/dist/sdk/errors.d.ts.map +1 -1
  56. package/dist/sdk/errors.js +1 -1
  57. package/dist/sdk/errors.js.map +1 -1
  58. package/dist/sdk/index.d.ts +6 -6
  59. package/dist/sdk/index.d.ts.map +1 -1
  60. package/dist/sdk/index.js +4 -4
  61. package/dist/sdk/index.js.map +1 -1
  62. package/dist/sdk/types.d.ts +1 -1
  63. package/dist/sdk/types.d.ts.map +1 -1
  64. package/dist/service/credits-service.d.ts +2 -2
  65. package/dist/service/credits-service.d.ts.map +1 -1
  66. package/dist/service/credits-service.js +3 -3
  67. package/dist/service/credits-service.js.map +1 -1
  68. package/dist/service/index.d.ts +2 -2
  69. package/dist/service/index.d.ts.map +1 -1
  70. package/dist/service/index.js +1 -1
  71. package/dist/service/index.js.map +1 -1
  72. package/dist/utils/index.d.ts +2 -2
  73. package/dist/utils/index.d.ts.map +1 -1
  74. package/dist/utils/index.js +1 -1
  75. package/dist/utils/index.js.map +1 -1
  76. package/package.json +1 -1
package/README.md ADDED
@@ -0,0 +1,153 @@
1
+ # @nehorai/credits
2
+
3
+ Framework-agnostic credits and billing system with two-phase commit for safe credit operations.
4
+
5
+ ## Features
6
+
7
+ - **Two-phase commit** -- Reserve credits before executing operations, then commit or release
8
+ - **Journal-based audit trail** -- Every credit change is logged with source, reference, and metadata
9
+ - **Subscription tier management** -- Free, basic, premium, and unlimited tiers with monthly resets
10
+ - **Notification hooks** -- Low balance and subscription expiry notifications
11
+ - **REST API SDK** -- Client and admin SDK for external integrations
12
+ - **In-memory repository** -- Included for testing and development
13
+ - **Type-safe** -- Full TypeScript with portable types (no framework dependencies)
14
+
15
+ ## Installation
16
+
17
+ ```bash
18
+ pnpm add @nehorai/credits
19
+ ```
20
+
21
+ ## Quick Start
22
+
23
+ ```typescript
24
+ import {
25
+ CreditsService,
26
+ createInMemoryCreditRepository,
27
+ } from "@nehorai/credits";
28
+
29
+ const repository = createInMemoryCreditRepository();
30
+ const service = new CreditsService(repository);
31
+
32
+ // Initialize a user with free tier
33
+ await service.initializeUserCredits("user-123");
34
+
35
+ // Check if user has enough credits
36
+ const check = await service.checkCredits("user-123", 10);
37
+ if (!check.hasCredits) {
38
+ console.log(`Need ${check.shortfall} more credits`);
39
+ }
40
+
41
+ // Reserve-Execute-Commit pattern
42
+ const reservation = await service.reserveCredits("user-123", 10, "story_generation");
43
+ try {
44
+ await doExpensiveWork();
45
+ await service.commitCredits("user-123", reservation.id); // Deducts credits
46
+ } catch (error) {
47
+ await service.releaseCredits("user-123", reservation.id); // Refunds credits
48
+ throw error;
49
+ }
50
+ ```
51
+
52
+ ## API Reference
53
+
54
+ ### `CreditsService`
55
+
56
+ The main service class. Accepts any `ICreditRepository` implementation.
57
+
58
+ | Method | Description |
59
+ |--------|-------------|
60
+ | `getUserCredits(userId)` | Get user balance (auto-handles monthly reset and subscription expiry) |
61
+ | `initializeUserCredits(userId)` | Create a new user with free tier |
62
+ | `getOrCreateUserCredits(userId)` | Get or initialize user credits |
63
+ | `checkCredits(userId, amount)` | Check if user has sufficient credits |
64
+ | `reserveCredits(userId, amount, operationType)` | Reserve credits (phase 1) |
65
+ | `commitCredits(userId, reservationId)` | Commit reservation (phase 2 -- success) |
66
+ | `releaseCredits(userId, reservationId)` | Release reservation (phase 2 -- failure) |
67
+ | `addCredits(userId, amount, description)` | Add credits (purchases, bonuses) |
68
+ | `updateTier(userId, tier, expiresAt?)` | Change subscription tier |
69
+ | `getUsageHistory(userId, limit?, offset?)` | Paginated usage history |
70
+ | `logUsage(log)` | Log a usage event for auditing |
71
+
72
+ ### `ICreditRepository`
73
+
74
+ Interface for database implementations. Implement this to use any database backend.
75
+
76
+ Key methods: `getUserCredits`, `initializeUserCredits`, `reserveCreditsAtomic`, `commitReservationAtomic`, `releaseReservationAtomic`, `addCreditsAtomic`, `atomicMonthlyReset`, `createJournalEntry`, `findAndExpireReservations`.
77
+
78
+ ### `InMemoryCreditRepository`
79
+
80
+ In-memory implementation of `ICreditRepository` for testing:
81
+
82
+ ```typescript
83
+ import { createInMemoryCreditRepository } from "@nehorai/credits";
84
+
85
+ const repo = createInMemoryCreditRepository();
86
+ ```
87
+
88
+ ### Error Handling
89
+
90
+ ```typescript
91
+ import { CreditError, isCreditError, CreditErrorCode } from "@nehorai/credits";
92
+
93
+ try {
94
+ await service.reserveCredits(userId, 100, "expensive_op");
95
+ } catch (error) {
96
+ if (isCreditError(error) && error.code === CreditErrorCode.INSUFFICIENT_CREDITS) {
97
+ // Handle insufficient credits
98
+ }
99
+ }
100
+ ```
101
+
102
+ ### SDK Clients
103
+
104
+ REST API clients for external integrations:
105
+
106
+ ```typescript
107
+ import { CreditsClient, AdminCreditsClient } from "@nehorai/credits";
108
+
109
+ // User-facing client
110
+ const client = new CreditsClient({ baseUrl: "/api/v1/credits", getToken });
111
+
112
+ // Admin client
113
+ const admin = new AdminCreditsClient({ baseUrl: "/api/v1/admin", getToken });
114
+ ```
115
+
116
+ ### Core Types
117
+
118
+ | Type | Description |
119
+ |------|-------------|
120
+ | `PortableUserCredits` | User balance with tier, monthly limits, timestamps |
121
+ | `PortableReservation` | Credit reservation for two-phase commit |
122
+ | `PortableTransaction` | Purchase/refund transaction record |
123
+ | `PortableJournalEntry` | Audit trail entry |
124
+ | `PortableUsageLog` | Operation usage log |
125
+ | `CreditCheckResult` | Result of credit sufficiency check |
126
+ | `SubscriptionTier` | `"free" \| "basic" \| "premium" \| "unlimited"` |
127
+ | `WithCreditsOptions` | Options for the `withCredits` HOF |
128
+
129
+ ### Sub-path Exports
130
+
131
+ ```typescript
132
+ import { ... } from "@nehorai/credits/core"; // Core types and errors
133
+ import { ... } from "@nehorai/credits/repository"; // Repository types and in-memory impl
134
+ import { ... } from "@nehorai/credits/auth"; // Auth provider types
135
+ import { ... } from "@nehorai/credits/service"; // CreditsService
136
+ import { ... } from "@nehorai/credits/adapters"; // Adapter types
137
+ import { ... } from "@nehorai/credits/sdk"; // REST API clients
138
+ ```
139
+
140
+ ## Related Packages
141
+
142
+ | Package | Description |
143
+ |---------|-------------|
144
+ | [`@nehorai/credits-firestore`](https://www.npmjs.com/package/@nehorai/credits-firestore) | Firestore implementation of `ICreditRepository` |
145
+ | [`@nehorai/credits-nextjs`](https://www.npmjs.com/package/@nehorai/credits-nextjs) | Next.js adapter with NextAuth integration |
146
+
147
+ ## Repository
148
+
149
+ [https://github.com/NehoraiHadad/nehorai-plugins](https://github.com/NehoraiHadad/nehorai-plugins)
150
+
151
+ ## License
152
+
153
+ MIT
@@ -4,7 +4,7 @@
4
4
  * This adapter uses standard JavaScript APIs and works in any
5
5
  * JavaScript environment (Node.js, browser, etc.).
6
6
  */
7
- import type { CreditsAdapter, CreditsAdapterConfig } from "./types";
7
+ import type { CreditsAdapter, CreditsAdapterConfig } from "./types.js";
8
8
  /**
9
9
  * Create a generic credits adapter
10
10
  *
@@ -1 +1 @@
1
- {"version":3,"file":"generic.d.ts","sourceRoot":"","sources":["../../src/adapters/generic.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAgB,cAAc,EAAE,oBAAoB,EAAuB,MAAM,SAAS,CAAC;AAgBvG;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,oBAAoB,GAAG,cAAc,CAgIjF"}
1
+ {"version":3,"file":"generic.d.ts","sourceRoot":"","sources":["../../src/adapters/generic.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAgB,cAAc,EAAE,oBAAoB,EAAuB,MAAM,YAAY,CAAC;AAgB1G;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,oBAAoB,GAAG,cAAc,CAgIjF"}
@@ -4,7 +4,7 @@
4
4
  * This adapter uses standard JavaScript APIs and works in any
5
5
  * JavaScript environment (Node.js, browser, etc.).
6
6
  */
7
- import { commitReservationWithJournal, releaseReservationWithJournal, reserveCreditsForOperation, } from "../core/operations";
7
+ import { commitReservationWithJournal, releaseReservationWithJournal, reserveCreditsForOperation, } from "../core/operations.js";
8
8
  /**
9
9
  * Generate a unique request ID
10
10
  */
@@ -1 +1 @@
1
- {"version":3,"file":"generic.js","sourceRoot":"","sources":["../../src/adapters/generic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generic.js","sourceRoot":"","sources":["../../src/adapters/generic.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- export type { ActionResult, CreditActionHandler, CreditsAdapterConfig, CreditsAdapter, } from "./types";
2
- export { createGenericAdapter } from "./generic";
1
+ export type { ActionResult, CreditActionHandler, CreditsAdapterConfig, CreditsAdapter, } from "./types.js";
2
+ export { createGenericAdapter } from "./generic.js";
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,GACf,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,GACf,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC"}
@@ -1,2 +1,2 @@
1
- export { createGenericAdapter } from "./generic";
1
+ export { createGenericAdapter } from "./generic.js";
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC"}
@@ -4,10 +4,10 @@
4
4
  * Defines the interface for framework-specific adapters that wrap
5
5
  * credit operations with different execution strategies.
6
6
  */
7
- import type { PortableReservation, WithCreditsOptions } from "../core/types";
8
- import type { CreditsUser, ICreditsAuthProvider } from "../auth/types";
9
- import type { ICreditRepository } from "../repository/types";
10
- import type { DeferredExecutor } from "../core";
7
+ import type { PortableReservation, WithCreditsOptions } from "../core/types.js";
8
+ import type { CreditsUser, ICreditsAuthProvider } from "../auth/types.js";
9
+ import type { ICreditRepository } from "../repository/types.js";
10
+ import type { DeferredExecutor } from "../core/index.js";
11
11
  /**
12
12
  * Generic action result type
13
13
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/adapters/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAC7E,OAAO,KAAK,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,MAAM,mBAAmB,CAAC,MAAM,EAAE,OAAO,IAAI,CACjD,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,mBAAmB,KAC7B,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;AAEpC;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,uCAAuC;IACvC,UAAU,EAAE,iBAAiB,CAAC;IAC9B,4CAA4C;IAC5C,YAAY,EAAE,oBAAoB,CAAC;IACnC,6CAA6C;IAC7C,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,kCAAkC;IAClC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACxC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,OAAO,EACzB,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5C,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;CACrD"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/adapters/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAChF,OAAO,KAAK,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,MAAM,mBAAmB,CAAC,MAAM,EAAE,OAAO,IAAI,CACjD,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,mBAAmB,KAC7B,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;AAEpC;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,uCAAuC;IACvC,UAAU,EAAE,iBAAiB,CAAC;IAC9B,4CAA4C;IAC5C,YAAY,EAAE,oBAAoB,CAAC;IACnC,6CAA6C;IAC7C,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,kCAAkC;IAClC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACxC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,OAAO,EACzB,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5C,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;CACrD"}
@@ -1,4 +1,4 @@
1
- import type { ICreditsAuthProvider, CreditsUser } from "./types";
1
+ import type { ICreditsAuthProvider, CreditsUser } from "./types.js";
2
2
  /**
3
3
  * Verify a Bearer token from an Authorization header
4
4
  *
@@ -1 +1 @@
1
- {"version":3,"file":"api-key.d.ts","sourceRoot":"","sources":["../../src/auth/api-key.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAwBjE;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAUhF;AAED;;;;;GAKG;AACH,qBAAa,qBAAsB,YAAW,oBAAoB;IAChE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,WAAW,CAAS;gBAEhB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM;IASjD,cAAc,IAAI,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAa7C,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;CAG5C;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAarF;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,qBAAqB,CAG7F"}
1
+ {"version":3,"file":"api-key.d.ts","sourceRoot":"","sources":["../../src/auth/api-key.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAwBpE;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAUhF;AAED;;;;;GAKG;AACH,qBAAa,qBAAsB,YAAW,oBAAoB;IAChE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,WAAW,CAAS;gBAEhB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM;IASjD,cAAc,IAAI,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAa7C,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;CAG5C;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAarF;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,qBAAqB,CAG7F"}
@@ -3,6 +3,6 @@
3
3
  *
4
4
  * Provides authentication abstraction for credits system
5
5
  */
6
- export type { ICreditsAuthProvider, CreditsAuthProviderFactory, CreditsUser, } from "./types";
7
- export { ApiKeyCreditsProvider, verifyAdminApiKey, createApiKeyProvider, verifyBearerToken, } from "./api-key";
6
+ export type { ICreditsAuthProvider, CreditsAuthProviderFactory, CreditsUser, } from "./types.js";
7
+ export { ApiKeyCreditsProvider, verifyAdminApiKey, createApiKeyProvider, verifyBearerToken, } from "./api-key.js";
8
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,YAAY,EACV,oBAAoB,EACpB,0BAA0B,EAC1B,WAAW,GACZ,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,YAAY,EACV,oBAAoB,EACpB,0BAA0B,EAC1B,WAAW,GACZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,cAAc,CAAC"}
@@ -4,5 +4,5 @@
4
4
  * Provides authentication abstraction for credits system
5
5
  */
6
6
  // API Key implementation (for admin routes)
7
- export { ApiKeyCreditsProvider, verifyAdminApiKey, createApiKeyProvider, verifyBearerToken, } from "./api-key";
7
+ export { ApiKeyCreditsProvider, verifyAdminApiKey, createApiKeyProvider, verifyBearerToken, } from "./api-key.js";
8
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,4CAA4C;AAC5C,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/auth/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,4CAA4C;AAC5C,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,cAAc,CAAC"}
@@ -1,5 +1,5 @@
1
- import type { SubscriptionTier, TierConfig } from "../core/types";
2
- import { getValidOperationTypes, isValidOperationType } from "./index";
1
+ import type { SubscriptionTier, TierConfig } from "../core/types.js";
2
+ import { getValidOperationTypes, isValidOperationType } from "./index.js";
3
3
  /**
4
4
  * Get operation costs as a record
5
5
  * Returns all configured operation costs from the current config
@@ -1 +1 @@
1
- {"version":3,"file":"costs.d.ts","sourceRoot":"","sources":["../../src/config/costs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAClE,OAAO,EAKL,sBAAsB,EACtB,oBAAoB,EACrB,MAAM,SAAS,CAAC;AAEjB;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAE1D;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAErD;AAGD,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,CAAC;AAExD;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,gBAAgB,EAAE,UAAU,CAa7D,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,gBAAgB,GAAG,UAAU,CAEhE;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,CAE9D;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED;;;GAGG;AACH,eAAO,MAAM,qBAAqB,QAAgB,CAAC;AAEnD;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C"}
1
+ {"version":3,"file":"costs.d.ts","sourceRoot":"","sources":["../../src/config/costs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAKL,sBAAsB,EACtB,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAEpB;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAE1D;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAErD;AAGD,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,CAAC;AAExD;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,gBAAgB,EAAE,UAAU,CAa7D,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,gBAAgB,GAAG,UAAU,CAEhE;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,CAE9D;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED;;;GAGG;AACH,eAAO,MAAM,qBAAqB,QAAgB,CAAC;AAEnD;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C"}
@@ -1,4 +1,4 @@
1
- import { getConfig, getConfigOperationCost, getConfigTierConfig, getConfigMonthlyLimit, getValidOperationTypes, isValidOperationType, } from "./index";
1
+ import { getConfig, getConfigOperationCost, getConfigTierConfig, getConfigMonthlyLimit, getValidOperationTypes, isValidOperationType, } from "./index.js";
2
2
  /**
3
3
  * Get operation costs as a record
4
4
  * Returns all configured operation costs from the current config
@@ -1 +1 @@
1
- {"version":3,"file":"costs.js","sourceRoot":"","sources":["../../src/config/costs.ts"],"names":[],"mappings":"AACA,OAAO,EACL,SAAS,EACT,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,SAAS,CAAC;AAEjB;;;GAGG;AACH,MAAM,UAAU,iBAAiB;IAC/B,OAAO,EAAE,GAAG,SAAS,EAAE,CAAC,cAAc,EAAE,CAAC;AAC3C,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,OAAO,sBAAsB,CAAC,IAAI,CAAC,CAAC;AACtC,CAAC;AAED,+CAA+C;AAC/C,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,CAAC;AAExD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAAyC;IAChE,IAAI,IAAI;QACN,OAAO,SAAS,EAAE,CAAC,WAAW,CAAC,IAAK,CAAC;IACvC,CAAC;IACD,IAAI,KAAK;QACP,OAAO,SAAS,EAAE,CAAC,WAAW,CAAC,KAAM,CAAC;IACxC,CAAC;IACD,IAAI,OAAO;QACT,OAAO,SAAS,EAAE,CAAC,WAAW,CAAC,OAAQ,CAAC;IAC1C,CAAC;IACD,IAAI,SAAS;QACX,OAAO,SAAS,EAAE,CAAC,WAAW,CAAC,SAAU,CAAC;IAC5C,CAAC;CACF,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,IAAsB;IAClD,OAAO,mBAAmB,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAAC,IAAsB;IACpD,OAAO,qBAAqB,CAAC,IAAI,CAAC,CAAC;AACrC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC,CAAC,oEAAoE;AAE5G;;GAEG;AACH,MAAM,UAAU,qBAAqB;IACnC,OAAO,SAAS,EAAE,CAAC,kBAAkB,CAAC;AACxC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,kBAAkB;AAEtE;;GAEG;AACH,MAAM,UAAU,sBAAsB;IACpC,OAAO,SAAS,EAAE,CAAC,mBAAmB,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"costs.js","sourceRoot":"","sources":["../../src/config/costs.ts"],"names":[],"mappings":"AACA,OAAO,EACL,SAAS,EACT,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAEpB;;;GAGG;AACH,MAAM,UAAU,iBAAiB;IAC/B,OAAO,EAAE,GAAG,SAAS,EAAE,CAAC,cAAc,EAAE,CAAC;AAC3C,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,OAAO,sBAAsB,CAAC,IAAI,CAAC,CAAC;AACtC,CAAC;AAED,+CAA+C;AAC/C,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,CAAC;AAExD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAAyC;IAChE,IAAI,IAAI;QACN,OAAO,SAAS,EAAE,CAAC,WAAW,CAAC,IAAK,CAAC;IACvC,CAAC;IACD,IAAI,KAAK;QACP,OAAO,SAAS,EAAE,CAAC,WAAW,CAAC,KAAM,CAAC;IACxC,CAAC;IACD,IAAI,OAAO;QACT,OAAO,SAAS,EAAE,CAAC,WAAW,CAAC,OAAQ,CAAC;IAC1C,CAAC;IACD,IAAI,SAAS;QACX,OAAO,SAAS,EAAE,CAAC,WAAW,CAAC,SAAU,CAAC;IAC5C,CAAC;CACF,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,IAAsB;IAClD,OAAO,mBAAmB,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAAC,IAAsB;IACpD,OAAO,qBAAqB,CAAC,IAAI,CAAC,CAAC;AACrC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC,CAAC,oEAAoE;AAE5G;;GAEG;AACH,MAAM,UAAU,qBAAqB;IACnC,OAAO,SAAS,EAAE,CAAC,kBAAkB,CAAC;AACxC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,kBAAkB;AAEtE;;GAEG;AACH,MAAM,UAAU,sBAAsB;IACpC,OAAO,SAAS,EAAE,CAAC,mBAAmB,CAAC;AACzC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { z } from "zod";
2
- import type { SubscriptionTier, TierConfig } from "../core/types";
2
+ import type { SubscriptionTier, TierConfig } from "../core/types.js";
3
3
  /**
4
4
  * Schema for credit system configuration
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAYlE;;GAEG;AACH,QAAA,MAAM,wBAAwB;IAC5B;;;;OAIG;;IAMH;;OAEG;;;;;;;;;;;;;;;;;IAMH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYH,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AA6E1E;;;;;;GAMG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAuD/D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB,CAiC5F;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,kBAAkB,CAE9C;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,EAAE,CAEjD;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAQpE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,gBAAgB,GAAG,UAAU,CAEtE;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,CAGpE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,kBAAkB,CAAC,UAAU,CAAC,GAAG,OAAO,CAEvF;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAElC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAYrE;;GAEG;AACH,QAAA,MAAM,wBAAwB;IAC5B;;;;OAIG;;IAMH;;OAEG;;;;;;;;;;;;;;;;;IAMH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYH,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AA6E1E;;;;;;GAMG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAuD/D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB,CAiC5F;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,kBAAkB,CAE9C;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,EAAE,CAEjD;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAQpE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,gBAAgB,GAAG,UAAU,CAEtE;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,CAGpE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,kBAAkB,CAAC,UAAU,CAAC,GAAG,OAAO,CAEvF;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAElC"}
@@ -19,11 +19,11 @@
19
19
  * } from '@nehorai/credits/core';
20
20
  * ```
21
21
  */
22
- export type { SubscriptionTier, CreditOperationType, AIProviderType, ResourceType, ReservationStatus, TransactionType, CreditSource, JournalReferenceType, PortableUserCredits, PortableReservation, PortableTransaction, PortableJournalEntry, PortableUsageLog, CreditCheckResult, MonthlyResetResult, SubscriptionExpiryResult, UsageHistoryEntry, UsageHistoryResponse, TierConfig, WithCreditsOptions, } from "./types";
23
- export { calculateAvailableCredits, toPortableTimestamp, toDate, CREDIT_CONSTANTS, } from "./types";
24
- export type { CreditErrorCodeType } from "./errors";
25
- export { CreditError, CreditErrorCode, isCreditError, isInsufficientCreditsError, createInsufficientCreditsError, createReservationNotFoundError, createReservationExpiredError, createReservationAlreadyProcessedError, createUserNotFoundError, createInvalidOperationTypeError, } from "./errors";
26
- export type { DeferredExecutor } from "./deferred";
27
- export { genericDeferred, synchronousDeferred, noopDeferred, createDeferredExecutor, } from "./deferred";
28
- export { commitReservationWithJournal, releaseReservationWithJournal, reserveCreditsForOperation, } from "./operations";
22
+ export type { SubscriptionTier, CreditOperationType, AIProviderType, ResourceType, ReservationStatus, TransactionType, CreditSource, JournalReferenceType, PortableUserCredits, PortableReservation, PortableTransaction, PortableJournalEntry, PortableUsageLog, CreditCheckResult, MonthlyResetResult, SubscriptionExpiryResult, UsageHistoryEntry, UsageHistoryResponse, TierConfig, WithCreditsOptions, } from "./types.js";
23
+ export { calculateAvailableCredits, toPortableTimestamp, toDate, CREDIT_CONSTANTS, } from "./types.js";
24
+ export type { CreditErrorCodeType } from "./errors.js";
25
+ export { CreditError, CreditErrorCode, isCreditError, isInsufficientCreditsError, createInsufficientCreditsError, createReservationNotFoundError, createReservationExpiredError, createReservationAlreadyProcessedError, createUserNotFoundError, createInvalidOperationTypeError, } from "./errors.js";
26
+ export type { DeferredExecutor } from "./deferred.js";
27
+ export { genericDeferred, synchronousDeferred, noopDeferred, createDeferredExecutor, } from "./deferred.js";
28
+ export { commitReservationWithJournal, releaseReservationWithJournal, reserveCreditsForOperation, } from "./operations.js";
29
29
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,YAAY,EACV,gBAAgB,EAChB,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,YAAY,EACZ,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,EACjB,oBAAoB,EACpB,UAAU,EACV,kBAAkB,GACnB,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,MAAM,EACN,gBAAgB,GACjB,MAAM,SAAS,CAAC;AAGjB,YAAY,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAEpD,OAAO,EACL,WAAW,EACX,eAAe,EACf,aAAa,EACb,0BAA0B,EAC1B,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC7B,sCAAsC,EACtC,uBAAuB,EACvB,+BAA+B,GAChC,MAAM,UAAU,CAAC;AAGlB,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,EAC7B,0BAA0B,GAC3B,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,YAAY,EACV,gBAAgB,EAChB,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,YAAY,EACZ,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,EACjB,oBAAoB,EACpB,UAAU,EACV,kBAAkB,GACnB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,MAAM,EACN,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAGpB,YAAY,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD,OAAO,EACL,WAAW,EACX,eAAe,EACf,aAAa,EACb,0BAA0B,EAC1B,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC7B,sCAAsC,EACtC,uBAAuB,EACvB,+BAA+B,GAChC,MAAM,aAAa,CAAC;AAGrB,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,sBAAsB,GACvB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,EAC7B,0BAA0B,GAC3B,MAAM,iBAAiB,CAAC"}
@@ -20,9 +20,9 @@
20
20
  * ```
21
21
  */
22
22
  // ==================== Type Utilities ====================
23
- export { calculateAvailableCredits, toPortableTimestamp, toDate, CREDIT_CONSTANTS, } from "./types";
24
- export { CreditError, CreditErrorCode, isCreditError, isInsufficientCreditsError, createInsufficientCreditsError, createReservationNotFoundError, createReservationExpiredError, createReservationAlreadyProcessedError, createUserNotFoundError, createInvalidOperationTypeError, } from "./errors";
25
- export { genericDeferred, synchronousDeferred, noopDeferred, createDeferredExecutor, } from "./deferred";
23
+ export { calculateAvailableCredits, toPortableTimestamp, toDate, CREDIT_CONSTANTS, } from "./types.js";
24
+ export { CreditError, CreditErrorCode, isCreditError, isInsufficientCreditsError, createInsufficientCreditsError, createReservationNotFoundError, createReservationExpiredError, createReservationAlreadyProcessedError, createUserNotFoundError, createInvalidOperationTypeError, } from "./errors.js";
25
+ export { genericDeferred, synchronousDeferred, noopDeferred, createDeferredExecutor, } from "./deferred.js";
26
26
  // ==================== Operations ====================
27
- export { commitReservationWithJournal, releaseReservationWithJournal, reserveCreditsForOperation, } from "./operations";
27
+ export { commitReservationWithJournal, releaseReservationWithJournal, reserveCreditsForOperation, } from "./operations.js";
28
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AA0BH,2DAA2D;AAC3D,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,MAAM,EACN,gBAAgB,GACjB,MAAM,SAAS,CAAC;AAKjB,OAAO,EACL,WAAW,EACX,eAAe,EACf,aAAa,EACb,0BAA0B,EAC1B,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC7B,sCAAsC,EACtC,uBAAuB,EACvB,+BAA+B,GAChC,MAAM,UAAU,CAAC;AAKlB,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAEpB,uDAAuD;AACvD,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,EAC7B,0BAA0B,GAC3B,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AA0BH,2DAA2D;AAC3D,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,MAAM,EACN,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAKpB,OAAO,EACL,WAAW,EACX,eAAe,EACf,aAAa,EACb,0BAA0B,EAC1B,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC7B,sCAAsC,EACtC,uBAAuB,EACvB,+BAA+B,GAChC,MAAM,aAAa,CAAC;AAKrB,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,sBAAsB,GACvB,MAAM,eAAe,CAAC;AAEvB,uDAAuD;AACvD,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,EAC7B,0BAA0B,GAC3B,MAAM,iBAAiB,CAAC"}
@@ -4,8 +4,8 @@
4
4
  * Contains the business logic for credit operations that can be
5
5
  * used by any adapter or service implementation.
6
6
  */
7
- import type { ICreditRepository } from "../repository/types";
8
- import type { PortableReservation } from "./types";
7
+ import type { ICreditRepository } from "../repository/types.js";
8
+ import type { PortableReservation } from "./types.js";
9
9
  /**
10
10
  * Commit a reservation with journal entry
11
11
  *
@@ -1 +1 @@
1
- {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/core/operations.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAEnD;;;;;;GAMG;AACH,wBAAsB,4BAA4B,CAChD,UAAU,EAAE,iBAAiB,EAC7B,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC,CA2Bf;AAED;;;;;;GAMG;AACH,wBAAsB,6BAA6B,CACjD,UAAU,EAAE,iBAAiB,EAC7B,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC,CA2Bf;AAED;;;;;;;;;GASG;AACH,wBAAsB,0BAA0B,CAC9C,UAAU,EAAE,iBAAiB,EAC7B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EACrB,QAAQ,GAAE,MAAsB,GAC/B,OAAO,CAAC,mBAAmB,CAAC,CAG9B"}
1
+ {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/core/operations.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD;;;;;;GAMG;AACH,wBAAsB,4BAA4B,CAChD,UAAU,EAAE,iBAAiB,EAC7B,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC,CA2Bf;AAED;;;;;;GAMG;AACH,wBAAsB,6BAA6B,CACjD,UAAU,EAAE,iBAAiB,EAC7B,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC,CA2Bf;AAED;;;;;;;;;GASG;AACH,wBAAsB,0BAA0B,CAC9C,UAAU,EAAE,iBAAiB,EAC7B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EACrB,QAAQ,GAAE,MAAsB,GAC/B,OAAO,CAAC,mBAAmB,CAAC,CAG9B"}
package/dist/index.d.ts CHANGED
@@ -36,22 +36,22 @@
36
36
  * }
37
37
  * ```
38
38
  */
39
- export * from "./core";
40
- export { getConfig, initializeConfig, loadConfigFromEnv, getValidOperationTypes, isValidOperationType, getConfigOperationCost, getConfigTierConfig, getConfigMonthlyLimit, isFeatureEnabled, resetConfig, type CreditSystemConfig, } from "./config";
41
- export { getOperationCosts, getOperationCost, getTierConfig, getMonthlyLimit, getDefaultFreeCredits, getReservationExpiryMs, TIER_CONFIGS, DEFAULT_FREE_CREDITS, RESERVATION_EXPIRY_MS, } from "./config/costs";
42
- export type { ICreditRepository, CreditRepositoryFactory, CreateReservationInput, CreateTransactionInput, CreateUsageLogInput, CreateJournalEntryInput, UsageLogQuery, JournalEntryQuery, CreditBalanceUpdate, TierUpdateInput, } from "./repository/types";
43
- export { toClientUserCredits } from "./repository/types";
44
- export { generateId, getNextMonthlyReset } from "./repository/utils";
45
- export { InMemoryCreditRepository, createInMemoryCreditRepository, } from "./repository/memory";
46
- export * from "./auth";
47
- export * from "./service";
48
- export * from "./adapters";
49
- export { registerNotificationHandler, clearNotificationHandlers, clearCooldownState, checkAndNotifyLowBalance, notifySubscriptionExpiring, notifySubscriptionExpired, ConsoleNotificationHandler, type CreditNotificationEvent, type ICreditNotificationHandler, } from "./notifications";
50
- export { CreditsClient } from "./sdk/client";
51
- export { AdminCreditsClient } from "./sdk/admin-client";
52
- export type { CreditsClientConfig, AdminCreditsClientConfig, UserCredits, CreditReservation, CreditCheckResult as SDKCreditCheckResult, ReservationResult, PaginationOptions, UsageHistoryEntry as SDKUsageHistoryEntry, UsageHistoryResponse as SDKUsageHistoryResponse, ApiResponse, SDKErrorCodeType, SubscriptionTier as SDKSubscriptionTier, } from "./sdk/types";
53
- export type { CreditsConfig, ListUsersResponse, ListUsersOptions, } from "./sdk/admin-client";
54
- export { SDKErrorCode } from "./sdk/types";
55
- export { CreditsSDKError, NetworkError, AuthenticationError, AuthorizationError, InsufficientCreditsError as SDKInsufficientCreditsError, ReservationNotFoundError as SDKReservationNotFoundError, ReservationExpiredError as SDKReservationExpiredError, ValidationError, ServerError, parseApiError, } from "./sdk/errors";
56
- export { getTotalCredits, generateRequestId, parseCreditError, isCreditErrorMessage, isPreviewMode, createDummyReservation, type CreditErrorInfo, } from "./utils";
39
+ export * from "./core/index.js";
40
+ export { getConfig, initializeConfig, loadConfigFromEnv, getValidOperationTypes, isValidOperationType, getConfigOperationCost, getConfigTierConfig, getConfigMonthlyLimit, isFeatureEnabled, resetConfig, type CreditSystemConfig, } from "./config/index.js";
41
+ export { getOperationCosts, getOperationCost, getTierConfig, getMonthlyLimit, getDefaultFreeCredits, getReservationExpiryMs, TIER_CONFIGS, DEFAULT_FREE_CREDITS, RESERVATION_EXPIRY_MS, } from "./config/costs.js";
42
+ export type { ICreditRepository, CreditRepositoryFactory, CreateReservationInput, CreateTransactionInput, CreateUsageLogInput, CreateJournalEntryInput, UsageLogQuery, JournalEntryQuery, CreditBalanceUpdate, TierUpdateInput, } from "./repository/types.js";
43
+ export { toClientUserCredits } from "./repository/types.js";
44
+ export { generateId, getNextMonthlyReset } from "./repository/utils.js";
45
+ export { InMemoryCreditRepository, createInMemoryCreditRepository, } from "./repository/memory/index.js";
46
+ export * from "./auth/index.js";
47
+ export * from "./service/index.js";
48
+ export * from "./adapters/index.js";
49
+ export { registerNotificationHandler, clearNotificationHandlers, clearCooldownState, checkAndNotifyLowBalance, notifySubscriptionExpiring, notifySubscriptionExpired, ConsoleNotificationHandler, type CreditNotificationEvent, type ICreditNotificationHandler, } from "./notifications/index.js";
50
+ export { CreditsClient } from "./sdk/client.js";
51
+ export { AdminCreditsClient } from "./sdk/admin-client.js";
52
+ export type { CreditsClientConfig, AdminCreditsClientConfig, UserCredits, CreditReservation, CreditCheckResult as SDKCreditCheckResult, ReservationResult, PaginationOptions, UsageHistoryEntry as SDKUsageHistoryEntry, UsageHistoryResponse as SDKUsageHistoryResponse, ApiResponse, SDKErrorCodeType, SubscriptionTier as SDKSubscriptionTier, } from "./sdk/types.js";
53
+ export type { CreditsConfig, ListUsersResponse, ListUsersOptions, } from "./sdk/admin-client.js";
54
+ export { SDKErrorCode } from "./sdk/types.js";
55
+ export { CreditsSDKError, NetworkError, AuthenticationError, AuthorizationError, InsufficientCreditsError as SDKInsufficientCreditsError, ReservationNotFoundError as SDKReservationNotFoundError, ReservationExpiredError as SDKReservationExpiredError, ValidationError, ServerError, parseApiError, } from "./sdk/errors.js";
56
+ export { getTotalCredits, generateRequestId, parseCreditError, isCreditErrorMessage, isPreviewMode, createDummyReservation, type CreditErrorInfo, } from "./utils/index.js";
57
57
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAGH,cAAc,QAAQ,CAAC;AAGvB,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,WAAW,EACX,KAAK,kBAAkB,GACxB,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AAIxB,YAAY,EACV,iBAAiB,EACjB,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,uBAAuB,EACvB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EACL,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,qBAAqB,CAAC;AAG7B,cAAc,QAAQ,CAAC;AAGvB,cAAc,WAAW,CAAC;AAG1B,cAAc,YAAY,CAAC;AAG3B,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,EACzB,kBAAkB,EAClB,wBAAwB,EACxB,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,0BAA0B,GAChC,MAAM,iBAAiB,CAAC;AAIzB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,YAAY,EACV,mBAAmB,EACnB,wBAAwB,EACxB,WAAW,EACX,iBAAiB,EACjB,iBAAiB,IAAI,oBAAoB,EACzC,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,IAAI,oBAAoB,EACzC,oBAAoB,IAAI,uBAAuB,EAC/C,WAAW,EACX,gBAAgB,EAChB,gBAAgB,IAAI,mBAAmB,GACxC,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,aAAa,EACb,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,IAAI,2BAA2B,EACvD,wBAAwB,IAAI,2BAA2B,EACvD,uBAAuB,IAAI,0BAA0B,EACrD,eAAe,EACf,WAAW,EACX,aAAa,GACd,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,aAAa,EACb,sBAAsB,EACtB,KAAK,eAAe,GACrB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAGH,cAAc,iBAAiB,CAAC;AAGhC,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,WAAW,EACX,KAAK,kBAAkB,GACxB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAI3B,YAAY,EACV,iBAAiB,EACjB,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,uBAAuB,EACvB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,EACL,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,8BAA8B,CAAC;AAGtC,cAAc,iBAAiB,CAAC;AAGhC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,qBAAqB,CAAC;AAGpC,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,EACzB,kBAAkB,EAClB,wBAAwB,EACxB,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,0BAA0B,GAChC,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,YAAY,EACV,mBAAmB,EACnB,wBAAwB,EACxB,WAAW,EACX,iBAAiB,EACjB,iBAAiB,IAAI,oBAAoB,EACzC,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,IAAI,oBAAoB,EACzC,oBAAoB,IAAI,uBAAuB,EAC/C,WAAW,EACX,gBAAgB,EAChB,gBAAgB,IAAI,mBAAmB,GACxC,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,aAAa,EACb,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EACL,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,IAAI,2BAA2B,EACvD,wBAAwB,IAAI,2BAA2B,EACvD,uBAAuB,IAAI,0BAA0B,EACrD,eAAe,EACf,WAAW,EACX,aAAa,GACd,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,aAAa,EACb,sBAAsB,EACtB,KAAK,eAAe,GACrB,MAAM,kBAAkB,CAAC"}
package/dist/index.js CHANGED
@@ -37,27 +37,27 @@
37
37
  * ```
38
38
  */
39
39
  // ==================== Core ====================
40
- export * from "./core";
40
+ export * from "./core/index.js";
41
41
  // ==================== Config ====================
42
- export { getConfig, initializeConfig, loadConfigFromEnv, getValidOperationTypes, isValidOperationType, getConfigOperationCost, getConfigTierConfig, getConfigMonthlyLimit, isFeatureEnabled, resetConfig, } from "./config";
43
- export { getOperationCosts, getOperationCost, getTierConfig, getMonthlyLimit, getDefaultFreeCredits, getReservationExpiryMs, TIER_CONFIGS, DEFAULT_FREE_CREDITS, RESERVATION_EXPIRY_MS, } from "./config/costs";
44
- export { toClientUserCredits } from "./repository/types";
45
- export { generateId, getNextMonthlyReset } from "./repository/utils";
46
- export { InMemoryCreditRepository, createInMemoryCreditRepository, } from "./repository/memory";
42
+ export { getConfig, initializeConfig, loadConfigFromEnv, getValidOperationTypes, isValidOperationType, getConfigOperationCost, getConfigTierConfig, getConfigMonthlyLimit, isFeatureEnabled, resetConfig, } from "./config/index.js";
43
+ export { getOperationCosts, getOperationCost, getTierConfig, getMonthlyLimit, getDefaultFreeCredits, getReservationExpiryMs, TIER_CONFIGS, DEFAULT_FREE_CREDITS, RESERVATION_EXPIRY_MS, } from "./config/costs.js";
44
+ export { toClientUserCredits } from "./repository/types.js";
45
+ export { generateId, getNextMonthlyReset } from "./repository/utils.js";
46
+ export { InMemoryCreditRepository, createInMemoryCreditRepository, } from "./repository/memory/index.js";
47
47
  // ==================== Auth ====================
48
- export * from "./auth";
48
+ export * from "./auth/index.js";
49
49
  // ==================== Service ====================
50
- export * from "./service";
50
+ export * from "./service/index.js";
51
51
  // ==================== Adapters ====================
52
- export * from "./adapters";
52
+ export * from "./adapters/index.js";
53
53
  // ==================== Notifications ====================
54
- export { registerNotificationHandler, clearNotificationHandlers, clearCooldownState, checkAndNotifyLowBalance, notifySubscriptionExpiring, notifySubscriptionExpired, ConsoleNotificationHandler, } from "./notifications";
54
+ export { registerNotificationHandler, clearNotificationHandlers, clearCooldownState, checkAndNotifyLowBalance, notifySubscriptionExpiring, notifySubscriptionExpired, ConsoleNotificationHandler, } from "./notifications/index.js";
55
55
  // ==================== SDK ====================
56
56
  // Export SDK (excluding types that conflict with core)
57
- export { CreditsClient } from "./sdk/client";
58
- export { AdminCreditsClient } from "./sdk/admin-client";
59
- export { SDKErrorCode } from "./sdk/types";
60
- export { CreditsSDKError, NetworkError, AuthenticationError, AuthorizationError, InsufficientCreditsError as SDKInsufficientCreditsError, ReservationNotFoundError as SDKReservationNotFoundError, ReservationExpiredError as SDKReservationExpiredError, ValidationError, ServerError, parseApiError, } from "./sdk/errors";
57
+ export { CreditsClient } from "./sdk/client.js";
58
+ export { AdminCreditsClient } from "./sdk/admin-client.js";
59
+ export { SDKErrorCode } from "./sdk/types.js";
60
+ export { CreditsSDKError, NetworkError, AuthenticationError, AuthorizationError, InsufficientCreditsError as SDKInsufficientCreditsError, ReservationNotFoundError as SDKReservationNotFoundError, ReservationExpiredError as SDKReservationExpiredError, ValidationError, ServerError, parseApiError, } from "./sdk/errors.js";
61
61
  // ==================== Utils ====================
62
- export { getTotalCredits, generateRequestId, parseCreditError, isCreditErrorMessage, isPreviewMode, createDummyReservation, } from "./utils";
62
+ export { getTotalCredits, generateRequestId, parseCreditError, isCreditErrorMessage, isPreviewMode, createDummyReservation, } from "./utils/index.js";
63
63
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,iDAAiD;AACjD,cAAc,QAAQ,CAAC;AAEvB,mDAAmD;AACnD,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,WAAW,GAEZ,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AAgBxB,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EACL,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,qBAAqB,CAAC;AAE7B,iDAAiD;AACjD,cAAc,QAAQ,CAAC;AAEvB,oDAAoD;AACpD,cAAc,WAAW,CAAC;AAE1B,qDAAqD;AACrD,cAAc,YAAY,CAAC;AAE3B,0DAA0D;AAC1D,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,EACzB,kBAAkB,EAClB,wBAAwB,EACxB,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,GAG3B,MAAM,iBAAiB,CAAC;AAEzB,gDAAgD;AAChD,uDAAuD;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAoBxD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,IAAI,2BAA2B,EACvD,wBAAwB,IAAI,2BAA2B,EACvD,uBAAuB,IAAI,0BAA0B,EACrD,eAAe,EACf,WAAW,EACX,aAAa,GACd,MAAM,cAAc,CAAC;AAEtB,kDAAkD;AAClD,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,aAAa,EACb,sBAAsB,GAEvB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,iDAAiD;AACjD,cAAc,iBAAiB,CAAC;AAEhC,mDAAmD;AACnD,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,WAAW,GAEZ,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAgB3B,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,EACL,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,8BAA8B,CAAC;AAEtC,iDAAiD;AACjD,cAAc,iBAAiB,CAAC;AAEhC,oDAAoD;AACpD,cAAc,oBAAoB,CAAC;AAEnC,qDAAqD;AACrD,cAAc,qBAAqB,CAAC;AAEpC,0DAA0D;AAC1D,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,EACzB,kBAAkB,EAClB,wBAAwB,EACxB,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,GAG3B,MAAM,0BAA0B,CAAC;AAElC,gDAAgD;AAChD,uDAAuD;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAoB3D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EACL,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,IAAI,2BAA2B,EACvD,wBAAwB,IAAI,2BAA2B,EACvD,uBAAuB,IAAI,0BAA0B,EACrD,eAAe,EACf,WAAW,EACX,aAAa,GACd,MAAM,iBAAiB,CAAC;AAEzB,kDAAkD;AAClD,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,aAAa,EACb,sBAAsB,GAEvB,MAAM,kBAAkB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { CREDIT_CONSTANTS } from "../core/types";
1
+ import { CREDIT_CONSTANTS } from "../core/types.js";
2
2
  /**
3
3
  * In-memory cooldown tracker
4
4
  * In production, this should be stored in a persistent store
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/notifications/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/notifications/index.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,8 @@
3
3
  *
4
4
  * Provides database-agnostic interface for credits storage
5
5
  */
6
- export type { ICreditRepository, CreditRepositoryFactory, CreateReservationInput, CreateTransactionInput, CreateUsageLogInput, CreateJournalEntryInput, UsageLogQuery, JournalEntryQuery, CreditBalanceUpdate, TierUpdateInput, } from "./types";
7
- export { toClientUserCredits } from "./types";
8
- export { generateId, toDate, getNextMonthlyReset } from "./utils";
9
- export { InMemoryCreditRepository, createInMemoryCreditRepository, } from "./memory";
6
+ export type { ICreditRepository, CreditRepositoryFactory, CreateReservationInput, CreateTransactionInput, CreateUsageLogInput, CreateJournalEntryInput, UsageLogQuery, JournalEntryQuery, CreditBalanceUpdate, TierUpdateInput, } from "./types.js";
7
+ export { toClientUserCredits } from "./types.js";
8
+ export { generateId, toDate, getNextMonthlyReset } from "./utils.js";
9
+ export { InMemoryCreditRepository, createInMemoryCreditRepository, } from "./memory/index.js";
10
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/repository/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,YAAY,EACV,iBAAiB,EACjB,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,uBAAuB,EACvB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,GAChB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAG9C,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAGlE,OAAO,EACL,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/repository/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,YAAY,EACV,iBAAiB,EACjB,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,uBAAuB,EACvB,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,GAChB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGjD,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGrE,OAAO,EACL,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,mBAAmB,CAAC"}
@@ -3,9 +3,9 @@
3
3
  *
4
4
  * Provides database-agnostic interface for credits storage
5
5
  */
6
- export { toClientUserCredits } from "./types";
6
+ export { toClientUserCredits } from "./types.js";
7
7
  // Shared utilities
8
- export { generateId, toDate, getNextMonthlyReset } from "./utils";
8
+ export { generateId, toDate, getNextMonthlyReset } from "./utils.js";
9
9
  // In-memory implementation (for testing and prototyping)
10
- export { InMemoryCreditRepository, createInMemoryCreditRepository, } from "./memory";
10
+ export { InMemoryCreditRepository, createInMemoryCreditRepository, } from "./memory/index.js";
11
11
  //# sourceMappingURL=index.js.map