@cortexkit/antigravity-auth-core 1.1.0 → 2.0.1

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 (105) hide show
  1. package/dist/account-manager.d.ts +325 -0
  2. package/dist/account-manager.d.ts.map +1 -0
  3. package/dist/account-manager.js +1480 -0
  4. package/dist/account-manager.js.map +1 -0
  5. package/dist/account-storage.d.ts +162 -0
  6. package/dist/account-storage.d.ts.map +1 -0
  7. package/dist/account-storage.js +635 -0
  8. package/dist/account-storage.js.map +1 -0
  9. package/dist/account-types.d.ts +155 -0
  10. package/dist/account-types.d.ts.map +1 -0
  11. package/dist/account-types.js +9 -0
  12. package/dist/account-types.js.map +1 -0
  13. package/dist/agy-request-metadata.d.ts +12 -5
  14. package/dist/agy-request-metadata.d.ts.map +1 -1
  15. package/dist/agy-request-metadata.js +64 -38
  16. package/dist/agy-request-metadata.js.map +1 -1
  17. package/dist/agy-transport.d.ts +2 -2
  18. package/dist/agy-transport.d.ts.map +1 -1
  19. package/dist/agy-transport.js +87 -74
  20. package/dist/agy-transport.js.map +1 -1
  21. package/dist/antigravity/oauth.d.ts +3 -2
  22. package/dist/antigravity/oauth.d.ts.map +1 -1
  23. package/dist/antigravity/oauth.js +65 -55
  24. package/dist/antigravity/oauth.js.map +1 -1
  25. package/dist/atomic-write.d.ts +23 -0
  26. package/dist/atomic-write.d.ts.map +1 -0
  27. package/dist/atomic-write.js +47 -0
  28. package/dist/atomic-write.js.map +1 -0
  29. package/dist/auth-types.d.ts +12 -2
  30. package/dist/auth-types.d.ts.map +1 -1
  31. package/dist/auth.d.ts +1 -1
  32. package/dist/auth.d.ts.map +1 -1
  33. package/dist/auth.js +9 -6
  34. package/dist/auth.js.map +1 -1
  35. package/dist/constants.d.ts +19 -12
  36. package/dist/constants.d.ts.map +1 -1
  37. package/dist/constants.js +51 -39
  38. package/dist/constants.js.map +1 -1
  39. package/dist/fetch-timeout.d.ts +26 -0
  40. package/dist/fetch-timeout.d.ts.map +1 -0
  41. package/dist/fetch-timeout.js +43 -0
  42. package/dist/fetch-timeout.js.map +1 -0
  43. package/dist/file-lock.d.ts +79 -0
  44. package/dist/file-lock.d.ts.map +1 -0
  45. package/dist/file-lock.js +438 -0
  46. package/dist/file-lock.js.map +1 -0
  47. package/dist/fingerprint.d.ts +9 -3
  48. package/dist/fingerprint.d.ts.map +1 -1
  49. package/dist/fingerprint.js +28 -20
  50. package/dist/fingerprint.js.map +1 -1
  51. package/dist/index.d.ts +23 -13
  52. package/dist/index.d.ts.map +1 -1
  53. package/dist/index.js +18 -9
  54. package/dist/index.js.map +1 -1
  55. package/dist/logger.d.ts +1 -1
  56. package/dist/logger.d.ts.map +1 -1
  57. package/dist/logger.js +10 -10
  58. package/dist/logger.js.map +1 -1
  59. package/dist/model-registry.d.ts +5 -5
  60. package/dist/model-registry.d.ts.map +1 -1
  61. package/dist/model-registry.js +119 -107
  62. package/dist/model-registry.js.map +1 -1
  63. package/dist/project.d.ts +4 -1
  64. package/dist/project.d.ts.map +1 -1
  65. package/dist/project.js +84 -31
  66. package/dist/project.js.map +1 -1
  67. package/dist/quota-manager.d.ts +203 -0
  68. package/dist/quota-manager.d.ts.map +1 -0
  69. package/dist/quota-manager.js +718 -0
  70. package/dist/quota-manager.js.map +1 -0
  71. package/dist/quota-types.d.ts +68 -0
  72. package/dist/quota-types.d.ts.map +1 -0
  73. package/dist/quota-types.js +50 -0
  74. package/dist/quota-types.js.map +1 -0
  75. package/dist/rotation.d.ts +175 -0
  76. package/dist/rotation.d.ts.map +1 -0
  77. package/dist/rotation.js +391 -0
  78. package/dist/rotation.js.map +1 -0
  79. package/dist/transform/claude.d.ts +1 -1
  80. package/dist/transform/claude.d.ts.map +1 -1
  81. package/dist/transform/claude.js +63 -41
  82. package/dist/transform/claude.js.map +1 -1
  83. package/dist/transform/cross-model-sanitizer.d.ts +1 -1
  84. package/dist/transform/cross-model-sanitizer.d.ts.map +1 -1
  85. package/dist/transform/cross-model-sanitizer.js +19 -16
  86. package/dist/transform/cross-model-sanitizer.js.map +1 -1
  87. package/dist/transform/gemini.d.ts +1 -1
  88. package/dist/transform/gemini.d.ts.map +1 -1
  89. package/dist/transform/gemini.js +111 -85
  90. package/dist/transform/gemini.js.map +1 -1
  91. package/dist/transform/index.d.ts +9 -9
  92. package/dist/transform/index.d.ts.map +1 -1
  93. package/dist/transform/index.js +6 -6
  94. package/dist/transform/index.js.map +1 -1
  95. package/dist/transform/model-resolver.d.ts +5 -5
  96. package/dist/transform/model-resolver.d.ts.map +1 -1
  97. package/dist/transform/model-resolver.js +97 -75
  98. package/dist/transform/model-resolver.js.map +1 -1
  99. package/dist/transform/types.d.ts +5 -5
  100. package/dist/transform/types.d.ts.map +1 -1
  101. package/dist/version.d.ts +1 -1
  102. package/dist/version.d.ts.map +1 -1
  103. package/dist/version.js +14 -16
  104. package/dist/version.js.map +1 -1
  105. package/package.json +16 -10
@@ -0,0 +1,391 @@
1
+ const QUOTA_EXHAUSTED_BACKOFFS = [
2
+ 60_000, 300_000, 1_800_000, 7_200_000,
3
+ ];
4
+ const RATE_LIMIT_EXCEEDED_BACKOFF = 30_000;
5
+ const MODEL_CAPACITY_EXHAUSTED_BASE_BACKOFF = 45_000;
6
+ const MODEL_CAPACITY_EXHAUSTED_JITTER_MAX = 30_000;
7
+ const SERVER_ERROR_BACKOFF = 20_000;
8
+ const UNKNOWN_BACKOFF = 60_000;
9
+ const MIN_BACKOFF_MS = 2_000;
10
+ export function parseRateLimitReason(reason, message, status) {
11
+ if (status === 529 || status === 503)
12
+ return 'MODEL_CAPACITY_EXHAUSTED';
13
+ if (status === 500)
14
+ return 'SERVER_ERROR';
15
+ if (reason) {
16
+ const normalized = reason.toUpperCase();
17
+ if (normalized === 'QUOTA_EXHAUSTED' ||
18
+ normalized === 'RATE_LIMIT_EXCEEDED' ||
19
+ normalized === 'MODEL_CAPACITY_EXHAUSTED') {
20
+ return normalized;
21
+ }
22
+ }
23
+ if (message) {
24
+ const normalized = message.toLowerCase();
25
+ if (normalized.includes('capacity') ||
26
+ normalized.includes('overloaded') ||
27
+ normalized.includes('resource exhausted')) {
28
+ return 'MODEL_CAPACITY_EXHAUSTED';
29
+ }
30
+ if (normalized.includes('per minute') ||
31
+ normalized.includes('rate limit') ||
32
+ normalized.includes('too many requests') ||
33
+ normalized.includes('presque')) {
34
+ return 'RATE_LIMIT_EXCEEDED';
35
+ }
36
+ if (normalized.includes('exhausted') || normalized.includes('quota')) {
37
+ return 'QUOTA_EXHAUSTED';
38
+ }
39
+ }
40
+ return 'UNKNOWN';
41
+ }
42
+ export function calculateBackoffMs(reason, consecutiveFailures, retryAfterMs, random = Math.random) {
43
+ if (retryAfterMs && retryAfterMs > 0) {
44
+ return Math.max(retryAfterMs, MIN_BACKOFF_MS);
45
+ }
46
+ switch (reason) {
47
+ case 'QUOTA_EXHAUSTED':
48
+ return (QUOTA_EXHAUSTED_BACKOFFS[Math.min(consecutiveFailures, QUOTA_EXHAUSTED_BACKOFFS.length - 1)] ?? UNKNOWN_BACKOFF);
49
+ case 'RATE_LIMIT_EXCEEDED':
50
+ return RATE_LIMIT_EXCEEDED_BACKOFF;
51
+ case 'MODEL_CAPACITY_EXHAUSTED':
52
+ return (MODEL_CAPACITY_EXHAUSTED_BASE_BACKOFF +
53
+ random() * MODEL_CAPACITY_EXHAUSTED_JITTER_MAX -
54
+ MODEL_CAPACITY_EXHAUSTED_JITTER_MAX / 2);
55
+ case 'SERVER_ERROR':
56
+ return SERVER_ERROR_BACKOFF;
57
+ default:
58
+ return UNKNOWN_BACKOFF;
59
+ }
60
+ }
61
+ export function computeSoftQuotaCacheTtlMs(ttlConfig, refreshIntervalMinutes) {
62
+ return ((ttlConfig === 'auto'
63
+ ? Math.max(2 * refreshIntervalMinutes, 10)
64
+ : ttlConfig) *
65
+ 60 *
66
+ 1000);
67
+ }
68
+ export const DEFAULT_HEALTH_SCORE_CONFIG = {
69
+ initial: 70,
70
+ successReward: 1,
71
+ rateLimitPenalty: -10,
72
+ failurePenalty: -20,
73
+ recoveryRatePerHour: 2,
74
+ minUsable: 50,
75
+ maxScore: 100,
76
+ };
77
+ /**
78
+ * Tracks health scores for accounts.
79
+ * Higher score = healthier account = preferred for selection.
80
+ */
81
+ export class HealthScoreTracker {
82
+ scores = new Map();
83
+ config;
84
+ now;
85
+ constructor(config = {}, now = Date.now) {
86
+ this.now = now;
87
+ this.config = { ...DEFAULT_HEALTH_SCORE_CONFIG, ...config };
88
+ }
89
+ /**
90
+ * Get current health score for an account, applying time-based recovery.
91
+ */
92
+ getScore(accountIndex) {
93
+ const state = this.scores.get(accountIndex);
94
+ if (!state) {
95
+ return this.config.initial;
96
+ }
97
+ // Apply passive recovery based on time since last update
98
+ const now = this.now();
99
+ const hoursSinceUpdate = (now - state.lastUpdated) / (1000 * 60 * 60);
100
+ const recoveredPoints = Math.floor(hoursSinceUpdate * this.config.recoveryRatePerHour);
101
+ return Math.min(this.config.maxScore, state.score + recoveredPoints);
102
+ }
103
+ /**
104
+ * Record a successful request - improves health score.
105
+ */
106
+ recordSuccess(accountIndex) {
107
+ const now = this.now();
108
+ const current = this.getScore(accountIndex);
109
+ this.scores.set(accountIndex, {
110
+ score: Math.min(this.config.maxScore, current + this.config.successReward),
111
+ lastUpdated: now,
112
+ lastSuccess: now,
113
+ consecutiveFailures: 0,
114
+ });
115
+ }
116
+ /**
117
+ * Record a rate limit hit - moderate penalty.
118
+ */
119
+ recordRateLimit(accountIndex) {
120
+ const now = this.now();
121
+ const state = this.scores.get(accountIndex);
122
+ const current = this.getScore(accountIndex);
123
+ this.scores.set(accountIndex, {
124
+ score: Math.max(0, current + this.config.rateLimitPenalty),
125
+ lastUpdated: now,
126
+ lastSuccess: state?.lastSuccess ?? 0,
127
+ consecutiveFailures: (state?.consecutiveFailures ?? 0) + 1,
128
+ });
129
+ }
130
+ /**
131
+ * Record a failure (auth, network, etc.) - larger penalty.
132
+ */
133
+ recordFailure(accountIndex) {
134
+ const now = this.now();
135
+ const state = this.scores.get(accountIndex);
136
+ const current = this.getScore(accountIndex);
137
+ this.scores.set(accountIndex, {
138
+ score: Math.max(0, current + this.config.failurePenalty),
139
+ lastUpdated: now,
140
+ lastSuccess: state?.lastSuccess ?? 0,
141
+ consecutiveFailures: (state?.consecutiveFailures ?? 0) + 1,
142
+ });
143
+ }
144
+ /**
145
+ * Check if account is healthy enough to use.
146
+ */
147
+ isUsable(accountIndex) {
148
+ return this.getScore(accountIndex) >= this.config.minUsable;
149
+ }
150
+ /**
151
+ * Get consecutive failure count for an account.
152
+ */
153
+ getConsecutiveFailures(accountIndex) {
154
+ return this.scores.get(accountIndex)?.consecutiveFailures ?? 0;
155
+ }
156
+ /**
157
+ * Reset health state for an account (e.g., after removal).
158
+ */
159
+ reset(accountIndex) {
160
+ this.scores.delete(accountIndex);
161
+ }
162
+ /**
163
+ * Get all scores for debugging/logging.
164
+ */
165
+ getSnapshot() {
166
+ const result = new Map();
167
+ for (const [index] of this.scores) {
168
+ result.set(index, {
169
+ score: this.getScore(index),
170
+ consecutiveFailures: this.getConsecutiveFailures(index),
171
+ });
172
+ }
173
+ return result;
174
+ }
175
+ }
176
+ // ============================================================================
177
+ // JITTER UTILITIES
178
+ // ============================================================================
179
+ /**
180
+ * Add random jitter to a delay value.
181
+ * Helps break predictable timing patterns.
182
+ *
183
+ * @param baseMs - Base delay in milliseconds
184
+ * @param jitterFactor - Fraction of base to vary (default: 0.3 = ±30%)
185
+ * @returns Jittered delay in milliseconds
186
+ */
187
+ export function addJitter(baseMs, jitterFactor = 0.3, random = Math.random) {
188
+ const jitterRange = baseMs * jitterFactor;
189
+ const jitter = (random() * 2 - 1) * jitterRange; // -jitterRange to +jitterRange
190
+ return Math.max(0, Math.round(baseMs + jitter));
191
+ }
192
+ /**
193
+ * Generate a random delay within a range.
194
+ *
195
+ * @param minMs - Minimum delay in milliseconds
196
+ * @param maxMs - Maximum delay in milliseconds
197
+ * @returns Random delay between min and max
198
+ */
199
+ export function randomDelay(minMs, maxMs, random = Math.random) {
200
+ return Math.round(minMs + random() * (maxMs - minMs));
201
+ }
202
+ /**
203
+ * Sort accounts by LRU (least recently used first) with health score tiebreaker.
204
+ *
205
+ * Priority:
206
+ * 1. Filter out rate-limited and cooling-down accounts
207
+ * 2. Filter out unhealthy accounts (score < minUsable)
208
+ * 3. Sort by lastUsed ascending (oldest first = most rested)
209
+ * 4. Tiebreaker: higher health score wins
210
+ */
211
+ export function sortByLruWithHealth(accounts, minHealthScore = 50) {
212
+ return accounts
213
+ .filter((acc) => !acc.isRateLimited &&
214
+ !acc.isCoolingDown &&
215
+ acc.healthScore >= minHealthScore)
216
+ .sort((a, b) => {
217
+ // Primary: LRU (oldest lastUsed first)
218
+ const lruDiff = a.lastUsed - b.lastUsed;
219
+ if (lruDiff !== 0)
220
+ return lruDiff;
221
+ // Tiebreaker: higher health score wins
222
+ return b.healthScore - a.healthScore;
223
+ });
224
+ }
225
+ /** Stickiness bonus added to current account's score to prevent unnecessary switching */
226
+ const STICKINESS_BONUS = 150;
227
+ /** Minimum score advantage required to switch away from current account */
228
+ const SWITCH_THRESHOLD = 100;
229
+ /**
230
+ * Select account using hybrid strategy with stickiness:
231
+ * 1. Filter available accounts (not rate-limited, not cooling down, healthy, has tokens)
232
+ * 2. Calculate priority score: health (2x) + tokens (5x) + freshness (0.1x)
233
+ * 3. Apply stickiness bonus to current account
234
+ * 4. Only switch if another account beats current by SWITCH_THRESHOLD
235
+ *
236
+ * @param accounts - All accounts with their metrics
237
+ * @param tokenTracker - Token bucket tracker for token balances
238
+ * @param currentAccountIndex - Currently active account index (for stickiness)
239
+ * @param minHealthScore - Minimum health score to be considered
240
+ * @returns Best account index, or null if none available
241
+ */
242
+ export function selectHybridAccount(accounts, tokenTracker, currentAccountIndex = null, minHealthScore = 50, now = Date.now) {
243
+ const candidates = accounts
244
+ .filter((acc) => !acc.isRateLimited &&
245
+ !acc.isCoolingDown &&
246
+ acc.healthScore >= minHealthScore &&
247
+ tokenTracker.hasTokens(acc.index))
248
+ .map((acc) => ({
249
+ ...acc,
250
+ tokens: tokenTracker.getTokens(acc.index),
251
+ }));
252
+ if (candidates.length === 0) {
253
+ return null;
254
+ }
255
+ const maxTokens = tokenTracker.getMaxTokens();
256
+ const scored = candidates
257
+ .map((acc) => {
258
+ const baseScore = calculateHybridScore(acc, maxTokens, now);
259
+ // Apply stickiness bonus to current account
260
+ const stickinessBonus = acc.index === currentAccountIndex ? STICKINESS_BONUS : 0;
261
+ return {
262
+ index: acc.index,
263
+ baseScore,
264
+ score: baseScore + stickinessBonus,
265
+ isCurrent: acc.index === currentAccountIndex,
266
+ };
267
+ })
268
+ .sort((a, b) => b.score - a.score);
269
+ const best = scored[0];
270
+ if (!best) {
271
+ return null;
272
+ }
273
+ // If current account is still a candidate, check if switch is warranted
274
+ const currentCandidate = scored.find((s) => s.isCurrent);
275
+ if (currentCandidate && !best.isCurrent) {
276
+ // Only switch if best beats current's BASE score by threshold
277
+ // (compare base scores to avoid circular stickiness bonus comparison)
278
+ const advantage = best.baseScore - currentCandidate.baseScore;
279
+ if (advantage < SWITCH_THRESHOLD) {
280
+ return currentCandidate.index;
281
+ }
282
+ }
283
+ return best.index;
284
+ }
285
+ function calculateHybridScore(account, maxTokens, now) {
286
+ const healthComponent = account.healthScore * 2; // 0-200
287
+ const tokenComponent = (account.tokens / maxTokens) * 100 * 5; // 0-500
288
+ const secondsSinceUsed = (now() - account.lastUsed) / 1000;
289
+ const freshnessComponent = Math.min(secondsSinceUsed, 3600) * 0.1; // 0-360
290
+ return Math.max(0, healthComponent + tokenComponent + freshnessComponent);
291
+ }
292
+ export const DEFAULT_TOKEN_BUCKET_CONFIG = {
293
+ maxTokens: 50,
294
+ regenerationRatePerMinute: 6,
295
+ initialTokens: 50,
296
+ };
297
+ /**
298
+ * Client-side rate limiting using Token Bucket algorithm.
299
+ * Helps prevent hitting server 429s by tracking "cost" of requests.
300
+ */
301
+ export class TokenBucketTracker {
302
+ buckets = new Map();
303
+ config;
304
+ now;
305
+ constructor(config = {}, now = Date.now) {
306
+ this.now = now;
307
+ this.config = { ...DEFAULT_TOKEN_BUCKET_CONFIG, ...config };
308
+ }
309
+ /**
310
+ * Get current token balance for an account, applying regeneration.
311
+ */
312
+ getTokens(accountIndex) {
313
+ const state = this.buckets.get(accountIndex);
314
+ if (!state) {
315
+ return this.config.initialTokens;
316
+ }
317
+ const now = this.now();
318
+ const minutesSinceUpdate = (now - state.lastUpdated) / (1000 * 60);
319
+ const recoveredTokens = minutesSinceUpdate * this.config.regenerationRatePerMinute;
320
+ return Math.min(this.config.maxTokens, state.tokens + recoveredTokens);
321
+ }
322
+ /**
323
+ * Check if account has enough tokens for a request.
324
+ * @param cost Cost of the request (default: 1)
325
+ */
326
+ hasTokens(accountIndex, cost = 1) {
327
+ return this.getTokens(accountIndex) >= cost;
328
+ }
329
+ /**
330
+ * Consume tokens for a request.
331
+ * @returns true if tokens were consumed, false if insufficient
332
+ */
333
+ consume(accountIndex, cost = 1) {
334
+ const current = this.getTokens(accountIndex);
335
+ if (current < cost) {
336
+ return false;
337
+ }
338
+ this.buckets.set(accountIndex, {
339
+ tokens: current - cost,
340
+ lastUpdated: this.now(),
341
+ });
342
+ return true;
343
+ }
344
+ /**
345
+ * Refund tokens (e.g., if request wasn't actually sent).
346
+ */
347
+ refund(accountIndex, amount = 1) {
348
+ const current = this.getTokens(accountIndex);
349
+ this.buckets.set(accountIndex, {
350
+ tokens: Math.min(this.config.maxTokens, current + amount),
351
+ lastUpdated: this.now(),
352
+ });
353
+ }
354
+ getMaxTokens() {
355
+ return this.config.maxTokens;
356
+ }
357
+ }
358
+ // ============================================================================
359
+ // SINGLETON TRACKERS
360
+ // ============================================================================
361
+ let globalTokenTracker = null;
362
+ export function getTokenTracker() {
363
+ if (!globalTokenTracker) {
364
+ globalTokenTracker = new TokenBucketTracker();
365
+ }
366
+ return globalTokenTracker;
367
+ }
368
+ export function initTokenTracker(config) {
369
+ globalTokenTracker = new TokenBucketTracker(config);
370
+ return globalTokenTracker;
371
+ }
372
+ let globalHealthTracker = null;
373
+ /**
374
+ * Get the global health score tracker instance.
375
+ * Creates one with default config if not initialized.
376
+ */
377
+ export function getHealthTracker() {
378
+ if (!globalHealthTracker) {
379
+ globalHealthTracker = new HealthScoreTracker();
380
+ }
381
+ return globalHealthTracker;
382
+ }
383
+ /**
384
+ * Initialize the global health tracker with custom config.
385
+ * Call this at plugin startup if custom config is needed.
386
+ */
387
+ export function initHealthTracker(config) {
388
+ globalHealthTracker = new HealthScoreTracker(config);
389
+ return globalHealthTracker;
390
+ }
391
+ //# sourceMappingURL=rotation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rotation.js","sourceRoot":"","sources":["../src/rotation.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@
7
7
  * - System instruction hints for interleaved thinking
8
8
  * - Tool normalization (functionDeclarations format)
9
9
  */
10
- import type { RequestPayload, ThinkingConfig } from "./types.ts";
10
+ import type { RequestPayload, ThinkingConfig } from './types.ts';
11
11
  /** Claude thinking models need a sufficiently large max output token limit when thinking is enabled */
12
12
  export declare const CLAUDE_THINKING_MAX_OUTPUT_TOKENS = 64000;
13
13
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../src/transform/claude.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAMjE,uGAAuG;AACvG,eAAO,MAAM,iCAAiC,QAAS,CAAC;AAExD;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAK5E;AACD,gEAAgE;AAChE,eAAO,MAAM,gCAAgC,qPACuM,CAAC;AAErP;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAG5D;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAcvE;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,eAAe,EAAE,OAAO,EACxB,cAAc,CAAC,EAAE,MAAM,GACtB,cAAc,CAOhB;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CACzC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,cAAc,EAAE,MAAM,GACrB,IAAI,CASN;AACD;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,cAAc,EACvB,IAAI,GAAE,MAAyC,GAC9C,IAAI,CAqCN;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,cAAc,EACvB,eAAe,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5D;IAAE,gBAAgB,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,EAAE,CAAA;CAAE,CA2I5D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACxC,IAAI,CAKN;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,oDAAoD;IACpD,kBAAkB,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,OAAO,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5E,oDAAoD;IACpD,eAAe,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/D;AAED,MAAM,WAAW,qBAAqB;IACpC,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,sBAAsB,GAC9B,qBAAqB,CAuCvB"}
1
+ {"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../src/transform/claude.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAEhE,uGAAuG;AACvG,eAAO,MAAM,iCAAiC,QAAS,CAAA;AAEvD;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAQ5E;AACD,gEAAgE;AAChE,eAAO,MAAM,gCAAgC,qPACuM,CAAA;AAEpP;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAG5D;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAkBvE;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,eAAe,EAAE,OAAO,EACxB,cAAc,CAAC,EAAE,MAAM,GACtB,cAAc,CAOhB;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CACzC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,cAAc,EAAE,MAAM,GACrB,IAAI,CAWN;AACD;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,cAAc,EACvB,IAAI,GAAE,MAAyC,GAC9C,IAAI,CAyCN;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,cAAc,EACvB,eAAe,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5D;IAAE,gBAAgB,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,EAAE,CAAA;CAAE,CA+J5D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACxC,IAAI,CAKN;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAA;IACb,qDAAqD;IACrD,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,oDAAoD;IACpD,kBAAkB,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,OAAO,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC3E,oDAAoD;IACpD,eAAe,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC9D;AAED,MAAM,WAAW,qBAAqB;IACpC,gBAAgB,EAAE,MAAM,CAAA;IACxB,kBAAkB,EAAE,MAAM,EAAE,CAAA;CAC7B;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,sBAAsB,GAC9B,qBAAqB,CAgDvB"}