@kaana.ai/contracts 0.0.0-stage → 4.4.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.
- package/LICENSE +673 -0
- package/NOTICE +21 -0
- package/dist/index.d.ts +29 -0
- package/dist/index.js +29 -0
- package/dist/internal/attribution.d.ts +116 -0
- package/dist/internal/attribution.js +82 -0
- package/dist/internal/canonical.d.ts +31 -0
- package/dist/internal/canonical.js +57 -0
- package/dist/internal/catalogue.d.ts +1059 -0
- package/dist/internal/catalogue.js +389 -0
- package/dist/internal/credentialControl.d.ts +329 -0
- package/dist/internal/credentialControl.js +256 -0
- package/dist/internal/decisions.d.ts +245 -0
- package/dist/internal/decisions.js +69 -0
- package/dist/internal/economics.d.ts +27 -0
- package/dist/internal/economics.js +26 -0
- package/dist/internal/embeddings.d.ts +164 -0
- package/dist/internal/embeddings.js +59 -0
- package/dist/internal/errors.d.ts +185 -0
- package/dist/internal/errors.js +211 -0
- package/dist/internal/grant.d.ts +699 -0
- package/dist/internal/grant.js +445 -0
- package/dist/internal/identifiers.d.ts +63 -0
- package/dist/internal/identifiers.js +65 -0
- package/dist/internal/privateAutoExecution.d.ts +158 -0
- package/dist/internal/privateAutoExecution.js +188 -0
- package/dist/internal/realtime.d.ts +1005 -0
- package/dist/internal/realtime.js +187 -0
- package/dist/internal/request.d.ts +1079 -0
- package/dist/internal/request.js +404 -0
- package/dist/internal/routing.d.ts +90 -0
- package/dist/internal/routing.js +139 -0
- package/dist/internal/scopedExecution.d.ts +74 -0
- package/dist/internal/scopedExecution.js +61 -0
- package/dist/internal/settlement.d.ts +205 -0
- package/dist/internal/settlement.js +71 -0
- package/dist/internal/streamEvents.d.ts +422 -0
- package/dist/internal/streamEvents.js +171 -0
- package/dist/internal/usage.d.ts +127 -0
- package/dist/internal/usage.js +109 -0
- package/dist/internal.d.ts +30 -0
- package/dist/internal.js +30 -0
- package/dist/public/audio.d.ts +347 -0
- package/dist/public/audio.js +236 -0
- package/dist/public/audioFormats.d.ts +64 -0
- package/dist/public/audioFormats.js +60 -0
- package/dist/public/catalogue.d.ts +914 -0
- package/dist/public/catalogue.js +516 -0
- package/dist/public/chatCompletions.d.ts +381 -0
- package/dist/public/chatCompletions.js +321 -0
- package/dist/public/decisions.d.ts +182 -0
- package/dist/public/decisions.js +257 -0
- package/dist/public/embeddings.d.ts +34 -0
- package/dist/public/embeddings.js +66 -0
- package/dist/public/errors.d.ts +195 -0
- package/dist/public/errors.js +274 -0
- package/dist/public/generations.d.ts +330 -0
- package/dist/public/generations.js +121 -0
- package/dist/public/identifiers.d.ts +139 -0
- package/dist/public/identifiers.js +160 -0
- package/dist/public/images.d.ts +36 -0
- package/dist/public/images.js +36 -0
- package/dist/public/messages.d.ts +297 -0
- package/dist/public/messages.js +251 -0
- package/dist/public/money.d.ts +308 -0
- package/dist/public/money.js +237 -0
- package/dist/public/policy.d.ts +19 -0
- package/dist/public/policy.js +20 -0
- package/dist/public/realtime.d.ts +2006 -0
- package/dist/public/realtime.js +797 -0
- package/dist/public/responses.d.ts +253 -0
- package/dist/public/responses.js +95 -0
- package/dist/public/streamEvents.d.ts +372 -0
- package/dist/public/streamEvents.js +157 -0
- package/dist/public/version.d.ts +184 -0
- package/dist/public/version.js +184 -0
- package/openapi.json +6967 -0
- package/package.json +44 -4
- package/README.md +0 -3
|
@@ -0,0 +1,699 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The grant: how Oxy decides who may spend, for every billable request Kaana
|
|
3
|
+
* serves on `https://kaana.ai/v1` (Kaana ADR 0002, decisions 3 and 4).
|
|
4
|
+
*
|
|
5
|
+
* Kaana parses and validates the public request, then asks
|
|
6
|
+
* `POST https://api.oxy.so/internal/kaana/v1/authorizations` with the caller's
|
|
7
|
+
* credential VERBATIM and content-free facts — never the prompt, the audio or
|
|
8
|
+
* the output. Oxy resolves the principal and lane, applies the Console policy,
|
|
9
|
+
* capacity and rate limits, quotes and RESERVES with its ledger, and answers
|
|
10
|
+
* with a grant signed under {@link GRANT_SIGNATURE_DOMAIN}. Kaana verifies the
|
|
11
|
+
* signature, the {@link GRANT_EXECUTION_WINDOW_MS} window and `bodySha256`, and
|
|
12
|
+
* executes inside the grant; without a valid grant no provider is called.
|
|
13
|
+
*
|
|
14
|
+
* The grant carries the funding model as it is today, field for field: it
|
|
15
|
+
* invents no policy. New in contract set 4.0.0; it replaces what the v1–v4
|
|
16
|
+
* envelopes signed (`authorizedRoutes`, the scoped and Private Auto bindings).
|
|
17
|
+
*/
|
|
18
|
+
import { z } from 'zod';
|
|
19
|
+
/** The signature domain of a grant. Same Ed25519 keys as the envelope (`KAANA_EDGE_PUBLIC_KEYS`). */
|
|
20
|
+
export declare const GRANT_SIGNATURE_DOMAIN = "oxy-kaana-grant:v1";
|
|
21
|
+
/** How long after `issuedAt` Kaana may START executing a grant. */
|
|
22
|
+
export declare const GRANT_EXECUTION_WINDOW_MS = 60000;
|
|
23
|
+
/**
|
|
24
|
+
* The bytes a signature covers, the scheme every signed Oxy↔Kaana body already
|
|
25
|
+
* uses (`internal/edgeauth`): the domain, the key id, the Unix-millisecond
|
|
26
|
+
* timestamp and the lowercase hex SHA-256 of the exact body bytes, joined by
|
|
27
|
+
* `\n` with no trailing newline. The key id, timestamp and signature travel in
|
|
28
|
+
* the `X-Oxy-Kaana-Key-Id`, `X-Oxy-Kaana-Timestamp` and `X-Oxy-Kaana-Signature`
|
|
29
|
+
* headers of the response (grant) or request (settlement) that carries the body.
|
|
30
|
+
*/
|
|
31
|
+
export declare function signatureInput(domain: string, keyId: string, timestampMillis: number, bodySha256: string): string;
|
|
32
|
+
/** What a request asks to do, as the authorization names it. */
|
|
33
|
+
export declare const grantOperationSchema: z.ZodEnum<{
|
|
34
|
+
embeddings: "embeddings";
|
|
35
|
+
decisions: "decisions";
|
|
36
|
+
responses: "responses";
|
|
37
|
+
chat_completions: "chat_completions";
|
|
38
|
+
images_generations: "images_generations";
|
|
39
|
+
audio_transcriptions: "audio_transcriptions";
|
|
40
|
+
audio_speech: "audio_speech";
|
|
41
|
+
realtime_session: "realtime_session";
|
|
42
|
+
}>;
|
|
43
|
+
/**
|
|
44
|
+
* What the caller asked to be served: a model line, optionally pinned to a
|
|
45
|
+
* revision, or a power level. Absent on the request means the application's
|
|
46
|
+
* default from its Console policy.
|
|
47
|
+
*/
|
|
48
|
+
export declare const grantTargetSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
49
|
+
kind: z.ZodLiteral<"model">;
|
|
50
|
+
modelLine: z.ZodString;
|
|
51
|
+
revision: z.ZodOptional<z.ZodString>;
|
|
52
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
53
|
+
kind: z.ZodLiteral<"level">;
|
|
54
|
+
level: z.ZodEnum<{
|
|
55
|
+
medium: "medium";
|
|
56
|
+
high: "high";
|
|
57
|
+
auto: "auto";
|
|
58
|
+
instant: "instant";
|
|
59
|
+
xhigh: "xhigh";
|
|
60
|
+
pro: "pro";
|
|
61
|
+
ultra: "ultra";
|
|
62
|
+
}>;
|
|
63
|
+
}, z.core.$strict>], "kind">;
|
|
64
|
+
/**
|
|
65
|
+
* The content-free facts Oxy sizes a hold from. Counts, never content: the
|
|
66
|
+
* prompt, the audio and the output never leave Kaana.
|
|
67
|
+
*/
|
|
68
|
+
export declare const grantRequestFactsSchema: z.ZodObject<{
|
|
69
|
+
estimatedInputTokens: z.ZodOptional<z.ZodNumber>;
|
|
70
|
+
maxOutputTokens: z.ZodOptional<z.ZodNumber>;
|
|
71
|
+
inputCharacters: z.ZodOptional<z.ZodNumber>;
|
|
72
|
+
audioInputMilliseconds: z.ZodOptional<z.ZodNumber>;
|
|
73
|
+
embeddingInputs: z.ZodOptional<z.ZodNumber>;
|
|
74
|
+
images: z.ZodOptional<z.ZodNumber>;
|
|
75
|
+
declaredTools: z.ZodNumber;
|
|
76
|
+
stream: z.ZodBoolean;
|
|
77
|
+
realtimeSessionKind: z.ZodOptional<z.ZodEnum<{
|
|
78
|
+
conversation: "conversation";
|
|
79
|
+
transcription: "transcription";
|
|
80
|
+
translation: "translation";
|
|
81
|
+
}>>;
|
|
82
|
+
}, z.core.$strict>;
|
|
83
|
+
/**
|
|
84
|
+
* `POST /internal/kaana/v1/authorizations` for an inference request. Kaana
|
|
85
|
+
* authenticates as a workload (Oxy ADR 0026); `credential` is the caller's
|
|
86
|
+
* `Authorization: Bearer` value, forwarded opaque and never stored.
|
|
87
|
+
*/
|
|
88
|
+
export declare const inferenceAuthorizationRequestSchema: z.ZodObject<{
|
|
89
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
90
|
+
kind: z.ZodLiteral<"inference">;
|
|
91
|
+
credential: z.ZodString;
|
|
92
|
+
requestId: z.ZodString;
|
|
93
|
+
operation: z.ZodEnum<{
|
|
94
|
+
embeddings: "embeddings";
|
|
95
|
+
decisions: "decisions";
|
|
96
|
+
responses: "responses";
|
|
97
|
+
chat_completions: "chat_completions";
|
|
98
|
+
images_generations: "images_generations";
|
|
99
|
+
audio_transcriptions: "audio_transcriptions";
|
|
100
|
+
audio_speech: "audio_speech";
|
|
101
|
+
realtime_session: "realtime_session";
|
|
102
|
+
}>;
|
|
103
|
+
target: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
104
|
+
kind: z.ZodLiteral<"model">;
|
|
105
|
+
modelLine: z.ZodString;
|
|
106
|
+
revision: z.ZodOptional<z.ZodString>;
|
|
107
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
108
|
+
kind: z.ZodLiteral<"level">;
|
|
109
|
+
level: z.ZodEnum<{
|
|
110
|
+
medium: "medium";
|
|
111
|
+
high: "high";
|
|
112
|
+
auto: "auto";
|
|
113
|
+
instant: "instant";
|
|
114
|
+
xhigh: "xhigh";
|
|
115
|
+
pro: "pro";
|
|
116
|
+
ultra: "ultra";
|
|
117
|
+
}>;
|
|
118
|
+
}, z.core.$strict>], "kind">>;
|
|
119
|
+
facts: z.ZodObject<{
|
|
120
|
+
estimatedInputTokens: z.ZodOptional<z.ZodNumber>;
|
|
121
|
+
maxOutputTokens: z.ZodOptional<z.ZodNumber>;
|
|
122
|
+
inputCharacters: z.ZodOptional<z.ZodNumber>;
|
|
123
|
+
audioInputMilliseconds: z.ZodOptional<z.ZodNumber>;
|
|
124
|
+
embeddingInputs: z.ZodOptional<z.ZodNumber>;
|
|
125
|
+
images: z.ZodOptional<z.ZodNumber>;
|
|
126
|
+
declaredTools: z.ZodNumber;
|
|
127
|
+
stream: z.ZodBoolean;
|
|
128
|
+
realtimeSessionKind: z.ZodOptional<z.ZodEnum<{
|
|
129
|
+
conversation: "conversation";
|
|
130
|
+
transcription: "transcription";
|
|
131
|
+
translation: "translation";
|
|
132
|
+
}>>;
|
|
133
|
+
}, z.core.$strict>;
|
|
134
|
+
idempotencyKey: z.ZodOptional<z.ZodString>;
|
|
135
|
+
onBehalfOfUserId: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "DelegatedUserId", "out">>;
|
|
136
|
+
bodySha256: z.ZodString;
|
|
137
|
+
canonicalInputSha256: z.ZodOptional<z.ZodString>;
|
|
138
|
+
client: z.ZodObject<{
|
|
139
|
+
endpoint: z.ZodString;
|
|
140
|
+
clientRequestId: z.ZodOptional<z.ZodString>;
|
|
141
|
+
receivedAt: z.ZodString;
|
|
142
|
+
labels: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
143
|
+
}, z.core.$strict>;
|
|
144
|
+
}, z.core.$strict>;
|
|
145
|
+
/**
|
|
146
|
+
* Authorization to read the catalogue (`GET /v1/models`, `/v1/power-levels`):
|
|
147
|
+
* no reservation, cached for 60 s per credential.
|
|
148
|
+
*/
|
|
149
|
+
export declare const catalogueAuthorizationRequestSchema: z.ZodObject<{
|
|
150
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
151
|
+
kind: z.ZodLiteral<"catalogue.read">;
|
|
152
|
+
credential: z.ZodString;
|
|
153
|
+
requestId: z.ZodString;
|
|
154
|
+
}, z.core.$strict>;
|
|
155
|
+
/**
|
|
156
|
+
* Authorization to read a generation record (`inference:usage:read`); Oxy
|
|
157
|
+
* answers with the record itself, amount included.
|
|
158
|
+
*/
|
|
159
|
+
export declare const receiptAuthorizationRequestSchema: z.ZodObject<{
|
|
160
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
161
|
+
kind: z.ZodLiteral<"receipt.read">;
|
|
162
|
+
credential: z.ZodString;
|
|
163
|
+
requestId: z.ZodString;
|
|
164
|
+
generationId: z.ZodOptional<z.ZodString>;
|
|
165
|
+
idempotencyKey: z.ZodOptional<z.ZodString>;
|
|
166
|
+
onBehalfOfUserId: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "DelegatedUserId", "out">>;
|
|
167
|
+
}, z.core.$strict>;
|
|
168
|
+
export declare const authorizationRequestSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
169
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
170
|
+
kind: z.ZodLiteral<"inference">;
|
|
171
|
+
credential: z.ZodString;
|
|
172
|
+
requestId: z.ZodString;
|
|
173
|
+
operation: z.ZodEnum<{
|
|
174
|
+
embeddings: "embeddings";
|
|
175
|
+
decisions: "decisions";
|
|
176
|
+
responses: "responses";
|
|
177
|
+
chat_completions: "chat_completions";
|
|
178
|
+
images_generations: "images_generations";
|
|
179
|
+
audio_transcriptions: "audio_transcriptions";
|
|
180
|
+
audio_speech: "audio_speech";
|
|
181
|
+
realtime_session: "realtime_session";
|
|
182
|
+
}>;
|
|
183
|
+
target: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
184
|
+
kind: z.ZodLiteral<"model">;
|
|
185
|
+
modelLine: z.ZodString;
|
|
186
|
+
revision: z.ZodOptional<z.ZodString>;
|
|
187
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
188
|
+
kind: z.ZodLiteral<"level">;
|
|
189
|
+
level: z.ZodEnum<{
|
|
190
|
+
medium: "medium";
|
|
191
|
+
high: "high";
|
|
192
|
+
auto: "auto";
|
|
193
|
+
instant: "instant";
|
|
194
|
+
xhigh: "xhigh";
|
|
195
|
+
pro: "pro";
|
|
196
|
+
ultra: "ultra";
|
|
197
|
+
}>;
|
|
198
|
+
}, z.core.$strict>], "kind">>;
|
|
199
|
+
facts: z.ZodObject<{
|
|
200
|
+
estimatedInputTokens: z.ZodOptional<z.ZodNumber>;
|
|
201
|
+
maxOutputTokens: z.ZodOptional<z.ZodNumber>;
|
|
202
|
+
inputCharacters: z.ZodOptional<z.ZodNumber>;
|
|
203
|
+
audioInputMilliseconds: z.ZodOptional<z.ZodNumber>;
|
|
204
|
+
embeddingInputs: z.ZodOptional<z.ZodNumber>;
|
|
205
|
+
images: z.ZodOptional<z.ZodNumber>;
|
|
206
|
+
declaredTools: z.ZodNumber;
|
|
207
|
+
stream: z.ZodBoolean;
|
|
208
|
+
realtimeSessionKind: z.ZodOptional<z.ZodEnum<{
|
|
209
|
+
conversation: "conversation";
|
|
210
|
+
transcription: "transcription";
|
|
211
|
+
translation: "translation";
|
|
212
|
+
}>>;
|
|
213
|
+
}, z.core.$strict>;
|
|
214
|
+
idempotencyKey: z.ZodOptional<z.ZodString>;
|
|
215
|
+
onBehalfOfUserId: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "DelegatedUserId", "out">>;
|
|
216
|
+
bodySha256: z.ZodString;
|
|
217
|
+
canonicalInputSha256: z.ZodOptional<z.ZodString>;
|
|
218
|
+
client: z.ZodObject<{
|
|
219
|
+
endpoint: z.ZodString;
|
|
220
|
+
clientRequestId: z.ZodOptional<z.ZodString>;
|
|
221
|
+
receivedAt: z.ZodString;
|
|
222
|
+
labels: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
223
|
+
}, z.core.$strict>;
|
|
224
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
225
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
226
|
+
kind: z.ZodLiteral<"catalogue.read">;
|
|
227
|
+
credential: z.ZodString;
|
|
228
|
+
requestId: z.ZodString;
|
|
229
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
230
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
231
|
+
kind: z.ZodLiteral<"receipt.read">;
|
|
232
|
+
credential: z.ZodString;
|
|
233
|
+
requestId: z.ZodString;
|
|
234
|
+
generationId: z.ZodOptional<z.ZodString>;
|
|
235
|
+
idempotencyKey: z.ZodOptional<z.ZodString>;
|
|
236
|
+
onBehalfOfUserId: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "DelegatedUserId", "out">>;
|
|
237
|
+
}, z.core.$strict>], "kind">;
|
|
238
|
+
/** How the caller authenticated, which decides who pays. */
|
|
239
|
+
export declare const grantLaneSchema: z.ZodEnum<{
|
|
240
|
+
machine_credential: "machine_credential";
|
|
241
|
+
service_token: "service_token";
|
|
242
|
+
product_session: "product_session";
|
|
243
|
+
}>;
|
|
244
|
+
/**
|
|
245
|
+
* Who pays and who called. `billingAccountId` is the owner of the
|
|
246
|
+
* authenticated application, UNRESOLVED: the ledger resolves the billable
|
|
247
|
+
* ancestor. The end user never pays.
|
|
248
|
+
*/
|
|
249
|
+
export declare const grantPrincipalSchema: z.ZodObject<{
|
|
250
|
+
billingAccountId: z.core.$ZodBranded<z.ZodString, "OxyAccountId", "out">;
|
|
251
|
+
applicationId: z.ZodString;
|
|
252
|
+
credentialId: z.ZodString;
|
|
253
|
+
environment: z.ZodEnum<{
|
|
254
|
+
development: "development";
|
|
255
|
+
staging: "staging";
|
|
256
|
+
production: "production";
|
|
257
|
+
}>;
|
|
258
|
+
scopes: z.ZodArray<z.ZodEnum<{
|
|
259
|
+
"inference:invoke": "inference:invoke";
|
|
260
|
+
"inference:models:read": "inference:models:read";
|
|
261
|
+
"inference:usage:read": "inference:usage:read";
|
|
262
|
+
"inference:routing:read": "inference:routing:read";
|
|
263
|
+
"inference:routing:write": "inference:routing:write";
|
|
264
|
+
"inference:providers:read": "inference:providers:read";
|
|
265
|
+
"inference:providers:write": "inference:providers:write";
|
|
266
|
+
}>>;
|
|
267
|
+
lane: z.ZodEnum<{
|
|
268
|
+
machine_credential: "machine_credential";
|
|
269
|
+
service_token: "service_token";
|
|
270
|
+
product_session: "product_session";
|
|
271
|
+
}>;
|
|
272
|
+
}, z.core.$strict>;
|
|
273
|
+
/** A model line Oxy admits for a step, with the price it settles at. */
|
|
274
|
+
export declare const admittedModelLineSchema: z.ZodObject<{
|
|
275
|
+
modelLine: z.ZodString;
|
|
276
|
+
priceVersionId: z.ZodString;
|
|
277
|
+
}, z.core.$strict>;
|
|
278
|
+
/**
|
|
279
|
+
* What bounds one step: the Console policy, already applied by Oxy, as values
|
|
280
|
+
* Kaana filters by. Kaana never re-derives a policy: it intersects what it can
|
|
281
|
+
* serve with `admittedModelLines` and walks keys free → credit → paid within
|
|
282
|
+
* `maxFundingTier`.
|
|
283
|
+
*/
|
|
284
|
+
export declare const grantStepLimitsSchema: z.ZodObject<{
|
|
285
|
+
maxPricePerRequest: z.ZodOptional<z.ZodObject<{
|
|
286
|
+
amount: z.core.$ZodBranded<z.ZodString, "ExactDecimal", "out">;
|
|
287
|
+
currency: z.ZodString;
|
|
288
|
+
}, z.core.$strict>>;
|
|
289
|
+
maxFundingTier: z.ZodOptional<z.ZodEnum<{
|
|
290
|
+
free: "free";
|
|
291
|
+
credit: "credit";
|
|
292
|
+
paid: "paid";
|
|
293
|
+
}>>;
|
|
294
|
+
admittedModelLines: z.ZodArray<z.ZodObject<{
|
|
295
|
+
modelLine: z.ZodString;
|
|
296
|
+
priceVersionId: z.ZodString;
|
|
297
|
+
}, z.core.$strict>>;
|
|
298
|
+
providerAllowlist: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
299
|
+
providerDenylist: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
300
|
+
allowedRegions: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
301
|
+
deniedRegions: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
302
|
+
requireZeroDataRetention: z.ZodBoolean;
|
|
303
|
+
prohibitTrainingOnCustomerData: z.ZodBoolean;
|
|
304
|
+
allowedLicenseIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
305
|
+
requireCommercialUseRights: z.ZodBoolean;
|
|
306
|
+
sameModelFailover: z.ZodDefault<z.ZodBoolean>;
|
|
307
|
+
}, z.core.$strict>;
|
|
308
|
+
/**
|
|
309
|
+
* One step: a target and its limits. Kaana tries the steps IN ORDER and moves
|
|
310
|
+
* to the next only when no admissible route of this one is left — before any
|
|
311
|
+
* output, never after. Alia's Pro/Ultra lane is two steps: the level under
|
|
312
|
+
* `maxFundingTier: 'credit'`, then `xhigh` on the pilot tuples.
|
|
313
|
+
*/
|
|
314
|
+
export declare const grantStepSchema: z.ZodObject<{
|
|
315
|
+
target: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
316
|
+
kind: z.ZodLiteral<"model">;
|
|
317
|
+
modelLine: z.ZodString;
|
|
318
|
+
revision: z.ZodOptional<z.ZodString>;
|
|
319
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
320
|
+
kind: z.ZodLiteral<"level">;
|
|
321
|
+
level: z.ZodEnum<{
|
|
322
|
+
medium: "medium";
|
|
323
|
+
high: "high";
|
|
324
|
+
auto: "auto";
|
|
325
|
+
instant: "instant";
|
|
326
|
+
xhigh: "xhigh";
|
|
327
|
+
pro: "pro";
|
|
328
|
+
ultra: "ultra";
|
|
329
|
+
}>;
|
|
330
|
+
}, z.core.$strict>], "kind">;
|
|
331
|
+
limits: z.ZodObject<{
|
|
332
|
+
maxPricePerRequest: z.ZodOptional<z.ZodObject<{
|
|
333
|
+
amount: z.core.$ZodBranded<z.ZodString, "ExactDecimal", "out">;
|
|
334
|
+
currency: z.ZodString;
|
|
335
|
+
}, z.core.$strict>>;
|
|
336
|
+
maxFundingTier: z.ZodOptional<z.ZodEnum<{
|
|
337
|
+
free: "free";
|
|
338
|
+
credit: "credit";
|
|
339
|
+
paid: "paid";
|
|
340
|
+
}>>;
|
|
341
|
+
admittedModelLines: z.ZodArray<z.ZodObject<{
|
|
342
|
+
modelLine: z.ZodString;
|
|
343
|
+
priceVersionId: z.ZodString;
|
|
344
|
+
}, z.core.$strict>>;
|
|
345
|
+
providerAllowlist: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
346
|
+
providerDenylist: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
347
|
+
allowedRegions: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
348
|
+
deniedRegions: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
349
|
+
requireZeroDataRetention: z.ZodBoolean;
|
|
350
|
+
prohibitTrainingOnCustomerData: z.ZodBoolean;
|
|
351
|
+
allowedLicenseIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
352
|
+
requireCommercialUseRights: z.ZodBoolean;
|
|
353
|
+
sameModelFailover: z.ZodDefault<z.ZodBoolean>;
|
|
354
|
+
}, z.core.$strict>;
|
|
355
|
+
}, z.core.$strict>;
|
|
356
|
+
/**
|
|
357
|
+
* The exact route of an operation with a source approval (scoped execution,
|
|
358
|
+
* Private Auto, the Mention classifier): the deployment, provider, key and
|
|
359
|
+
* price the approval fixed, and the input it was approved for.
|
|
360
|
+
*/
|
|
361
|
+
export declare const grantExactRouteSchema: z.ZodObject<{
|
|
362
|
+
approval: z.ZodEnum<{
|
|
363
|
+
scoped_execution: "scoped_execution";
|
|
364
|
+
private_auto: "private_auto";
|
|
365
|
+
mention_classifier: "mention_classifier";
|
|
366
|
+
}>;
|
|
367
|
+
deploymentId: z.ZodString;
|
|
368
|
+
provider: z.ZodString;
|
|
369
|
+
keyId: z.ZodString;
|
|
370
|
+
modelReference: z.ZodString;
|
|
371
|
+
priceVersionId: z.ZodString;
|
|
372
|
+
inputSha256: z.ZodString;
|
|
373
|
+
}, z.core.$strict>;
|
|
374
|
+
/**
|
|
375
|
+
* The signed grant: the body of a successful authorization for an inference
|
|
376
|
+
* operation. Kaana verifies it and executes inside it; Oxy settles against it.
|
|
377
|
+
*/
|
|
378
|
+
export declare const grantSchema: z.ZodObject<{
|
|
379
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
380
|
+
grantId: z.ZodString;
|
|
381
|
+
requestId: z.ZodString;
|
|
382
|
+
operation: z.ZodEnum<{
|
|
383
|
+
embeddings: "embeddings";
|
|
384
|
+
decisions: "decisions";
|
|
385
|
+
responses: "responses";
|
|
386
|
+
chat_completions: "chat_completions";
|
|
387
|
+
images_generations: "images_generations";
|
|
388
|
+
audio_transcriptions: "audio_transcriptions";
|
|
389
|
+
audio_speech: "audio_speech";
|
|
390
|
+
realtime_session: "realtime_session";
|
|
391
|
+
}>;
|
|
392
|
+
issuedAt: z.ZodString;
|
|
393
|
+
executeBy: z.ZodString;
|
|
394
|
+
bodySha256: z.ZodString;
|
|
395
|
+
principal: z.ZodObject<{
|
|
396
|
+
billingAccountId: z.core.$ZodBranded<z.ZodString, "OxyAccountId", "out">;
|
|
397
|
+
applicationId: z.ZodString;
|
|
398
|
+
credentialId: z.ZodString;
|
|
399
|
+
environment: z.ZodEnum<{
|
|
400
|
+
development: "development";
|
|
401
|
+
staging: "staging";
|
|
402
|
+
production: "production";
|
|
403
|
+
}>;
|
|
404
|
+
scopes: z.ZodArray<z.ZodEnum<{
|
|
405
|
+
"inference:invoke": "inference:invoke";
|
|
406
|
+
"inference:models:read": "inference:models:read";
|
|
407
|
+
"inference:usage:read": "inference:usage:read";
|
|
408
|
+
"inference:routing:read": "inference:routing:read";
|
|
409
|
+
"inference:routing:write": "inference:routing:write";
|
|
410
|
+
"inference:providers:read": "inference:providers:read";
|
|
411
|
+
"inference:providers:write": "inference:providers:write";
|
|
412
|
+
}>>;
|
|
413
|
+
lane: z.ZodEnum<{
|
|
414
|
+
machine_credential: "machine_credential";
|
|
415
|
+
service_token: "service_token";
|
|
416
|
+
product_session: "product_session";
|
|
417
|
+
}>;
|
|
418
|
+
}, z.core.$strict>;
|
|
419
|
+
userId: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "DelegatedUserId", "out">>;
|
|
420
|
+
economics: z.ZodObject<{
|
|
421
|
+
treatment: z.ZodEnum<{
|
|
422
|
+
commercial: "commercial";
|
|
423
|
+
internal_metered: "internal_metered";
|
|
424
|
+
platform_fee_only: "platform_fee_only";
|
|
425
|
+
}>;
|
|
426
|
+
policyVersion: z.ZodString;
|
|
427
|
+
relationshipId: z.ZodOptional<z.ZodString>;
|
|
428
|
+
}, z.core.$strict>;
|
|
429
|
+
reservation: z.ZodOptional<z.ZodObject<{
|
|
430
|
+
reservationId: z.ZodString;
|
|
431
|
+
ceiling: z.ZodObject<{
|
|
432
|
+
amount: z.core.$ZodBranded<z.ZodString, "ExactDecimal", "out">;
|
|
433
|
+
currency: z.ZodString;
|
|
434
|
+
}, z.core.$strict>;
|
|
435
|
+
fundingRestriction: z.ZodOptional<z.ZodLiteral<"promotional-only">>;
|
|
436
|
+
}, z.core.$strict>>;
|
|
437
|
+
capacity: z.ZodOptional<z.ZodObject<{
|
|
438
|
+
meteredUsageId: z.ZodString;
|
|
439
|
+
}, z.core.$strict>>;
|
|
440
|
+
steps: z.ZodArray<z.ZodObject<{
|
|
441
|
+
target: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
442
|
+
kind: z.ZodLiteral<"model">;
|
|
443
|
+
modelLine: z.ZodString;
|
|
444
|
+
revision: z.ZodOptional<z.ZodString>;
|
|
445
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
446
|
+
kind: z.ZodLiteral<"level">;
|
|
447
|
+
level: z.ZodEnum<{
|
|
448
|
+
medium: "medium";
|
|
449
|
+
high: "high";
|
|
450
|
+
auto: "auto";
|
|
451
|
+
instant: "instant";
|
|
452
|
+
xhigh: "xhigh";
|
|
453
|
+
pro: "pro";
|
|
454
|
+
ultra: "ultra";
|
|
455
|
+
}>;
|
|
456
|
+
}, z.core.$strict>], "kind">;
|
|
457
|
+
limits: z.ZodObject<{
|
|
458
|
+
maxPricePerRequest: z.ZodOptional<z.ZodObject<{
|
|
459
|
+
amount: z.core.$ZodBranded<z.ZodString, "ExactDecimal", "out">;
|
|
460
|
+
currency: z.ZodString;
|
|
461
|
+
}, z.core.$strict>>;
|
|
462
|
+
maxFundingTier: z.ZodOptional<z.ZodEnum<{
|
|
463
|
+
free: "free";
|
|
464
|
+
credit: "credit";
|
|
465
|
+
paid: "paid";
|
|
466
|
+
}>>;
|
|
467
|
+
admittedModelLines: z.ZodArray<z.ZodObject<{
|
|
468
|
+
modelLine: z.ZodString;
|
|
469
|
+
priceVersionId: z.ZodString;
|
|
470
|
+
}, z.core.$strict>>;
|
|
471
|
+
providerAllowlist: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
472
|
+
providerDenylist: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
473
|
+
allowedRegions: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
474
|
+
deniedRegions: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
475
|
+
requireZeroDataRetention: z.ZodBoolean;
|
|
476
|
+
prohibitTrainingOnCustomerData: z.ZodBoolean;
|
|
477
|
+
allowedLicenseIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
478
|
+
requireCommercialUseRights: z.ZodBoolean;
|
|
479
|
+
sameModelFailover: z.ZodDefault<z.ZodBoolean>;
|
|
480
|
+
}, z.core.$strict>;
|
|
481
|
+
}, z.core.$strict>>;
|
|
482
|
+
exactRoute: z.ZodOptional<z.ZodObject<{
|
|
483
|
+
approval: z.ZodEnum<{
|
|
484
|
+
scoped_execution: "scoped_execution";
|
|
485
|
+
private_auto: "private_auto";
|
|
486
|
+
mention_classifier: "mention_classifier";
|
|
487
|
+
}>;
|
|
488
|
+
deploymentId: z.ZodString;
|
|
489
|
+
provider: z.ZodString;
|
|
490
|
+
keyId: z.ZodString;
|
|
491
|
+
modelReference: z.ZodString;
|
|
492
|
+
priceVersionId: z.ZodString;
|
|
493
|
+
inputSha256: z.ZodString;
|
|
494
|
+
}, z.core.$strict>>;
|
|
495
|
+
customerProviderCredential: z.ZodOptional<z.ZodObject<{
|
|
496
|
+
credentialHandle: z.ZodString;
|
|
497
|
+
credentialRevision: z.ZodNumber;
|
|
498
|
+
ownerAccountId: z.core.$ZodBranded<z.ZodString, "OxyAccountId", "out">;
|
|
499
|
+
connectionId: z.ZodString;
|
|
500
|
+
environment: z.ZodEnum<{
|
|
501
|
+
development: "development";
|
|
502
|
+
staging: "staging";
|
|
503
|
+
production: "production";
|
|
504
|
+
}>;
|
|
505
|
+
}, z.core.$strict>>;
|
|
506
|
+
idempotencyKey: z.ZodOptional<z.ZodString>;
|
|
507
|
+
client: z.ZodObject<{
|
|
508
|
+
labels: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
509
|
+
}, z.core.$strict>;
|
|
510
|
+
routingPolicy: z.ZodObject<{
|
|
511
|
+
routingPolicyId: z.ZodString;
|
|
512
|
+
policyVersion: z.ZodNumber;
|
|
513
|
+
}, z.core.$strict>;
|
|
514
|
+
}, z.core.$strict>;
|
|
515
|
+
/**
|
|
516
|
+
* The answer to a catalogue authorization: what the credential may see.
|
|
517
|
+
* Kaana filters `GET /v1/models` and `GET /v1/power-levels` with it.
|
|
518
|
+
*/
|
|
519
|
+
export declare const catalogueAccessSchema: z.ZodObject<{
|
|
520
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
521
|
+
kind: z.ZodLiteral<"catalogue.read">;
|
|
522
|
+
audience: z.ZodEnum<{
|
|
523
|
+
platform_internal: "platform_internal";
|
|
524
|
+
public: "public";
|
|
525
|
+
}>;
|
|
526
|
+
allowedLevels: z.ZodDefault<z.ZodArray<z.ZodEnum<{
|
|
527
|
+
medium: "medium";
|
|
528
|
+
high: "high";
|
|
529
|
+
auto: "auto";
|
|
530
|
+
instant: "instant";
|
|
531
|
+
xhigh: "xhigh";
|
|
532
|
+
pro: "pro";
|
|
533
|
+
ultra: "ultra";
|
|
534
|
+
}>>>;
|
|
535
|
+
expiresAt: z.ZodString;
|
|
536
|
+
}, z.core.$strict>;
|
|
537
|
+
/** The answer to a receipt authorization: the record, amount included. */
|
|
538
|
+
export declare const receiptAccessSchema: z.ZodObject<{
|
|
539
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
540
|
+
kind: z.ZodLiteral<"receipt.read">;
|
|
541
|
+
record: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
542
|
+
kind: z.ZodLiteral<"charge">;
|
|
543
|
+
receiptId: z.ZodString;
|
|
544
|
+
priceSnapshot: z.ZodObject<{
|
|
545
|
+
priceVersionId: z.ZodString;
|
|
546
|
+
currency: z.ZodString;
|
|
547
|
+
unitPrices: z.ZodArray<z.ZodObject<{
|
|
548
|
+
unit: z.ZodEnum<{
|
|
549
|
+
input_tokens: "input_tokens";
|
|
550
|
+
cached_input_tokens: "cached_input_tokens";
|
|
551
|
+
output_tokens: "output_tokens";
|
|
552
|
+
reasoning_tokens: "reasoning_tokens";
|
|
553
|
+
requests: "requests";
|
|
554
|
+
images: "images";
|
|
555
|
+
audio_input_milliseconds: "audio_input_milliseconds";
|
|
556
|
+
audio_output_milliseconds: "audio_output_milliseconds";
|
|
557
|
+
video_milliseconds: "video_milliseconds";
|
|
558
|
+
characters: "characters";
|
|
559
|
+
embeddings: "embeddings";
|
|
560
|
+
audio_input_tokens: "audio_input_tokens";
|
|
561
|
+
cached_audio_input_tokens: "cached_audio_input_tokens";
|
|
562
|
+
audio_output_tokens: "audio_output_tokens";
|
|
563
|
+
session_milliseconds: "session_milliseconds";
|
|
564
|
+
input_transcription_milliseconds: "input_transcription_milliseconds";
|
|
565
|
+
}>;
|
|
566
|
+
amount: z.core.$ZodBranded<z.ZodString, "ExactDecimal", "out">;
|
|
567
|
+
per: z.ZodNumber;
|
|
568
|
+
currency: z.ZodString;
|
|
569
|
+
}, z.core.$strict>>;
|
|
570
|
+
}, z.core.$strict>;
|
|
571
|
+
billedAmount: z.core.$ZodBranded<z.ZodString, "ExactDecimal", "out">;
|
|
572
|
+
currency: z.ZodString;
|
|
573
|
+
platformFeeOnly: z.ZodBoolean;
|
|
574
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
575
|
+
requestId: z.ZodString;
|
|
576
|
+
generationId: z.ZodOptional<z.ZodString>;
|
|
577
|
+
applicationId: z.ZodString;
|
|
578
|
+
credentialId: z.ZodString;
|
|
579
|
+
delegatedUserId: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "DelegatedUserId", "out">>;
|
|
580
|
+
environment: z.ZodEnum<{
|
|
581
|
+
development: "development";
|
|
582
|
+
staging: "staging";
|
|
583
|
+
production: "production";
|
|
584
|
+
}>;
|
|
585
|
+
outcome: z.ZodEnum<{
|
|
586
|
+
cancelled: "cancelled";
|
|
587
|
+
completed: "completed";
|
|
588
|
+
partial: "partial";
|
|
589
|
+
failed: "failed";
|
|
590
|
+
}>;
|
|
591
|
+
usageSource: z.ZodEnum<{
|
|
592
|
+
provider_reported: "provider_reported";
|
|
593
|
+
oxy_measured: "oxy_measured";
|
|
594
|
+
estimated: "estimated";
|
|
595
|
+
}>;
|
|
596
|
+
units: z.ZodArray<z.ZodObject<{
|
|
597
|
+
unit: z.ZodEnum<{
|
|
598
|
+
input_tokens: "input_tokens";
|
|
599
|
+
cached_input_tokens: "cached_input_tokens";
|
|
600
|
+
output_tokens: "output_tokens";
|
|
601
|
+
reasoning_tokens: "reasoning_tokens";
|
|
602
|
+
requests: "requests";
|
|
603
|
+
images: "images";
|
|
604
|
+
audio_input_milliseconds: "audio_input_milliseconds";
|
|
605
|
+
audio_output_milliseconds: "audio_output_milliseconds";
|
|
606
|
+
video_milliseconds: "video_milliseconds";
|
|
607
|
+
characters: "characters";
|
|
608
|
+
embeddings: "embeddings";
|
|
609
|
+
audio_input_tokens: "audio_input_tokens";
|
|
610
|
+
cached_audio_input_tokens: "cached_audio_input_tokens";
|
|
611
|
+
audio_output_tokens: "audio_output_tokens";
|
|
612
|
+
session_milliseconds: "session_milliseconds";
|
|
613
|
+
input_transcription_milliseconds: "input_transcription_milliseconds";
|
|
614
|
+
}>;
|
|
615
|
+
quantity: z.ZodNumber;
|
|
616
|
+
}, z.core.$strict>>;
|
|
617
|
+
model: z.ZodString;
|
|
618
|
+
labels: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
619
|
+
settledAt: z.ZodString;
|
|
620
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
621
|
+
kind: z.ZodLiteral<"metered_usage">;
|
|
622
|
+
meteredUsageId: z.ZodString;
|
|
623
|
+
parentRequestId: z.ZodOptional<z.ZodString>;
|
|
624
|
+
tariff: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
625
|
+
status: z.ZodLiteral<"quoted">;
|
|
626
|
+
amount: z.core.$ZodBranded<z.ZodString, "ExactDecimal", "out">;
|
|
627
|
+
currency: z.ZodString;
|
|
628
|
+
priceVersionId: z.ZodString;
|
|
629
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
630
|
+
status: z.ZodLiteral<"unpriced">;
|
|
631
|
+
priceVersionId: z.ZodNullable<z.ZodString>;
|
|
632
|
+
}, z.core.$strict>], "status">;
|
|
633
|
+
customerCharge: z.ZodObject<{
|
|
634
|
+
status: z.ZodLiteral<"not_charged">;
|
|
635
|
+
}, z.core.$strict>;
|
|
636
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
637
|
+
requestId: z.ZodString;
|
|
638
|
+
generationId: z.ZodOptional<z.ZodString>;
|
|
639
|
+
applicationId: z.ZodString;
|
|
640
|
+
credentialId: z.ZodString;
|
|
641
|
+
delegatedUserId: z.ZodOptional<z.core.$ZodBranded<z.ZodString, "DelegatedUserId", "out">>;
|
|
642
|
+
environment: z.ZodEnum<{
|
|
643
|
+
development: "development";
|
|
644
|
+
staging: "staging";
|
|
645
|
+
production: "production";
|
|
646
|
+
}>;
|
|
647
|
+
outcome: z.ZodEnum<{
|
|
648
|
+
cancelled: "cancelled";
|
|
649
|
+
completed: "completed";
|
|
650
|
+
partial: "partial";
|
|
651
|
+
failed: "failed";
|
|
652
|
+
}>;
|
|
653
|
+
usageSource: z.ZodEnum<{
|
|
654
|
+
provider_reported: "provider_reported";
|
|
655
|
+
oxy_measured: "oxy_measured";
|
|
656
|
+
estimated: "estimated";
|
|
657
|
+
}>;
|
|
658
|
+
units: z.ZodArray<z.ZodObject<{
|
|
659
|
+
unit: z.ZodEnum<{
|
|
660
|
+
input_tokens: "input_tokens";
|
|
661
|
+
cached_input_tokens: "cached_input_tokens";
|
|
662
|
+
output_tokens: "output_tokens";
|
|
663
|
+
reasoning_tokens: "reasoning_tokens";
|
|
664
|
+
requests: "requests";
|
|
665
|
+
images: "images";
|
|
666
|
+
audio_input_milliseconds: "audio_input_milliseconds";
|
|
667
|
+
audio_output_milliseconds: "audio_output_milliseconds";
|
|
668
|
+
video_milliseconds: "video_milliseconds";
|
|
669
|
+
characters: "characters";
|
|
670
|
+
embeddings: "embeddings";
|
|
671
|
+
audio_input_tokens: "audio_input_tokens";
|
|
672
|
+
cached_audio_input_tokens: "cached_audio_input_tokens";
|
|
673
|
+
audio_output_tokens: "audio_output_tokens";
|
|
674
|
+
session_milliseconds: "session_milliseconds";
|
|
675
|
+
input_transcription_milliseconds: "input_transcription_milliseconds";
|
|
676
|
+
}>;
|
|
677
|
+
quantity: z.ZodNumber;
|
|
678
|
+
}, z.core.$strict>>;
|
|
679
|
+
model: z.ZodString;
|
|
680
|
+
labels: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
681
|
+
settledAt: z.ZodString;
|
|
682
|
+
}, z.core.$strict>], "kind">;
|
|
683
|
+
}, z.core.$strict>;
|
|
684
|
+
export type GrantOperation = z.infer<typeof grantOperationSchema>;
|
|
685
|
+
export type GrantTarget = z.infer<typeof grantTargetSchema>;
|
|
686
|
+
export type GrantRequestFacts = z.infer<typeof grantRequestFactsSchema>;
|
|
687
|
+
export type InferenceAuthorizationRequest = z.infer<typeof inferenceAuthorizationRequestSchema>;
|
|
688
|
+
export type CatalogueAuthorizationRequest = z.infer<typeof catalogueAuthorizationRequestSchema>;
|
|
689
|
+
export type ReceiptAuthorizationRequest = z.infer<typeof receiptAuthorizationRequestSchema>;
|
|
690
|
+
export type AuthorizationRequest = z.infer<typeof authorizationRequestSchema>;
|
|
691
|
+
export type GrantLane = z.infer<typeof grantLaneSchema>;
|
|
692
|
+
export type GrantPrincipal = z.infer<typeof grantPrincipalSchema>;
|
|
693
|
+
export type AdmittedModelLine = z.infer<typeof admittedModelLineSchema>;
|
|
694
|
+
export type GrantStepLimits = z.infer<typeof grantStepLimitsSchema>;
|
|
695
|
+
export type GrantStep = z.infer<typeof grantStepSchema>;
|
|
696
|
+
export type GrantExactRoute = z.infer<typeof grantExactRouteSchema>;
|
|
697
|
+
export type Grant = z.infer<typeof grantSchema>;
|
|
698
|
+
export type CatalogueAccess = z.infer<typeof catalogueAccessSchema>;
|
|
699
|
+
export type ReceiptAccess = z.infer<typeof receiptAccessSchema>;
|