@scrawn/core 0.0.3 → 0.0.7
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.
- package/dist/config.d.ts +41 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +32 -0
- package/dist/config.js.map +1 -0
- package/dist/core/auth/apiKeyAuth.d.ts +58 -0
- package/dist/core/auth/apiKeyAuth.d.ts.map +1 -0
- package/dist/core/auth/apiKeyAuth.js +66 -0
- package/dist/core/auth/apiKeyAuth.js.map +1 -0
- package/dist/core/auth/baseAuth.d.ts +70 -0
- package/dist/core/auth/baseAuth.d.ts.map +1 -0
- package/dist/core/auth/baseAuth.js +22 -0
- package/dist/core/auth/baseAuth.js.map +1 -0
- package/dist/core/errors/index.d.ts +192 -0
- package/dist/core/errors/index.d.ts.map +1 -0
- package/dist/core/errors/index.js +280 -0
- package/dist/core/errors/index.js.map +1 -0
- package/dist/core/grpc/callContext.d.ts +18 -0
- package/dist/core/grpc/callContext.d.ts.map +1 -0
- package/dist/core/grpc/callContext.js +35 -0
- package/dist/core/grpc/callContext.js.map +1 -0
- package/dist/core/grpc/client.d.ts +16 -0
- package/dist/core/grpc/client.d.ts.map +1 -0
- package/dist/core/grpc/client.js +30 -0
- package/dist/core/grpc/client.js.map +1 -0
- package/dist/core/grpc/index.d.ts +14 -0
- package/dist/core/grpc/index.d.ts.map +1 -0
- package/dist/core/grpc/index.js +13 -0
- package/dist/core/grpc/index.js.map +1 -0
- package/dist/core/grpc/requestBuilder.d.ts +15 -0
- package/dist/core/grpc/requestBuilder.d.ts.map +1 -0
- package/dist/core/grpc/requestBuilder.js +56 -0
- package/dist/core/grpc/requestBuilder.js.map +1 -0
- package/dist/core/grpc/streamRequestBuilder.d.ts +13 -0
- package/dist/core/grpc/streamRequestBuilder.d.ts.map +1 -0
- package/dist/core/grpc/streamRequestBuilder.js +60 -0
- package/dist/core/grpc/streamRequestBuilder.js.map +1 -0
- package/dist/core/grpc/types.d.ts +7 -0
- package/dist/core/grpc/types.d.ts.map +1 -0
- package/dist/core/grpc/types.js +2 -0
- package/dist/core/grpc/types.js.map +1 -0
- package/dist/core/pricing/builders.d.ts +157 -0
- package/dist/core/pricing/builders.d.ts.map +1 -0
- package/dist/core/pricing/builders.js +218 -0
- package/dist/core/pricing/builders.js.map +1 -0
- package/dist/core/pricing/index.d.ts +30 -0
- package/dist/core/pricing/index.d.ts.map +1 -0
- package/dist/core/pricing/index.js +32 -0
- package/dist/core/pricing/index.js.map +1 -0
- package/dist/core/pricing/resolve.d.ts +39 -0
- package/dist/core/pricing/resolve.d.ts.map +1 -0
- package/dist/core/pricing/resolve.js +50 -0
- package/dist/core/pricing/resolve.js.map +1 -0
- package/dist/core/pricing/serialize.d.ts +55 -0
- package/dist/core/pricing/serialize.d.ts.map +1 -0
- package/dist/core/pricing/serialize.js +127 -0
- package/dist/core/pricing/serialize.js.map +1 -0
- package/dist/core/pricing/types.d.ts +122 -0
- package/dist/core/pricing/types.d.ts.map +1 -0
- package/dist/core/pricing/types.js +17 -0
- package/dist/core/pricing/types.js.map +1 -0
- package/dist/core/pricing/validate.d.ts +56 -0
- package/dist/core/pricing/validate.d.ts.map +1 -0
- package/dist/core/pricing/validate.js +162 -0
- package/dist/core/pricing/validate.js.map +1 -0
- package/dist/core/scrawn.d.ts +414 -0
- package/dist/core/scrawn.d.ts.map +1 -0
- package/dist/core/scrawn.js +822 -0
- package/dist/core/scrawn.js.map +1 -0
- package/dist/core/types/auth.d.ts +31 -0
- package/dist/core/types/auth.d.ts.map +1 -0
- package/dist/core/types/auth.js +2 -0
- package/dist/core/types/auth.js.map +1 -0
- package/dist/core/types/event.d.ts +320 -0
- package/dist/core/types/event.d.ts.map +1 -0
- package/dist/core/types/event.js +155 -0
- package/dist/core/types/event.js.map +1 -0
- package/dist/gen/auth/v1/auth_grpc_pb.d.ts +3 -0
- package/dist/gen/auth/v1/auth_pb.d.ts +65 -0
- package/dist/gen/data/v1/data_grpc_pb.d.ts +5 -0
- package/dist/gen/data/v1/data_pb.d.ts +254 -0
- package/dist/gen/event/v1/event_grpc_pb.d.ts +3 -0
- package/dist/gen/event/v1/event_pb.d.ts +342 -0
- package/dist/gen/event/v1/event_pb.js +573 -117
- package/dist/gen/payment/v1/payment_grpc_pb.d.ts +3 -0
- package/dist/gen/payment/v1/payment_pb.d.ts +45 -0
- package/dist/gen/query/v1/query_grpc_pb.d.ts +5 -0
- package/dist/gen/query/v1/query_pb.d.ts +381 -0
- package/dist/index.d.ts +20 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +25 -0
- package/dist/index.js.map +1 -0
- package/dist/utils/forkAsyncIterable.d.ts +13 -0
- package/dist/utils/forkAsyncIterable.d.ts.map +1 -0
- package/dist/utils/forkAsyncIterable.js +78 -0
- package/dist/utils/forkAsyncIterable.js.map +1 -0
- package/dist/utils/logger.d.ts +10 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +62 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/pathMatcher.d.ts +25 -0
- package/dist/utils/pathMatcher.d.ts.map +1 -0
- package/dist/utils/pathMatcher.js +46 -0
- package/dist/utils/pathMatcher.js.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scrawn.js","sourceRoot":"","sources":["../../src/core/scrawn.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { ApiKeyAuthCreds } from "../auth/apiKeyAuth.js";
|
|
2
|
+
/**
|
|
3
|
+
* Registry of all authentication methods and their credential types.
|
|
4
|
+
*
|
|
5
|
+
* When you add a new auth method, add it here:
|
|
6
|
+
* - Key: The auth method name (literal string)
|
|
7
|
+
* - Value: The credential type for that auth method
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```typescript
|
|
11
|
+
* // Adding OAuth
|
|
12
|
+
* export type AuthRegistry = {
|
|
13
|
+
* api: ApiKeyAuthCreds;
|
|
14
|
+
* oauth: OAuthAuthCreds; // Add new auth types here
|
|
15
|
+
* };
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export type AuthRegistry = {
|
|
19
|
+
api: ApiKeyAuthCreds;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Union of all auth method names.
|
|
23
|
+
* Automatically derived from AuthRegistry keys.
|
|
24
|
+
*/
|
|
25
|
+
export type AuthMethodName = keyof AuthRegistry;
|
|
26
|
+
/**
|
|
27
|
+
* Union of all credential types.
|
|
28
|
+
* Automatically derived from AuthRegistry values.
|
|
29
|
+
*/
|
|
30
|
+
export type AllCredentials = AuthRegistry[keyof AuthRegistry];
|
|
31
|
+
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/core/types/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,GAAG,EAAE,eAAe,CAAC;CAEtB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,YAAY,CAAC;AAEhD;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,YAAY,CAAC,MAAM,YAAY,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/core/types/auth.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,320 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import type { PriceExpr, ScrawnExpr } from "../pricing/types.js";
|
|
3
|
+
import type { ScrawnError } from "../errors/index.js";
|
|
4
|
+
/**
|
|
5
|
+
* Zod schema for event payload validation.
|
|
6
|
+
*
|
|
7
|
+
* Used by all event consumer methods to ensure consistent validation.
|
|
8
|
+
*
|
|
9
|
+
* Validates:
|
|
10
|
+
* - userId: non-empty string
|
|
11
|
+
* - Exactly one of: debitAmount (number), debitTag (string), or debitExpr (PriceExpr)
|
|
12
|
+
*/
|
|
13
|
+
export declare const EventPayloadSchema: z.ZodObject<{
|
|
14
|
+
userId: z.ZodString;
|
|
15
|
+
debitAmount: z.ZodOptional<z.ZodNumber>;
|
|
16
|
+
debitTag: z.ZodOptional<z.ZodString>;
|
|
17
|
+
debitExpr: z.ZodOptional<z.ZodCustom<PriceExpr<string>, PriceExpr<string>>>;
|
|
18
|
+
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
19
|
+
}, z.core.$strip>;
|
|
20
|
+
/**
|
|
21
|
+
* Debit field for pricing — exactly one of amount, tag, or expr.
|
|
22
|
+
*
|
|
23
|
+
* @typeParam TTag - The specific tag name literal type (defaults to `string`)
|
|
24
|
+
*/
|
|
25
|
+
export type DebitField<TTag extends string = string> = {
|
|
26
|
+
amount: number;
|
|
27
|
+
tag?: never;
|
|
28
|
+
expr?: never;
|
|
29
|
+
} | {
|
|
30
|
+
amount?: never;
|
|
31
|
+
tag: TTag;
|
|
32
|
+
expr?: never;
|
|
33
|
+
} | {
|
|
34
|
+
amount?: never;
|
|
35
|
+
tag?: never;
|
|
36
|
+
expr: ScrawnExpr<TTag>;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Payload structure for event tracking.
|
|
40
|
+
*
|
|
41
|
+
* Used by both basicUsageEventConsumer and middlewareEventConsumer.
|
|
42
|
+
*
|
|
43
|
+
* @typeParam TTag - The valid tag name union (defaults to `string` for untyped usage)
|
|
44
|
+
*
|
|
45
|
+
* @property userId - The user ID associated with this event
|
|
46
|
+
* @property debitAmount - (Optional) Direct amount to debit in cents
|
|
47
|
+
* @property debitTag - (Optional) Named price tag to look up amount from backend
|
|
48
|
+
* @property debitExpr - (Optional) Pricing expression for complex calculations
|
|
49
|
+
*
|
|
50
|
+
* Note: Exactly one of debitAmount, debitTag, or debitExpr must be provided.
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* ```typescript
|
|
54
|
+
* import { add, mul } from '@scrawn/core';
|
|
55
|
+
* import { biller } from './scrawn/biller';
|
|
56
|
+
*
|
|
57
|
+
* // Using direct amount
|
|
58
|
+
* const payload1: EventPayload = {
|
|
59
|
+
* userId: 'u123',
|
|
60
|
+
* debitAmount: 500 // 500 cents = $5.00
|
|
61
|
+
* };
|
|
62
|
+
*
|
|
63
|
+
* // Using price tag (compile-time checked)
|
|
64
|
+
* const payload2: EventPayload = {
|
|
65
|
+
* userId: 'u123',
|
|
66
|
+
* debitTag: 'PREMIUM_FEATURE'
|
|
67
|
+
* };
|
|
68
|
+
*
|
|
69
|
+
* // Using pricing expression
|
|
70
|
+
* const payload3: EventPayload = {
|
|
71
|
+
* userId: 'u123',
|
|
72
|
+
* debitExpr: add(mul(biller.tag('PREMIUM_CALL'), 3), biller.tag('EXTRA_FEE'), 250)
|
|
73
|
+
* };
|
|
74
|
+
* ```
|
|
75
|
+
*/
|
|
76
|
+
export type EventPayload<TTag extends string = string> = {
|
|
77
|
+
userId: string;
|
|
78
|
+
debitAmount?: number;
|
|
79
|
+
debitTag?: TTag;
|
|
80
|
+
debitExpr?: ScrawnExpr<TTag>;
|
|
81
|
+
metadata?: Record<string, unknown>;
|
|
82
|
+
};
|
|
83
|
+
/**
|
|
84
|
+
* Generic request object type for middleware compatibility.
|
|
85
|
+
* Supports Express, Fastify, and other Node.js frameworks.
|
|
86
|
+
*/
|
|
87
|
+
export interface MiddlewareRequest {
|
|
88
|
+
/** HTTP method (GET, POST, etc.) */
|
|
89
|
+
method?: string;
|
|
90
|
+
/** Request URL path */
|
|
91
|
+
url?: string;
|
|
92
|
+
/** Request path (alternative to url) */
|
|
93
|
+
path?: string;
|
|
94
|
+
/** Request body */
|
|
95
|
+
body?: any;
|
|
96
|
+
/** Request headers */
|
|
97
|
+
headers?: Record<string, string | string[] | undefined>;
|
|
98
|
+
/** Request query parameters */
|
|
99
|
+
query?: Record<string, any>;
|
|
100
|
+
/** Request params (route parameters) */
|
|
101
|
+
params?: Record<string, any>;
|
|
102
|
+
/** Any additional custom properties */
|
|
103
|
+
[key: string]: any;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Generic response object type for middleware compatibility.
|
|
107
|
+
*/
|
|
108
|
+
export interface MiddlewareResponse {
|
|
109
|
+
/** Status code setter */
|
|
110
|
+
status?: (code: number) => MiddlewareResponse;
|
|
111
|
+
/** JSON response sender */
|
|
112
|
+
json?: (data: any) => void;
|
|
113
|
+
/** Send response */
|
|
114
|
+
send?: (data: any) => void;
|
|
115
|
+
/** Any additional custom properties */
|
|
116
|
+
[key: string]: any;
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Generic next function type for middleware compatibility.
|
|
120
|
+
*/
|
|
121
|
+
export type MiddlewareNext = (error?: any) => void;
|
|
122
|
+
/**
|
|
123
|
+
* Extractor function that derives userId and debit info from a request.
|
|
124
|
+
*
|
|
125
|
+
* @param req - The incoming request object
|
|
126
|
+
* @returns An object containing userId and either debitAmount or debitTag, a Promise resolving to it, or null to skip tracking
|
|
127
|
+
*
|
|
128
|
+
* @example
|
|
129
|
+
* ```typescript
|
|
130
|
+
* // Using direct amount
|
|
131
|
+
* const extractor: PayloadExtractor = (req) => ({
|
|
132
|
+
* userId: req.headers['x-user-id'] as string,
|
|
133
|
+
* debitAmount: 1
|
|
134
|
+
* });
|
|
135
|
+
*
|
|
136
|
+
* // Using price tag
|
|
137
|
+
* const extractor: PayloadExtractor = (req) => ({
|
|
138
|
+
* userId: req.user.id,
|
|
139
|
+
* debitTag: 'STANDARD_API_CALL'
|
|
140
|
+
* });
|
|
141
|
+
*
|
|
142
|
+
* // Dynamic tag based on route
|
|
143
|
+
* const extractor: PayloadExtractor = (req) => {
|
|
144
|
+
* if (req.path === '/health') return null;
|
|
145
|
+
* return {
|
|
146
|
+
* userId: req.user.id,
|
|
147
|
+
* debitTag: req.path.startsWith('/premium') ? 'PREMIUM_API' : 'STANDARD_API'
|
|
148
|
+
* };
|
|
149
|
+
* };
|
|
150
|
+
* ```
|
|
151
|
+
*/
|
|
152
|
+
export type PayloadExtractor<TTag extends string = string> = (req: MiddlewareRequest) => EventPayload<TTag> | Promise<EventPayload<TTag>> | null | Promise<null>;
|
|
153
|
+
/**
|
|
154
|
+
* Context for manual retry in error callbacks.
|
|
155
|
+
* Only provided when the method supports manual retry (basicUsageEventConsumer).
|
|
156
|
+
*/
|
|
157
|
+
export interface RetryContext {
|
|
158
|
+
/** Re-attempt the failed operation using the same eventId and idempotencyKey. */
|
|
159
|
+
retry: () => Promise<void>;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Callback invoked when an event consumer encounters an error.
|
|
163
|
+
*
|
|
164
|
+
* For basicUsageEventConsumer, a {@link RetryContext} with a `.retry()` method
|
|
165
|
+
* is provided as the second argument, allowing manual re-attempt.
|
|
166
|
+
*
|
|
167
|
+
* For middlewareEventConsumer and aiTokenStreamConsumer, no context is provided.
|
|
168
|
+
*/
|
|
169
|
+
export type EventConsumerErrorCallback = (error: ScrawnError, context?: RetryContext) => void | Promise<void>;
|
|
170
|
+
/**
|
|
171
|
+
* Configuration options for the Express middleware event consumer.
|
|
172
|
+
*
|
|
173
|
+
* @property extractor - Function to extract userId and debit info from request. Return null to skip tracking.
|
|
174
|
+
* @property whitelist - Optional array of endpoint patterns to track. Supports wildcards (* for single segment, ** for multiple segments). Takes precedence over blacklist.
|
|
175
|
+
* @property blacklist - Optional array of endpoint patterns to exclude from tracking. Same wildcard support as whitelist. Only applies to endpoints not in whitelist.
|
|
176
|
+
*
|
|
177
|
+
* @example
|
|
178
|
+
* ```typescript
|
|
179
|
+
* // Using direct amounts
|
|
180
|
+
* const config1: MiddlewareEventConfig = {
|
|
181
|
+
* extractor: (req) => ({
|
|
182
|
+
* userId: req.user?.id,
|
|
183
|
+
* debitAmount: calculateCost(req)
|
|
184
|
+
* }),
|
|
185
|
+
* whitelist: ['/api/expensive-operation', '/api/premium-feature'],
|
|
186
|
+
* blacklist: ['/api/health']
|
|
187
|
+
* };
|
|
188
|
+
*
|
|
189
|
+
* // Using price tags
|
|
190
|
+
* const config2: MiddlewareEventConfig = {
|
|
191
|
+
* extractor: (req) => ({
|
|
192
|
+
* userId: req.user?.id,
|
|
193
|
+
* debitTag: req.path.startsWith('/premium') ? 'PREMIUM_API' : 'STANDARD_API'
|
|
194
|
+
* }),
|
|
195
|
+
* whitelist: ['/api/**'],
|
|
196
|
+
* blacklist: ['**.tmp']
|
|
197
|
+
* };
|
|
198
|
+
* ```
|
|
199
|
+
*/
|
|
200
|
+
export interface MiddlewareEventConfig<TTag extends string = string> {
|
|
201
|
+
/** Function to extract event payload from request. Return null to skip tracking. */
|
|
202
|
+
extractor: PayloadExtractor<TTag>;
|
|
203
|
+
/** Optional patterns to track (exact match or wildcards: * for single segment, ** for multi-segment). Takes precedence over blacklist. */
|
|
204
|
+
whitelist?: string[];
|
|
205
|
+
/** Optional patterns to exclude (exact match or wildcards: * for single segment, ** for multi-segment). Only applies to endpoints not in whitelist. */
|
|
206
|
+
blacklist?: string[];
|
|
207
|
+
/** Optional callback for handling event consumer errors. */
|
|
208
|
+
onError?: EventConsumerErrorCallback;
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Zod schema for AI token usage payload validation.
|
|
212
|
+
*
|
|
213
|
+
* Used by aiTokenStreamConsumer to validate each token usage event.
|
|
214
|
+
*
|
|
215
|
+
* Validates:
|
|
216
|
+
* - userId: non-empty string
|
|
217
|
+
* - model: non-empty string (e.g., 'gpt-4', 'claude-3')
|
|
218
|
+
* - inputTokens: non-negative integer
|
|
219
|
+
* - outputTokens: non-negative integer
|
|
220
|
+
* - inputDebit: exactly one of amount (number), tag (string), or expr (PriceExpr)
|
|
221
|
+
* - outputDebit: exactly one of amount (number), tag (string), or expr (PriceExpr)
|
|
222
|
+
* - provider: optional non-empty string
|
|
223
|
+
* - inputCacheTokens: optional non-negative integer
|
|
224
|
+
* - inputCacheDebit: optional one of amount, tag, or expr
|
|
225
|
+
*/
|
|
226
|
+
export declare const AITokenUsagePayloadSchema: z.ZodObject<{
|
|
227
|
+
userId: z.ZodString;
|
|
228
|
+
model: z.ZodString;
|
|
229
|
+
inputTokens: z.ZodNumber;
|
|
230
|
+
outputTokens: z.ZodNumber;
|
|
231
|
+
inputDebit: z.ZodObject<{
|
|
232
|
+
amount: z.ZodOptional<z.ZodNumber>;
|
|
233
|
+
tag: z.ZodOptional<z.ZodString>;
|
|
234
|
+
expr: z.ZodOptional<z.ZodCustom<PriceExpr<string>, PriceExpr<string>>>;
|
|
235
|
+
}, z.core.$strip>;
|
|
236
|
+
outputDebit: z.ZodObject<{
|
|
237
|
+
amount: z.ZodOptional<z.ZodNumber>;
|
|
238
|
+
tag: z.ZodOptional<z.ZodString>;
|
|
239
|
+
expr: z.ZodOptional<z.ZodCustom<PriceExpr<string>, PriceExpr<string>>>;
|
|
240
|
+
}, z.core.$strip>;
|
|
241
|
+
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
242
|
+
provider: z.ZodOptional<z.ZodString>;
|
|
243
|
+
inputCacheTokens: z.ZodOptional<z.ZodNumber>;
|
|
244
|
+
inputCacheDebit: z.ZodOptional<z.ZodObject<{
|
|
245
|
+
amount: z.ZodOptional<z.ZodNumber>;
|
|
246
|
+
tag: z.ZodOptional<z.ZodString>;
|
|
247
|
+
expr: z.ZodOptional<z.ZodCustom<PriceExpr<string>, PriceExpr<string>>>;
|
|
248
|
+
}, z.core.$strip>>;
|
|
249
|
+
}, z.core.$strip>;
|
|
250
|
+
/**
|
|
251
|
+
* Payload structure for AI token usage tracking.
|
|
252
|
+
*
|
|
253
|
+
* Used by aiTokenStreamConsumer to track AI model token consumption.
|
|
254
|
+
* Each payload represents a single usage event (e.g., one chunk or one request).
|
|
255
|
+
*
|
|
256
|
+
* @typeParam TTag - The valid tag name union (defaults to `string` for untyped usage)
|
|
257
|
+
*
|
|
258
|
+
* @property userId - The user ID associated with this token usage
|
|
259
|
+
* @property model - The AI model identifier (e.g., 'gpt-4', 'claude-3-opus')
|
|
260
|
+
* @property inputTokens - Number of input/prompt tokens consumed
|
|
261
|
+
* @property outputTokens - Number of output/completion tokens consumed
|
|
262
|
+
* @property inputDebit - Billing info for input tokens (amount, tag, or expr)
|
|
263
|
+
* @property outputDebit - Billing info for output tokens (amount, tag, or expr)
|
|
264
|
+
* @property metadata - (Optional) Arbitrary metadata to associate with the event
|
|
265
|
+
* @property provider - (Optional) LLM provider identifier (e.g. 'openai', 'anthropic')
|
|
266
|
+
* @property inputCacheTokens - (Optional) Cached input tokens count (typically cheaper)
|
|
267
|
+
* @property inputCacheDebit - (Optional) Debit pricing for cached input tokens
|
|
268
|
+
*
|
|
269
|
+
* @example
|
|
270
|
+
* ```typescript
|
|
271
|
+
* import { mul, inputTokens, outputTokens } from '@scrawn/core';
|
|
272
|
+
* import { biller } from './scrawn/biller';
|
|
273
|
+
*
|
|
274
|
+
* // Using direct amounts
|
|
275
|
+
* const payload1: AITokenUsagePayload = {
|
|
276
|
+
* userId: 'u123',
|
|
277
|
+
* model: 'gpt-4',
|
|
278
|
+
* inputTokens: 100,
|
|
279
|
+
* outputTokens: 50,
|
|
280
|
+
* inputDebit: { amount: 3 }, // 3 cents
|
|
281
|
+
* outputDebit: { amount: 6 } // 6 cents
|
|
282
|
+
* };
|
|
283
|
+
*
|
|
284
|
+
* // Using price tags (compile-time checked)
|
|
285
|
+
* const payload2: AITokenUsagePayload = {
|
|
286
|
+
* userId: 'u123',
|
|
287
|
+
* model: 'claude-3-opus',
|
|
288
|
+
* inputTokens: 200,
|
|
289
|
+
* outputTokens: 100,
|
|
290
|
+
* inputDebit: { tag: 'CLAUDE_INPUT' },
|
|
291
|
+
* outputDebit: { tag: 'CLAUDE_OUTPUT' }
|
|
292
|
+
* };
|
|
293
|
+
*
|
|
294
|
+
* // Using pricing expressions (e.g., per-token pricing)
|
|
295
|
+
* const payload3: AITokenUsagePayload = {
|
|
296
|
+
* userId: 'u123',
|
|
297
|
+
* model: 'gpt-4',
|
|
298
|
+
* inputTokens: 100,
|
|
299
|
+
* outputTokens: 50,
|
|
300
|
+
* inputDebit: { expr: mul(biller.tag('GPT_INPUT_RATE'), inputTokens()) },
|
|
301
|
+
* outputDebit: { expr: mul(biller.tag('GPT_OUTPUT_RATE'), outputTokens()) }
|
|
302
|
+
* };
|
|
303
|
+
* ```
|
|
304
|
+
*/
|
|
305
|
+
export type AITokenUsagePayload<TTag extends string = string> = {
|
|
306
|
+
userId: string;
|
|
307
|
+
model: string;
|
|
308
|
+
inputTokens: number;
|
|
309
|
+
outputTokens: number;
|
|
310
|
+
inputDebit: DebitField<TTag>;
|
|
311
|
+
outputDebit: DebitField<TTag>;
|
|
312
|
+
metadata?: Record<string, unknown>;
|
|
313
|
+
/** Optional LLM provider identifier (e.g. 'openai', 'anthropic'). */
|
|
314
|
+
provider?: string;
|
|
315
|
+
/** Number of cached input tokens used (typically cheaper). */
|
|
316
|
+
inputCacheTokens?: number;
|
|
317
|
+
/** Debit pricing for cached input tokens (oneof amount, tag, or expr). */
|
|
318
|
+
inputCacheDebit?: DebitField<TTag>;
|
|
319
|
+
};
|
|
320
|
+
//# sourceMappingURL=event.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../../src/core/types/event.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { isValidExpr, containsTokenExpr } from "../pricing/validate.js";
|
|
3
|
+
/**
|
|
4
|
+
* Valid expression kinds including token placeholders.
|
|
5
|
+
* Used for AI token usage payloads where token placeholders are allowed.
|
|
6
|
+
*/
|
|
7
|
+
const ALL_EXPR_KINDS = ["amount", "tag", "op", "inputTokens", "outputTokens", "exprRef"];
|
|
8
|
+
/**
|
|
9
|
+
* Custom zod schema for PriceExpr validation (allows token placeholders).
|
|
10
|
+
* Used in AI token usage payloads where inputTokens()/outputTokens() are valid.
|
|
11
|
+
*/
|
|
12
|
+
const PriceExprSchema = z.custom((val) => {
|
|
13
|
+
if (val === null || val === undefined || typeof val !== "object") {
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
const expr = val;
|
|
17
|
+
// Check that it has a valid kind (including token placeholders)
|
|
18
|
+
if (!ALL_EXPR_KINDS.includes(expr.kind)) {
|
|
19
|
+
return false;
|
|
20
|
+
}
|
|
21
|
+
// Use the validation function
|
|
22
|
+
return isValidExpr(expr);
|
|
23
|
+
}, {
|
|
24
|
+
message: "Must be a valid pricing expression (use tag(), add(), sub(), mul(), div(), amount(), inputTokens(), or outputTokens())",
|
|
25
|
+
});
|
|
26
|
+
/**
|
|
27
|
+
* Custom zod schema for PriceExpr validation (rejects token placeholders).
|
|
28
|
+
* Used in SDK call / middleware event payloads where inputTokens()/outputTokens()
|
|
29
|
+
* are NOT valid — they only make sense in AI token streaming context.
|
|
30
|
+
*/
|
|
31
|
+
const PriceExprNoTokensSchema = z.custom((val) => {
|
|
32
|
+
if (val === null || val === undefined || typeof val !== "object") {
|
|
33
|
+
return false;
|
|
34
|
+
}
|
|
35
|
+
const expr = val;
|
|
36
|
+
// Check that it has a valid kind
|
|
37
|
+
if (!ALL_EXPR_KINDS.includes(expr.kind)) {
|
|
38
|
+
return false;
|
|
39
|
+
}
|
|
40
|
+
// Use the validation function
|
|
41
|
+
if (!isValidExpr(expr)) {
|
|
42
|
+
return false;
|
|
43
|
+
}
|
|
44
|
+
// Reject token placeholders in SDK call context
|
|
45
|
+
if (containsTokenExpr(expr)) {
|
|
46
|
+
return false;
|
|
47
|
+
}
|
|
48
|
+
return true;
|
|
49
|
+
}, {
|
|
50
|
+
message: "Must be a valid pricing expression (use tag(), add(), sub(), mul(), div(), or amount()). " +
|
|
51
|
+
"inputTokens() and outputTokens() are only valid in AI token usage expressions.",
|
|
52
|
+
});
|
|
53
|
+
/**
|
|
54
|
+
* Regex for validating tag names: ALL CAPS with underscores only.
|
|
55
|
+
* No lowercase, digits, or hyphens allowed.
|
|
56
|
+
*/
|
|
57
|
+
const TAG_NAME_REGEX = /^[A-Z_]+$/;
|
|
58
|
+
/**
|
|
59
|
+
* Zod schema for event payload validation.
|
|
60
|
+
*
|
|
61
|
+
* Used by all event consumer methods to ensure consistent validation.
|
|
62
|
+
*
|
|
63
|
+
* Validates:
|
|
64
|
+
* - userId: non-empty string
|
|
65
|
+
* - Exactly one of: debitAmount (number), debitTag (string), or debitExpr (PriceExpr)
|
|
66
|
+
*/
|
|
67
|
+
export const EventPayloadSchema = z
|
|
68
|
+
.object({
|
|
69
|
+
userId: z.string().min(1, "userId must be a non-empty string"),
|
|
70
|
+
debitAmount: z
|
|
71
|
+
.number()
|
|
72
|
+
.positive("debitAmount must be a positive number")
|
|
73
|
+
.optional(),
|
|
74
|
+
debitTag: z
|
|
75
|
+
.string()
|
|
76
|
+
.min(1, "debitTag must be a non-empty string")
|
|
77
|
+
.regex(TAG_NAME_REGEX, "debitTag must be ALL CAPS with underscores only (e.g., PREMIUM_CALL, FEE). No lowercase, digits, or hyphens allowed.")
|
|
78
|
+
.optional(),
|
|
79
|
+
debitExpr: PriceExprNoTokensSchema.optional(),
|
|
80
|
+
metadata: z.record(z.string(), z.unknown()).optional(),
|
|
81
|
+
})
|
|
82
|
+
.refine((data) => {
|
|
83
|
+
const defined = [
|
|
84
|
+
data.debitAmount !== undefined,
|
|
85
|
+
data.debitTag !== undefined,
|
|
86
|
+
data.debitExpr !== undefined,
|
|
87
|
+
].filter(Boolean).length;
|
|
88
|
+
return defined === 1;
|
|
89
|
+
}, {
|
|
90
|
+
message: "Exactly one of debitAmount, debitTag, or debitExpr must be provided",
|
|
91
|
+
});
|
|
92
|
+
/**
|
|
93
|
+
* Debit field schema for AI token usage.
|
|
94
|
+
*
|
|
95
|
+
* Represents a direct amount, a named price tag, or a pricing expression for billing.
|
|
96
|
+
* Exactly one of amount, tag, or expr must be provided.
|
|
97
|
+
* Tag names must be ALL CAPS with underscores only (e.g., CLAUDE_INPUT, GPT4_OUTPUT_RATE).
|
|
98
|
+
*/
|
|
99
|
+
const DebitFieldSchema = z
|
|
100
|
+
.object({
|
|
101
|
+
amount: z.number().nonnegative("amount must be non-negative").optional(),
|
|
102
|
+
tag: z
|
|
103
|
+
.string()
|
|
104
|
+
.min(1, "tag must be a non-empty string")
|
|
105
|
+
.regex(TAG_NAME_REGEX, "tag must be ALL CAPS with underscores only (e.g., CLAUDE_INPUT, FEE). No lowercase, digits, or hyphens allowed.")
|
|
106
|
+
.optional(),
|
|
107
|
+
expr: PriceExprSchema.optional(),
|
|
108
|
+
})
|
|
109
|
+
.refine((data) => {
|
|
110
|
+
const defined = [
|
|
111
|
+
data.amount !== undefined,
|
|
112
|
+
data.tag !== undefined,
|
|
113
|
+
data.expr !== undefined,
|
|
114
|
+
].filter(Boolean).length;
|
|
115
|
+
return defined === 1;
|
|
116
|
+
}, { message: "Exactly one of amount, tag, or expr must be provided" });
|
|
117
|
+
/**
|
|
118
|
+
* Zod schema for AI token usage payload validation.
|
|
119
|
+
*
|
|
120
|
+
* Used by aiTokenStreamConsumer to validate each token usage event.
|
|
121
|
+
*
|
|
122
|
+
* Validates:
|
|
123
|
+
* - userId: non-empty string
|
|
124
|
+
* - model: non-empty string (e.g., 'gpt-4', 'claude-3')
|
|
125
|
+
* - inputTokens: non-negative integer
|
|
126
|
+
* - outputTokens: non-negative integer
|
|
127
|
+
* - inputDebit: exactly one of amount (number), tag (string), or expr (PriceExpr)
|
|
128
|
+
* - outputDebit: exactly one of amount (number), tag (string), or expr (PriceExpr)
|
|
129
|
+
* - provider: optional non-empty string
|
|
130
|
+
* - inputCacheTokens: optional non-negative integer
|
|
131
|
+
* - inputCacheDebit: optional one of amount, tag, or expr
|
|
132
|
+
*/
|
|
133
|
+
export const AITokenUsagePayloadSchema = z.object({
|
|
134
|
+
userId: z.string().min(1, "userId must be a non-empty string"),
|
|
135
|
+
model: z.string().min(1, "model must be a non-empty string"),
|
|
136
|
+
inputTokens: z
|
|
137
|
+
.number()
|
|
138
|
+
.int("inputTokens must be an integer")
|
|
139
|
+
.nonnegative("inputTokens must be non-negative"),
|
|
140
|
+
outputTokens: z
|
|
141
|
+
.number()
|
|
142
|
+
.int("outputTokens must be an integer")
|
|
143
|
+
.nonnegative("outputTokens must be non-negative"),
|
|
144
|
+
inputDebit: DebitFieldSchema,
|
|
145
|
+
outputDebit: DebitFieldSchema,
|
|
146
|
+
metadata: z.record(z.string(), z.unknown()).optional(),
|
|
147
|
+
provider: z.string().min(1, "provider must be a non-empty string").optional(),
|
|
148
|
+
inputCacheTokens: z
|
|
149
|
+
.number()
|
|
150
|
+
.int("inputCacheTokens must be an integer")
|
|
151
|
+
.nonnegative("inputCacheTokens must be non-negative")
|
|
152
|
+
.optional(),
|
|
153
|
+
inputCacheDebit: DebitFieldSchema.optional(),
|
|
154
|
+
});
|
|
155
|
+
//# sourceMappingURL=event.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event.js","sourceRoot":"","sources":["../../../src/core/types/event.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
// package: auth.v1
|
|
2
|
+
// file: auth/v1/auth.proto
|
|
3
|
+
|
|
4
|
+
import * as jspb from "google-protobuf";
|
|
5
|
+
|
|
6
|
+
export class CreateAPIKeyRequest extends jspb.Message {
|
|
7
|
+
getName(): string;
|
|
8
|
+
setName(value: string): void;
|
|
9
|
+
|
|
10
|
+
getExpiresin(): number;
|
|
11
|
+
setExpiresin(value: number): void;
|
|
12
|
+
|
|
13
|
+
serializeBinary(): Uint8Array;
|
|
14
|
+
toObject(includeInstance?: boolean): CreateAPIKeyRequest.AsObject;
|
|
15
|
+
static toObject(includeInstance: boolean, msg: CreateAPIKeyRequest): CreateAPIKeyRequest.AsObject;
|
|
16
|
+
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
|
17
|
+
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
|
18
|
+
static serializeBinaryToWriter(message: CreateAPIKeyRequest, writer: jspb.BinaryWriter): void;
|
|
19
|
+
static deserializeBinary(bytes: Uint8Array): CreateAPIKeyRequest;
|
|
20
|
+
static deserializeBinaryFromReader(message: CreateAPIKeyRequest, reader: jspb.BinaryReader): CreateAPIKeyRequest;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export namespace CreateAPIKeyRequest {
|
|
24
|
+
export type AsObject = {
|
|
25
|
+
name: string,
|
|
26
|
+
expiresin: number,
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export class CreateAPIKeyResponse extends jspb.Message {
|
|
31
|
+
getApikeyid(): string;
|
|
32
|
+
setApikeyid(value: string): void;
|
|
33
|
+
|
|
34
|
+
getApikey(): string;
|
|
35
|
+
setApikey(value: string): void;
|
|
36
|
+
|
|
37
|
+
getName(): string;
|
|
38
|
+
setName(value: string): void;
|
|
39
|
+
|
|
40
|
+
getCreatedat(): string;
|
|
41
|
+
setCreatedat(value: string): void;
|
|
42
|
+
|
|
43
|
+
getExpiresat(): string;
|
|
44
|
+
setExpiresat(value: string): void;
|
|
45
|
+
|
|
46
|
+
serializeBinary(): Uint8Array;
|
|
47
|
+
toObject(includeInstance?: boolean): CreateAPIKeyResponse.AsObject;
|
|
48
|
+
static toObject(includeInstance: boolean, msg: CreateAPIKeyResponse): CreateAPIKeyResponse.AsObject;
|
|
49
|
+
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
|
|
50
|
+
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
|
|
51
|
+
static serializeBinaryToWriter(message: CreateAPIKeyResponse, writer: jspb.BinaryWriter): void;
|
|
52
|
+
static deserializeBinary(bytes: Uint8Array): CreateAPIKeyResponse;
|
|
53
|
+
static deserializeBinaryFromReader(message: CreateAPIKeyResponse, reader: jspb.BinaryReader): CreateAPIKeyResponse;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export namespace CreateAPIKeyResponse {
|
|
57
|
+
export type AsObject = {
|
|
58
|
+
apikeyid: string,
|
|
59
|
+
apikey: string,
|
|
60
|
+
name: string,
|
|
61
|
+
createdat: string,
|
|
62
|
+
expiresat: string,
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|