llm-relay 0.35.0 → 0.37.0

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 (165) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +12 -0
  3. package/THIRD_PARTY_NOTICES.md +72 -0
  4. package/config.example.json +8 -2
  5. package/dist/accounting-store-io.d.ts +124 -0
  6. package/dist/accounting-store-io.js +1105 -0
  7. package/dist/accounting-store-io.js.map +1 -0
  8. package/dist/accounting-store-schema.d.ts +299 -0
  9. package/dist/accounting-store-schema.js +1021 -0
  10. package/dist/accounting-store-schema.js.map +1 -0
  11. package/dist/accounting-store.d.ts +73 -0
  12. package/dist/accounting-store.js +1523 -0
  13. package/dist/accounting-store.js.map +1 -0
  14. package/dist/accounting.d.ts +177 -0
  15. package/dist/accounting.js +429 -0
  16. package/dist/accounting.js.map +1 -0
  17. package/dist/anthropic.d.ts +2 -2
  18. package/dist/anthropic.js +22 -5
  19. package/dist/anthropic.js.map +1 -1
  20. package/dist/authEnv.d.ts +19 -0
  21. package/dist/authEnv.js +58 -25
  22. package/dist/authEnv.js.map +1 -1
  23. package/dist/backend.d.ts +32 -3
  24. package/dist/backend.js +324 -41
  25. package/dist/backend.js.map +1 -1
  26. package/dist/candidates.d.ts +28 -3
  27. package/dist/candidates.js +86 -13
  28. package/dist/candidates.js.map +1 -1
  29. package/dist/catalog.d.ts +1 -0
  30. package/dist/catalog.js +36 -12
  31. package/dist/catalog.js.map +1 -1
  32. package/dist/circuit-breaker.d.ts +49 -129
  33. package/dist/circuit-breaker.js +166 -223
  34. package/dist/circuit-breaker.js.map +1 -1
  35. package/dist/cli.d.ts +47 -15
  36. package/dist/cli.js +475 -134
  37. package/dist/cli.js.map +1 -1
  38. package/dist/config.d.ts +23 -1
  39. package/dist/config.js +189 -19
  40. package/dist/config.js.map +1 -1
  41. package/dist/context-limits.js +2 -1
  42. package/dist/context-limits.js.map +1 -1
  43. package/dist/control-authorization.js +6 -4
  44. package/dist/control-authorization.js.map +1 -1
  45. package/dist/credential-fleet.d.ts +41 -0
  46. package/dist/credential-fleet.js +78 -0
  47. package/dist/credential-fleet.js.map +1 -0
  48. package/dist/credential-id.d.ts +13 -0
  49. package/dist/credential-id.js +22 -0
  50. package/dist/credential-id.js.map +1 -0
  51. package/dist/credential-select.d.ts +86 -0
  52. package/dist/credential-select.js +303 -0
  53. package/dist/credential-select.js.map +1 -0
  54. package/dist/dashboard/.vite/dashboard-bundle-graph.json +32 -0
  55. package/dist/dashboard/.vite/manifest.json +11 -0
  56. package/dist/dashboard/assets/index-BeZxN4Lx.css +1 -0
  57. package/dist/dashboard/assets/index-RtLgb7Cg.js +74 -0
  58. package/dist/dashboard/index.html +4 -0
  59. package/dist/dashboard-auth.d.ts +68 -0
  60. package/dist/dashboard-auth.js +225 -0
  61. package/dist/dashboard-auth.js.map +1 -0
  62. package/dist/dashboard-contract.d.ts +391 -0
  63. package/dist/dashboard-contract.js +619 -0
  64. package/dist/dashboard-contract.js.map +1 -0
  65. package/dist/dashboard-routes.d.ts +91 -0
  66. package/dist/dashboard-routes.js +688 -0
  67. package/dist/dashboard-routes.js.map +1 -0
  68. package/dist/dashboard-snapshot.d.ts +36 -0
  69. package/dist/dashboard-snapshot.js +1132 -0
  70. package/dist/dashboard-snapshot.js.map +1 -0
  71. package/dist/dashboard-static.d.ts +61 -0
  72. package/dist/dashboard-static.js +326 -0
  73. package/dist/dashboard-static.js.map +1 -0
  74. package/dist/dispatch.js +11 -6
  75. package/dist/dispatch.js.map +1 -1
  76. package/dist/dynamic-pools.js +6 -4
  77. package/dist/dynamic-pools.js.map +1 -1
  78. package/dist/kernel/contracts.d.ts +4 -0
  79. package/dist/kernel/request-lifecycle.js +4 -1
  80. package/dist/kernel/request-lifecycle.js.map +1 -1
  81. package/dist/key-checker.d.ts +3 -1
  82. package/dist/key-checker.js +35 -11
  83. package/dist/key-checker.js.map +1 -1
  84. package/dist/key-import.d.ts +29 -0
  85. package/dist/key-import.js +160 -0
  86. package/dist/key-import.js.map +1 -0
  87. package/dist/log.d.ts +20 -2
  88. package/dist/log.js +53 -2
  89. package/dist/log.js.map +1 -1
  90. package/dist/offload.d.ts +9 -0
  91. package/dist/offload.js +7 -1
  92. package/dist/offload.js.map +1 -1
  93. package/dist/onboarding.d.ts +3 -3
  94. package/dist/onboarding.js +12 -6
  95. package/dist/onboarding.js.map +1 -1
  96. package/dist/openai-dialect.d.ts +42 -0
  97. package/dist/openai-dialect.js +388 -0
  98. package/dist/openai-dialect.js.map +1 -0
  99. package/dist/ping/cadence.d.ts +12 -3
  100. package/dist/ping/cadence.js +68 -15
  101. package/dist/ping/cadence.js.map +1 -1
  102. package/dist/ping/ping.d.ts +7 -3
  103. package/dist/ping/ping.js +11 -35
  104. package/dist/ping/ping.js.map +1 -1
  105. package/dist/ping/probe-cache.d.ts +14 -6
  106. package/dist/ping/probe-cache.js +20 -5
  107. package/dist/ping/probe-cache.js.map +1 -1
  108. package/dist/ping/runtime-telemetry.d.ts +2 -1
  109. package/dist/ping/runtime-telemetry.js +103 -10
  110. package/dist/ping/runtime-telemetry.js.map +1 -1
  111. package/dist/pool-health.d.ts +2 -0
  112. package/dist/pool-health.js +29 -13
  113. package/dist/pool-health.js.map +1 -1
  114. package/dist/quota-observation.d.ts +29 -0
  115. package/dist/quota-observation.js +249 -0
  116. package/dist/quota-observation.js.map +1 -0
  117. package/dist/refusal-interpretation.d.ts +13 -7
  118. package/dist/refusal-interpretation.js +260 -33
  119. package/dist/refusal-interpretation.js.map +1 -1
  120. package/dist/registry.d.ts +13 -2
  121. package/dist/registry.js +12 -4
  122. package/dist/registry.js.map +1 -1
  123. package/dist/repair.d.ts +4 -2
  124. package/dist/repair.js +15 -1
  125. package/dist/repair.js.map +1 -1
  126. package/dist/request-log.d.ts +2 -2
  127. package/dist/request-log.js +9 -1
  128. package/dist/request-log.js.map +1 -1
  129. package/dist/reshaper.d.ts +76 -11
  130. package/dist/reshaper.js +264 -29
  131. package/dist/reshaper.js.map +1 -1
  132. package/dist/resolved-attempt.d.ts +14 -0
  133. package/dist/resolved-attempt.js +21 -0
  134. package/dist/resolved-attempt.js.map +1 -0
  135. package/dist/routes/admin.js +7 -1
  136. package/dist/routes/admin.js.map +1 -1
  137. package/dist/secret-file-acl.d.ts +25 -0
  138. package/dist/secret-file-acl.js +37 -0
  139. package/dist/secret-file-acl.js.map +1 -0
  140. package/dist/server.d.ts +28 -3
  141. package/dist/server.js +1774 -467
  142. package/dist/server.js.map +1 -1
  143. package/dist/session-pin.d.ts +35 -0
  144. package/dist/session-pin.js +136 -0
  145. package/dist/session-pin.js.map +1 -0
  146. package/dist/stream-commit.d.ts +34 -0
  147. package/dist/stream-commit.js +325 -0
  148. package/dist/stream-commit.js.map +1 -0
  149. package/dist/target-facts.d.ts +23 -136
  150. package/dist/target-facts.js +138 -179
  151. package/dist/target-facts.js.map +1 -1
  152. package/dist/telemetry.d.ts +1 -25
  153. package/dist/telemetry.js +52 -45
  154. package/dist/telemetry.js.map +1 -1
  155. package/dist/think-tags.d.ts +34 -0
  156. package/dist/think-tags.js +219 -0
  157. package/dist/think-tags.js.map +1 -0
  158. package/dist/usage-observer.d.ts +34 -0
  159. package/dist/usage-observer.js +322 -0
  160. package/dist/usage-observer.js.map +1 -0
  161. package/dist/winenv.js +26 -4
  162. package/dist/winenv.js.map +1 -1
  163. package/docs/dashboard-bundle-inventory.json +16 -0
  164. package/package.json +29 -6
  165. package/skills/llm-relay/SKILL.md +48 -9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accounting-store-io.js","sourceRoot":"","sources":["../src/accounting-store-io.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,299 @@
1
+ /** The persisted accounting format is deliberately separate from the dashboard wire format. */
2
+ export declare const ACCOUNTING_STORE_VERSION: 1;
3
+ export declare const ACCOUNTING_DAY_SCHEMA: "accounting.day.v1";
4
+ export declare const ACCOUNTING_MINUTE_SCHEMA: "accounting.minute.v1";
5
+ export declare const ACCOUNTING_RECENT_SCHEMA: "accounting.recent.v1";
6
+ export declare const ACCOUNTING_LIFETIME_SCHEMA: "accounting.lifetime.v1";
7
+ export declare const ACCOUNTING_DEDUP_SCHEMA: "accounting.dedup.v1";
8
+ export declare const ACCOUNTING_MAX_SAMPLES = 25;
9
+ export declare const ACCOUNTING_MAX_ROWS_PER_CELL = 512;
10
+ export declare const ACCOUNTING_MAX_MINUTE_CELLS = 1440;
11
+ /** Aggregate rows across all UTC minute cells in one day. */
12
+ export declare const ACCOUNTING_MAX_DAY_ROWS = 4096;
13
+ export declare const ACCOUNTING_MAX_MONTHS = 720;
14
+ export declare const ACCOUNTING_MAX_RECENT_ROWS = 100;
15
+ export declare const ACCOUNTING_MAX_DETAIL_ATTEMPTS = 32;
16
+ export declare const ACCOUNTING_MAX_DEDUP_IDS = 16384;
17
+ export declare const ACCOUNTING_MAX_LOSS_MARKERS = 32;
18
+ export declare const ACCOUNTING_MAX_PACKET_ATTEMPTS = 10000;
19
+ export declare const ACCOUNTING_MAX_METHOD_BYTES = 256;
20
+ export declare const ACCOUNTING_MAX_COUNTER: number;
21
+ /** Maximum JSON UTF-8 size accepted for any persisted shard/document. */
22
+ export declare const ACCOUNTING_MAX_FILE_BYTES: number;
23
+ export type AccountingOutcome = "success" | "error" | "cancelled" | "unknown";
24
+ export type AccountingFailureKind = "timeout" | "provider_error" | "auth_error" | "rate_limit" | "aborted" | "protocol" | "unknown";
25
+ export type AccountingAttribution = "relay_held" | "caller_operated" | "unknown";
26
+ export type AccountingAttemptRole = "serve" | "repair";
27
+ export type AccountingParseResult<T> = {
28
+ readonly ok: true;
29
+ readonly value: Readonly<T>;
30
+ } | {
31
+ readonly ok: false;
32
+ readonly error: string;
33
+ };
34
+ export type AccountingAggregateKind = "request" | "attempt";
35
+ export type AccountingDimension = "provider" | "model" | "client" | "credential";
36
+ export type AccountingCoverageState = "complete" | "partial" | "unavailable" | "stale" | "empty";
37
+ export type AccountingCoverageReason = "retention_pruned" | "row_cap" | "detail_cap" | "dedup_cap" | "counter_overflow" | "corrupt_recovery" | "unknown" | null;
38
+ export type AccountingLossKind = "unknown" | "overflow" | "truncated" | "dedup" | "corrupt";
39
+ export interface AccountingAggregateTokenCellV1 {
40
+ readonly value: number | null;
41
+ readonly known: number;
42
+ readonly unknown: number;
43
+ readonly lost: number;
44
+ readonly overflow: boolean;
45
+ readonly observedAt: string | null;
46
+ }
47
+ export interface AccountingEstimatedTokenCellV1 extends AccountingAggregateTokenCellV1 {
48
+ /** A safe method label, or the explicit aggregate states mixed/unknown. */
49
+ readonly method: string | null;
50
+ }
51
+ export interface AccountingAggregateTokenTotalsV1 {
52
+ readonly reported: {
53
+ readonly reportedInput: AccountingAggregateTokenCellV1;
54
+ readonly reportedOutput: AccountingAggregateTokenCellV1;
55
+ readonly reportedCachedInput: AccountingAggregateTokenCellV1;
56
+ readonly cacheCreationInputTokens: AccountingAggregateTokenCellV1;
57
+ readonly cacheReadInputTokens: AccountingAggregateTokenCellV1;
58
+ };
59
+ readonly estimated: {
60
+ readonly estimatedInput: AccountingEstimatedTokenCellV1;
61
+ readonly estimatedOutput: AccountingEstimatedTokenCellV1;
62
+ };
63
+ }
64
+ export interface AccountingMetricCellV1 {
65
+ readonly sumMs: number | null;
66
+ readonly known: number;
67
+ readonly unknown: number;
68
+ readonly lost: number;
69
+ readonly overflow: boolean;
70
+ readonly samples: readonly number[];
71
+ readonly samplesDropped: number;
72
+ readonly observedAt: string | null;
73
+ }
74
+ export interface AccountingAggregateV1 {
75
+ readonly requests: number;
76
+ readonly attempts: number;
77
+ readonly served: number;
78
+ readonly errored: number;
79
+ readonly cancelled: number;
80
+ /** Attempt-side totals. Request-side totals are kept separately below. */
81
+ readonly tokens: AccountingAggregateTokenTotalsV1;
82
+ readonly requestTokens: AccountingAggregateTokenTotalsV1;
83
+ readonly latency: AccountingMetricCellV1;
84
+ readonly commit: AccountingMetricCellV1;
85
+ /** Pricing is intentionally not guessed by the accounting layer. */
86
+ readonly spend: null;
87
+ readonly unpricedRequests: number;
88
+ }
89
+ interface AccountingDimensionRowBaseV1 extends AccountingAggregateV1 {
90
+ readonly kind: AccountingAggregateKind;
91
+ readonly role: "request" | AccountingAttemptRole;
92
+ /** Full compound tuple. P2 derives provider/model/client/credential views later. */
93
+ readonly provider: string | null;
94
+ readonly model: string | null;
95
+ readonly client: string | null;
96
+ readonly credentialId: string | null;
97
+ readonly attribution: AccountingAttribution;
98
+ readonly outcome: AccountingOutcome;
99
+ readonly failureKind: AccountingFailureKind | null;
100
+ }
101
+ export interface AccountingRequestDimensionRowV1 extends AccountingDimensionRowBaseV1 {
102
+ readonly kind: "request";
103
+ readonly role: "request";
104
+ }
105
+ export interface AccountingAttemptDimensionRowV1 extends AccountingDimensionRowBaseV1 {
106
+ readonly kind: "attempt";
107
+ readonly role: AccountingAttemptRole;
108
+ }
109
+ export type AccountingDimensionRowV1 = AccountingRequestDimensionRowV1 | AccountingAttemptDimensionRowV1;
110
+ export type AccountingCompoundDimensionRowV1 = AccountingDimensionRowV1;
111
+ /** Compatibility alias used by the store implementation. */
112
+ export type AccountingAggregateRowV1 = AccountingDimensionRowV1;
113
+ export type AccountingAggregate = AccountingAggregateV1;
114
+ export type AccountingAggregateRow = AccountingDimensionRowV1;
115
+ export type AggregateTokenCell = AccountingAggregateTokenCellV1;
116
+ export type AggregateTokenTotals = AccountingAggregateTokenTotalsV1;
117
+ export type AggregateMetric = AccountingMetricCellV1;
118
+ export interface AccountingLossMarkerV1 {
119
+ readonly kind: AccountingLossKind;
120
+ readonly count: number;
121
+ readonly field: string | null;
122
+ }
123
+ export interface AccountingCoverageV1 {
124
+ readonly state: AccountingCoverageState;
125
+ readonly reason: AccountingCoverageReason;
126
+ readonly droppedRows: number;
127
+ readonly droppedRecent: number;
128
+ readonly droppedDetails: number;
129
+ readonly droppedDedup: number;
130
+ readonly retentionFrom: string | null;
131
+ readonly retentionDays: number | null;
132
+ readonly losses: readonly AccountingLossMarkerV1[];
133
+ }
134
+ export type AccountingCellCoverageV1 = Pick<AccountingCoverageV1, "state" | "reason" | "droppedRows" | "losses">;
135
+ export interface AccountingMinuteShardV1 {
136
+ readonly schema: "accounting.minute.v1";
137
+ readonly version: typeof ACCOUNTING_STORE_VERSION;
138
+ readonly date: string;
139
+ readonly minute: string;
140
+ readonly from: string;
141
+ readonly to: string;
142
+ readonly aggregate: AccountingAggregateV1;
143
+ readonly rows: readonly AccountingDimensionRowV1[];
144
+ readonly coverage: AccountingCellCoverageV1;
145
+ }
146
+ /** Compatibility name for callers that call a minute a cell. */
147
+ export type AccountingMinuteCellV1 = AccountingMinuteShardV1;
148
+ export type AccountingMinuteCell = AccountingMinuteShardV1;
149
+ export interface AccountingCompletedRequestDedupV1 {
150
+ readonly schema: typeof ACCOUNTING_DEDUP_SCHEMA;
151
+ readonly version: typeof ACCOUNTING_STORE_VERSION;
152
+ readonly date: string;
153
+ /** Sorted, unique IDs retained for exact replay suppression. */
154
+ readonly requestIds: readonly string[];
155
+ /** IDs older than the bounded set are not claimed to be deduplicated. */
156
+ readonly dropped: number;
157
+ readonly complete: boolean;
158
+ }
159
+ /** Compatibility alias for a store's per-day dedup index. */
160
+ export type AccountingDedupMetadataV1 = AccountingCompletedRequestDedupV1;
161
+ export interface AccountingDayShardV1 {
162
+ readonly schema: typeof ACCOUNTING_DAY_SCHEMA;
163
+ readonly version: typeof ACCOUNTING_STORE_VERSION;
164
+ readonly date: string;
165
+ /** Sparse UTC minute cells; absent keys mean no observed data. */
166
+ readonly cells: Readonly<Record<string, AccountingMinuteShardV1>>;
167
+ readonly dedup: AccountingCompletedRequestDedupV1;
168
+ readonly coverage: AccountingCoverageV1;
169
+ }
170
+ export type AccountingDayShard = AccountingDayShardV1;
171
+ export interface AccountingMonthAggregateV1 {
172
+ readonly month: string;
173
+ readonly aggregate: AccountingAggregateV1;
174
+ readonly coverage: AccountingCoverageV1;
175
+ }
176
+ export interface AccountingLifetimeV1 {
177
+ readonly schema: typeof ACCOUNTING_LIFETIME_SCHEMA;
178
+ readonly version: typeof ACCOUNTING_STORE_VERSION;
179
+ readonly firstRequestAt: string | null;
180
+ readonly lastRequestAt: string | null;
181
+ readonly aggregate: AccountingAggregateV1;
182
+ readonly months: Readonly<Record<string, AccountingMonthAggregateV1>>;
183
+ readonly coverage: AccountingCoverageV1;
184
+ }
185
+ export type AccountingLifetime = AccountingLifetimeV1;
186
+ export interface AccountingAttemptPacketV1 {
187
+ readonly requestId: string;
188
+ readonly attemptId: string;
189
+ readonly role: AccountingAttemptRole;
190
+ readonly startedAt: string;
191
+ readonly endedAt: string;
192
+ readonly outcome: AccountingOutcome;
193
+ readonly failureKind: AccountingFailureKind | null;
194
+ readonly attribution: AccountingAttribution;
195
+ readonly latencyMs: number | null;
196
+ readonly commitMs: number | null;
197
+ readonly provider: string | null;
198
+ readonly model: string | null;
199
+ readonly credentialId: string | null;
200
+ readonly tokens: AccountingAggregateTokenTotalsV1;
201
+ readonly spend: null;
202
+ }
203
+ export type AccountingAttemptPacket = AccountingAttemptPacketV1;
204
+ export interface AccountingDetailAttemptMetadataV1 {
205
+ readonly total: number;
206
+ readonly stored: number;
207
+ readonly dropped: number;
208
+ }
209
+ export interface AccountingRequestPacketV1 {
210
+ readonly requestId: string;
211
+ readonly startedAt: string;
212
+ readonly endedAt: string;
213
+ readonly client: string | null;
214
+ readonly attribution: AccountingAttribution;
215
+ readonly outcome: AccountingOutcome;
216
+ readonly failureKind: AccountingFailureKind | null;
217
+ readonly attemptCount: number;
218
+ readonly repairIncluded: boolean;
219
+ readonly winningAttemptId: string | null;
220
+ readonly commitAttemptId: string | null;
221
+ readonly latencyMs: number | null;
222
+ readonly commitMs: number | null;
223
+ readonly provider: string | null;
224
+ readonly model: string | null;
225
+ readonly credentialId: string | null;
226
+ readonly tokens: AccountingAggregateTokenTotalsV1;
227
+ readonly spend: null;
228
+ readonly attempts: readonly AccountingAttemptPacketV1[];
229
+ readonly attemptMetadata: AccountingDetailAttemptMetadataV1;
230
+ }
231
+ export type AccountingRequestPacket = AccountingRequestPacketV1;
232
+ export interface AccountingRecentV1 {
233
+ readonly schema: typeof ACCOUNTING_RECENT_SCHEMA;
234
+ readonly version: typeof ACCOUNTING_STORE_VERSION;
235
+ readonly rows: readonly AccountingRequestPacketV1[];
236
+ readonly details: Readonly<Record<string, AccountingRequestPacketV1>>;
237
+ readonly coverage: AccountingCoverageV1;
238
+ }
239
+ export declare function accountingSerializedBytes(value: unknown): number | null;
240
+ /** The one deep-freeze for the accounting modules; shared, not re-implemented. */
241
+ export declare function freezeDeep<T>(value: T): T;
242
+ export declare const isAccountingAggregateTokenCellV1: (value: unknown) => value is AccountingAggregateTokenCellV1;
243
+ export declare const isAccountingEstimatedTokenCellV1: (value: unknown) => value is AccountingEstimatedTokenCellV1;
244
+ export declare const isAccountingAggregateTokenTotalsV1: (value: unknown) => value is AccountingAggregateTokenTotalsV1;
245
+ export declare const isAccountingMetricCellV1: (value: unknown) => value is AccountingMetricCellV1;
246
+ export declare const isAccountingAggregateV1: (value: unknown) => value is AccountingAggregateV1;
247
+ export declare const isAccountingDimensionRowV1: (value: unknown) => value is AccountingDimensionRowV1;
248
+ export declare const isAccountingCoverageV1: (value: unknown) => value is AccountingCoverageV1;
249
+ export declare const isAccountingMinuteShardV1: (value: unknown) => value is AccountingMinuteShardV1;
250
+ export declare const isAccountingCompletedRequestDedupV1: (value: unknown) => value is AccountingCompletedRequestDedupV1;
251
+ export declare const isAccountingDayShardV1: (value: unknown) => value is AccountingDayShardV1;
252
+ export declare const isAccountingMonthAggregateV1: (value: unknown) => value is AccountingMonthAggregateV1;
253
+ export declare const isAccountingLifetimeV1: (value: unknown) => value is AccountingLifetimeV1;
254
+ export declare const isAccountingAttemptPacketV1: (value: unknown) => value is AccountingAttemptPacketV1;
255
+ export declare const isAccountingRequestPacketV1: (value: unknown) => value is AccountingRequestPacketV1;
256
+ export declare const isAccountingRecentV1: (value: unknown) => value is AccountingRecentV1;
257
+ export declare const parseAccountingAggregateTokenCellV1: (value: unknown) => AccountingParseResult<AccountingAggregateTokenCellV1>;
258
+ export declare const parseAccountingEstimatedTokenCellV1: (value: unknown) => AccountingParseResult<AccountingEstimatedTokenCellV1>;
259
+ export declare const parseAccountingAggregateTokenTotalsV1: (value: unknown) => AccountingParseResult<AccountingAggregateTokenTotalsV1>;
260
+ export declare const parseAccountingMetricCellV1: (value: unknown) => AccountingParseResult<AccountingMetricCellV1>;
261
+ export declare const parseAccountingAggregateV1: (value: unknown) => AccountingParseResult<AccountingAggregateV1>;
262
+ export declare const parseAccountingDimensionRowV1: (value: unknown) => AccountingParseResult<AccountingDimensionRowV1>;
263
+ export declare const parseAccountingCoverageV1: (value: unknown) => AccountingParseResult<AccountingCoverageV1>;
264
+ export declare const parseAccountingMinuteShardV1: (value: unknown) => AccountingParseResult<AccountingMinuteShardV1>;
265
+ export declare const parseAccountingCompletedRequestDedupV1: (value: unknown) => AccountingParseResult<AccountingCompletedRequestDedupV1>;
266
+ export declare const parseAccountingDayShardV1: (value: unknown) => AccountingParseResult<AccountingDayShardV1>;
267
+ export declare const parseAccountingMonthAggregateV1: (value: unknown) => AccountingParseResult<AccountingMonthAggregateV1>;
268
+ export declare const parseAccountingLifetimeV1: (value: unknown) => AccountingParseResult<AccountingLifetimeV1>;
269
+ export declare const parseAccountingAttemptPacketV1: (value: unknown) => AccountingParseResult<AccountingAttemptPacketV1>;
270
+ export declare const parseAccountingRequestPacketV1: (value: unknown) => AccountingParseResult<AccountingRequestPacketV1>;
271
+ export declare const parseAccountingRecentV1: (value: unknown) => AccountingParseResult<AccountingRecentV1>;
272
+ export declare const parseAccountingTokenCell: (value: unknown) => AccountingParseResult<AccountingAggregateTokenCellV1>;
273
+ export declare const parseAccountingEstimatedTokenCell: (value: unknown) => AccountingParseResult<AccountingEstimatedTokenCellV1>;
274
+ export declare const parseAccountingTokenTotals: (value: unknown) => AccountingParseResult<AccountingAggregateTokenTotalsV1>;
275
+ export declare const parseAccountingMetricCell: (value: unknown) => AccountingParseResult<AccountingMetricCellV1>;
276
+ export declare const parseAccountingAggregate: (value: unknown) => AccountingParseResult<AccountingAggregateV1>;
277
+ export declare const parseAccountingDimensionRow: (value: unknown) => AccountingParseResult<AccountingDimensionRowV1>;
278
+ export declare const parseAccountingCoverage: (value: unknown) => AccountingParseResult<AccountingCoverageV1>;
279
+ export declare const parseAccountingMinuteShard: (value: unknown) => AccountingParseResult<AccountingMinuteShardV1>;
280
+ export declare const parseAccountingDayShard: (value: unknown) => AccountingParseResult<AccountingDayShardV1>;
281
+ export declare const parseAccountingLifetime: (value: unknown) => AccountingParseResult<AccountingLifetimeV1>;
282
+ export declare const parseAccountingAttemptPacket: (value: unknown) => AccountingParseResult<AccountingAttemptPacketV1>;
283
+ export declare const parseAccountingRequestPacket: (value: unknown) => AccountingParseResult<AccountingRequestPacketV1>;
284
+ export declare const parseAccountingRecent: (value: unknown) => AccountingParseResult<AccountingRecentV1>;
285
+ /** Checked addition for counters. null means the exact safe-integer domain overflowed. */
286
+ export declare function checkedAddAccountingCounter(left: number, right: number): number | null;
287
+ export declare function mergeAccountingTokenCells(left: AccountingAggregateTokenCellV1, right: AccountingAggregateTokenCellV1): AccountingAggregateTokenCellV1 | null;
288
+ export declare function mergeAccountingEstimatedTokenCells(left: AccountingEstimatedTokenCellV1, right: AccountingEstimatedTokenCellV1): AccountingEstimatedTokenCellV1 | null;
289
+ export declare function mergeAccountingMetricCells(left: AccountingMetricCellV1, right: AccountingMetricCellV1): AccountingMetricCellV1 | null;
290
+ export declare const isAggregateTokenTotals: (value: unknown) => value is AccountingAggregateTokenTotalsV1;
291
+ export declare const isMetricCell: (value: unknown) => value is AccountingMetricCellV1;
292
+ export declare const isAccountingAggregate: (value: unknown) => value is AccountingAggregateV1;
293
+ export declare const isAccountingAggregateRow: (value: unknown) => value is AccountingDimensionRowV1;
294
+ export declare const isAccountingCoverage: (value: unknown) => value is AccountingCoverageV1;
295
+ export declare const isAccountingDay: (value: unknown) => value is AccountingDayShardV1;
296
+ export declare const isAccountingLifetime: (value: unknown) => value is AccountingLifetimeV1;
297
+ export declare const isAccountingRecent: (value: unknown) => value is AccountingRecentV1;
298
+ export declare const isAccountingDetailPacket: (value: unknown) => value is AccountingRequestPacketV1;
299
+ export {};