@objectstack/spec 0.1.2 → 0.3.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 (152) hide show
  1. package/README.md +127 -5
  2. package/dist/ai/index.d.ts +14 -0
  3. package/dist/ai/index.d.ts.map +1 -0
  4. package/dist/ai/index.js +29 -0
  5. package/dist/ai/model-registry.zod.d.ts +1389 -0
  6. package/dist/ai/model-registry.zod.d.ts.map +1 -0
  7. package/dist/ai/model-registry.zod.js +164 -0
  8. package/dist/ai/nlq.zod.d.ts +1126 -0
  9. package/dist/ai/nlq.zod.d.ts.map +1 -0
  10. package/dist/ai/nlq.zod.js +246 -0
  11. package/dist/ai/rag-pipeline.zod.d.ts +1034 -0
  12. package/dist/ai/rag-pipeline.zod.d.ts.map +1 -0
  13. package/dist/ai/rag-pipeline.zod.js +244 -0
  14. package/dist/api/index.d.ts +9 -0
  15. package/dist/api/index.d.ts.map +1 -0
  16. package/dist/api/index.js +24 -0
  17. package/dist/data/filter.zod.d.ts +295 -0
  18. package/dist/data/filter.zod.d.ts.map +1 -0
  19. package/dist/data/filter.zod.js +226 -0
  20. package/dist/data/index.d.ts +21 -0
  21. package/dist/data/index.d.ts.map +1 -0
  22. package/dist/data/index.js +36 -0
  23. package/dist/data/query.zod.d.ts +386 -3
  24. package/dist/data/query.zod.d.ts.map +1 -1
  25. package/dist/data/query.zod.js +386 -3
  26. package/dist/data/validation.zod.d.ts +349 -0
  27. package/dist/data/validation.zod.d.ts.map +1 -1
  28. package/dist/data/validation.zod.js +395 -0
  29. package/dist/index.d.ts +36 -39
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +64 -47
  32. package/dist/system/auth-protocol.d.ts +175 -0
  33. package/dist/system/auth-protocol.d.ts.map +1 -0
  34. package/dist/system/auth-protocol.js +60 -0
  35. package/dist/system/auth.zod.d.ts +3319 -0
  36. package/dist/system/auth.zod.d.ts.map +1 -0
  37. package/dist/system/auth.zod.js +499 -0
  38. package/dist/system/datasource.zod.d.ts +118 -38
  39. package/dist/system/datasource.zod.d.ts.map +1 -1
  40. package/dist/system/datasource.zod.js +25 -6
  41. package/dist/system/driver.zod.d.ts +106 -0
  42. package/dist/system/driver.zod.d.ts.map +1 -1
  43. package/dist/system/driver.zod.js +47 -0
  44. package/dist/system/identity.zod.d.ts +234 -180
  45. package/dist/system/identity.zod.d.ts.map +1 -1
  46. package/dist/system/identity.zod.js +168 -51
  47. package/dist/system/index.d.ts +28 -0
  48. package/dist/system/index.d.ts.map +1 -0
  49. package/dist/system/index.js +43 -0
  50. package/dist/system/manifest.zod.d.ts +10 -10
  51. package/dist/system/organization.zod.d.ts +179 -0
  52. package/dist/system/organization.zod.d.ts.map +1 -0
  53. package/dist/system/organization.zod.js +129 -0
  54. package/dist/system/policy.zod.d.ts +10 -10
  55. package/dist/ui/action.zod.d.ts +2 -2
  56. package/dist/ui/dashboard.zod.d.ts +10 -10
  57. package/dist/ui/dashboard.zod.d.ts.map +1 -1
  58. package/dist/ui/dashboard.zod.js +3 -2
  59. package/dist/ui/index.d.ts +17 -0
  60. package/dist/ui/index.d.ts.map +1 -0
  61. package/dist/ui/index.js +32 -0
  62. package/dist/ui/report.zod.d.ts +4 -32
  63. package/dist/ui/report.zod.d.ts.map +1 -1
  64. package/dist/ui/report.zod.js +3 -8
  65. package/dist/ui/theme.zod.d.ts +6 -6
  66. package/json-schema/Account.json +87 -0
  67. package/json-schema/AccountLinkingConfig.json +27 -0
  68. package/json-schema/AuthConfig.json +841 -0
  69. package/json-schema/AuthPluginConfig.json +28 -0
  70. package/json-schema/AuthStrategy.json +17 -0
  71. package/json-schema/AuthenticationConfig.json +601 -0
  72. package/json-schema/AuthenticationProvider.json +617 -0
  73. package/json-schema/CSRFConfig.json +31 -0
  74. package/json-schema/ChunkingStrategy.json +133 -0
  75. package/json-schema/ComparisonOperator.json +56 -0
  76. package/json-schema/Dashboard.json +20 -0
  77. package/json-schema/DashboardWidget.json +20 -0
  78. package/json-schema/DatabaseAdapter.json +38 -0
  79. package/json-schema/DatabaseMapping.json +48 -0
  80. package/json-schema/Datasource.json +25 -5
  81. package/json-schema/DatasourceCapabilities.json +25 -5
  82. package/json-schema/DocumentChunk.json +97 -0
  83. package/json-schema/DocumentLoaderConfig.json +69 -0
  84. package/json-schema/DocumentMetadata.json +61 -0
  85. package/json-schema/DriverCapabilities.json +30 -0
  86. package/json-schema/DriverDefinition.json +25 -5
  87. package/json-schema/DriverInterface.json +30 -0
  88. package/json-schema/EmailPasswordConfig.json +43 -0
  89. package/json-schema/EmbeddingModel.json +57 -0
  90. package/json-schema/EnterpriseAuthConfig.json +172 -0
  91. package/json-schema/Entity.json +55 -0
  92. package/json-schema/EqualityOperator.json +14 -0
  93. package/json-schema/FieldOperators.json +108 -0
  94. package/json-schema/FieldSynonymConfig.json +39 -0
  95. package/json-schema/FilterCondition.json +28 -0
  96. package/json-schema/Invitation.json +69 -0
  97. package/json-schema/InvitationStatus.json +15 -0
  98. package/json-schema/LDAPConfig.json +22 -5
  99. package/json-schema/MagicLinkConfig.json +21 -0
  100. package/json-schema/Member.json +46 -0
  101. package/json-schema/ModelCapability.json +47 -0
  102. package/json-schema/ModelConfig.json +181 -0
  103. package/json-schema/ModelLimits.json +45 -0
  104. package/json-schema/ModelPricing.json +28 -0
  105. package/json-schema/ModelProvider.json +19 -0
  106. package/json-schema/ModelRegistry.json +427 -0
  107. package/json-schema/ModelRegistryEntry.json +239 -0
  108. package/json-schema/ModelSelectionCriteria.json +50 -0
  109. package/json-schema/NLQAnalytics.json +106 -0
  110. package/json-schema/NLQFieldMapping.json +40 -0
  111. package/json-schema/NLQModelConfig.json +78 -0
  112. package/json-schema/NLQParseResult.json +252 -0
  113. package/json-schema/NLQRequest.json +110 -0
  114. package/json-schema/NLQResponse.json +288 -0
  115. package/json-schema/NLQTrainingExample.json +120 -0
  116. package/json-schema/NormalizedFilter.json +348 -0
  117. package/json-schema/OAuthProvider.json +66 -0
  118. package/json-schema/OIDCConfig.json +18 -3
  119. package/json-schema/Organization.json +52 -0
  120. package/json-schema/PasskeyConfig.json +54 -0
  121. package/json-schema/PromptTemplate.json +163 -0
  122. package/json-schema/PromptVariable.json +56 -0
  123. package/json-schema/QueryContext.json +72 -0
  124. package/json-schema/QueryFilter.json +34 -0
  125. package/json-schema/QueryIntent.json +21 -0
  126. package/json-schema/QueryTemplate.json +81 -0
  127. package/json-schema/RAGPipelineConfig.json +552 -0
  128. package/json-schema/RAGPipelineStatus.json +66 -0
  129. package/json-schema/RAGQueryRequest.json +64 -0
  130. package/json-schema/RAGQueryResponse.json +108 -0
  131. package/json-schema/RangeOperator.json +41 -0
  132. package/json-schema/RateLimitConfig.json +36 -0
  133. package/json-schema/Report.json +20 -26
  134. package/json-schema/RerankingConfig.json +34 -0
  135. package/json-schema/RetrievalStrategy.json +121 -0
  136. package/json-schema/SAMLConfig.json +17 -3
  137. package/json-schema/Session.json +63 -0
  138. package/json-schema/SessionConfig.json +56 -0
  139. package/json-schema/SetOperator.json +18 -0
  140. package/json-schema/SpecialOperator.json +18 -0
  141. package/json-schema/StandardAuthProvider.json +857 -0
  142. package/json-schema/StringOperator.json +21 -0
  143. package/json-schema/Timeframe.json +68 -0
  144. package/json-schema/TwoFactorConfig.json +40 -0
  145. package/json-schema/User.json +51 -0
  146. package/json-schema/UserFieldMapping.json +47 -0
  147. package/json-schema/VectorStoreConfig.json +82 -0
  148. package/json-schema/VectorStoreProvider.json +21 -0
  149. package/json-schema/VerificationToken.json +36 -0
  150. package/package.json +27 -1
  151. package/json-schema/AuthProtocol.json +0 -17
  152. package/json-schema/AuthProvider.json +0 -171
@@ -0,0 +1,1389 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * AI Model Registry Protocol
4
+ *
5
+ * Centralized registry for managing AI models, prompt templates, and model versioning.
6
+ * Enables AI-powered ObjectStack applications to discover and use LLMs consistently.
7
+ */
8
+ /**
9
+ * Model Provider Type
10
+ */
11
+ export declare const ModelProviderSchema: z.ZodEnum<["openai", "azure_openai", "anthropic", "google", "cohere", "huggingface", "local", "custom"]>;
12
+ /**
13
+ * Model Capability
14
+ */
15
+ export declare const ModelCapabilitySchema: z.ZodObject<{
16
+ textGeneration: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
17
+ textEmbedding: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
18
+ imageGeneration: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
19
+ imageUnderstanding: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
20
+ functionCalling: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
21
+ codeGeneration: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
22
+ reasoning: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
23
+ }, "strip", z.ZodTypeAny, {
24
+ textGeneration: boolean;
25
+ textEmbedding: boolean;
26
+ imageGeneration: boolean;
27
+ imageUnderstanding: boolean;
28
+ functionCalling: boolean;
29
+ codeGeneration: boolean;
30
+ reasoning: boolean;
31
+ }, {
32
+ textGeneration?: boolean | undefined;
33
+ textEmbedding?: boolean | undefined;
34
+ imageGeneration?: boolean | undefined;
35
+ imageUnderstanding?: boolean | undefined;
36
+ functionCalling?: boolean | undefined;
37
+ codeGeneration?: boolean | undefined;
38
+ reasoning?: boolean | undefined;
39
+ }>;
40
+ /**
41
+ * Model Limits
42
+ */
43
+ export declare const ModelLimitsSchema: z.ZodObject<{
44
+ maxTokens: z.ZodNumber;
45
+ contextWindow: z.ZodNumber;
46
+ maxOutputTokens: z.ZodOptional<z.ZodNumber>;
47
+ rateLimit: z.ZodOptional<z.ZodObject<{
48
+ requestsPerMinute: z.ZodOptional<z.ZodNumber>;
49
+ tokensPerMinute: z.ZodOptional<z.ZodNumber>;
50
+ }, "strip", z.ZodTypeAny, {
51
+ requestsPerMinute?: number | undefined;
52
+ tokensPerMinute?: number | undefined;
53
+ }, {
54
+ requestsPerMinute?: number | undefined;
55
+ tokensPerMinute?: number | undefined;
56
+ }>>;
57
+ }, "strip", z.ZodTypeAny, {
58
+ maxTokens: number;
59
+ contextWindow: number;
60
+ rateLimit?: {
61
+ requestsPerMinute?: number | undefined;
62
+ tokensPerMinute?: number | undefined;
63
+ } | undefined;
64
+ maxOutputTokens?: number | undefined;
65
+ }, {
66
+ maxTokens: number;
67
+ contextWindow: number;
68
+ rateLimit?: {
69
+ requestsPerMinute?: number | undefined;
70
+ tokensPerMinute?: number | undefined;
71
+ } | undefined;
72
+ maxOutputTokens?: number | undefined;
73
+ }>;
74
+ /**
75
+ * Model Pricing
76
+ */
77
+ export declare const ModelPricingSchema: z.ZodObject<{
78
+ currency: z.ZodDefault<z.ZodOptional<z.ZodString>>;
79
+ inputCostPer1kTokens: z.ZodOptional<z.ZodNumber>;
80
+ outputCostPer1kTokens: z.ZodOptional<z.ZodNumber>;
81
+ embeddingCostPer1kTokens: z.ZodOptional<z.ZodNumber>;
82
+ }, "strip", z.ZodTypeAny, {
83
+ currency: string;
84
+ inputCostPer1kTokens?: number | undefined;
85
+ outputCostPer1kTokens?: number | undefined;
86
+ embeddingCostPer1kTokens?: number | undefined;
87
+ }, {
88
+ currency?: string | undefined;
89
+ inputCostPer1kTokens?: number | undefined;
90
+ outputCostPer1kTokens?: number | undefined;
91
+ embeddingCostPer1kTokens?: number | undefined;
92
+ }>;
93
+ /**
94
+ * Model Configuration
95
+ */
96
+ export declare const ModelConfigSchema: z.ZodObject<{
97
+ /** Identity */
98
+ id: z.ZodString;
99
+ name: z.ZodString;
100
+ version: z.ZodString;
101
+ provider: z.ZodEnum<["openai", "azure_openai", "anthropic", "google", "cohere", "huggingface", "local", "custom"]>;
102
+ /** Capabilities */
103
+ capabilities: z.ZodObject<{
104
+ textGeneration: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
105
+ textEmbedding: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
106
+ imageGeneration: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
107
+ imageUnderstanding: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
108
+ functionCalling: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
109
+ codeGeneration: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
110
+ reasoning: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
111
+ }, "strip", z.ZodTypeAny, {
112
+ textGeneration: boolean;
113
+ textEmbedding: boolean;
114
+ imageGeneration: boolean;
115
+ imageUnderstanding: boolean;
116
+ functionCalling: boolean;
117
+ codeGeneration: boolean;
118
+ reasoning: boolean;
119
+ }, {
120
+ textGeneration?: boolean | undefined;
121
+ textEmbedding?: boolean | undefined;
122
+ imageGeneration?: boolean | undefined;
123
+ imageUnderstanding?: boolean | undefined;
124
+ functionCalling?: boolean | undefined;
125
+ codeGeneration?: boolean | undefined;
126
+ reasoning?: boolean | undefined;
127
+ }>;
128
+ limits: z.ZodObject<{
129
+ maxTokens: z.ZodNumber;
130
+ contextWindow: z.ZodNumber;
131
+ maxOutputTokens: z.ZodOptional<z.ZodNumber>;
132
+ rateLimit: z.ZodOptional<z.ZodObject<{
133
+ requestsPerMinute: z.ZodOptional<z.ZodNumber>;
134
+ tokensPerMinute: z.ZodOptional<z.ZodNumber>;
135
+ }, "strip", z.ZodTypeAny, {
136
+ requestsPerMinute?: number | undefined;
137
+ tokensPerMinute?: number | undefined;
138
+ }, {
139
+ requestsPerMinute?: number | undefined;
140
+ tokensPerMinute?: number | undefined;
141
+ }>>;
142
+ }, "strip", z.ZodTypeAny, {
143
+ maxTokens: number;
144
+ contextWindow: number;
145
+ rateLimit?: {
146
+ requestsPerMinute?: number | undefined;
147
+ tokensPerMinute?: number | undefined;
148
+ } | undefined;
149
+ maxOutputTokens?: number | undefined;
150
+ }, {
151
+ maxTokens: number;
152
+ contextWindow: number;
153
+ rateLimit?: {
154
+ requestsPerMinute?: number | undefined;
155
+ tokensPerMinute?: number | undefined;
156
+ } | undefined;
157
+ maxOutputTokens?: number | undefined;
158
+ }>;
159
+ /** Pricing */
160
+ pricing: z.ZodOptional<z.ZodObject<{
161
+ currency: z.ZodDefault<z.ZodOptional<z.ZodString>>;
162
+ inputCostPer1kTokens: z.ZodOptional<z.ZodNumber>;
163
+ outputCostPer1kTokens: z.ZodOptional<z.ZodNumber>;
164
+ embeddingCostPer1kTokens: z.ZodOptional<z.ZodNumber>;
165
+ }, "strip", z.ZodTypeAny, {
166
+ currency: string;
167
+ inputCostPer1kTokens?: number | undefined;
168
+ outputCostPer1kTokens?: number | undefined;
169
+ embeddingCostPer1kTokens?: number | undefined;
170
+ }, {
171
+ currency?: string | undefined;
172
+ inputCostPer1kTokens?: number | undefined;
173
+ outputCostPer1kTokens?: number | undefined;
174
+ embeddingCostPer1kTokens?: number | undefined;
175
+ }>>;
176
+ /** Configuration */
177
+ endpoint: z.ZodOptional<z.ZodString>;
178
+ apiKey: z.ZodOptional<z.ZodString>;
179
+ region: z.ZodOptional<z.ZodString>;
180
+ /** Metadata */
181
+ description: z.ZodOptional<z.ZodString>;
182
+ tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
183
+ deprecated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
184
+ recommendedFor: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
185
+ }, "strip", z.ZodTypeAny, {
186
+ name: string;
187
+ id: string;
188
+ version: string;
189
+ capabilities: {
190
+ textGeneration: boolean;
191
+ textEmbedding: boolean;
192
+ imageGeneration: boolean;
193
+ imageUnderstanding: boolean;
194
+ functionCalling: boolean;
195
+ codeGeneration: boolean;
196
+ reasoning: boolean;
197
+ };
198
+ provider: "custom" | "google" | "openai" | "azure_openai" | "anthropic" | "local" | "cohere" | "huggingface";
199
+ limits: {
200
+ maxTokens: number;
201
+ contextWindow: number;
202
+ rateLimit?: {
203
+ requestsPerMinute?: number | undefined;
204
+ tokensPerMinute?: number | undefined;
205
+ } | undefined;
206
+ maxOutputTokens?: number | undefined;
207
+ };
208
+ deprecated: boolean;
209
+ description?: string | undefined;
210
+ pricing?: {
211
+ currency: string;
212
+ inputCostPer1kTokens?: number | undefined;
213
+ outputCostPer1kTokens?: number | undefined;
214
+ embeddingCostPer1kTokens?: number | undefined;
215
+ } | undefined;
216
+ endpoint?: string | undefined;
217
+ apiKey?: string | undefined;
218
+ region?: string | undefined;
219
+ tags?: string[] | undefined;
220
+ recommendedFor?: string[] | undefined;
221
+ }, {
222
+ name: string;
223
+ id: string;
224
+ version: string;
225
+ capabilities: {
226
+ textGeneration?: boolean | undefined;
227
+ textEmbedding?: boolean | undefined;
228
+ imageGeneration?: boolean | undefined;
229
+ imageUnderstanding?: boolean | undefined;
230
+ functionCalling?: boolean | undefined;
231
+ codeGeneration?: boolean | undefined;
232
+ reasoning?: boolean | undefined;
233
+ };
234
+ provider: "custom" | "google" | "openai" | "azure_openai" | "anthropic" | "local" | "cohere" | "huggingface";
235
+ limits: {
236
+ maxTokens: number;
237
+ contextWindow: number;
238
+ rateLimit?: {
239
+ requestsPerMinute?: number | undefined;
240
+ tokensPerMinute?: number | undefined;
241
+ } | undefined;
242
+ maxOutputTokens?: number | undefined;
243
+ };
244
+ description?: string | undefined;
245
+ pricing?: {
246
+ currency?: string | undefined;
247
+ inputCostPer1kTokens?: number | undefined;
248
+ outputCostPer1kTokens?: number | undefined;
249
+ embeddingCostPer1kTokens?: number | undefined;
250
+ } | undefined;
251
+ endpoint?: string | undefined;
252
+ apiKey?: string | undefined;
253
+ region?: string | undefined;
254
+ tags?: string[] | undefined;
255
+ deprecated?: boolean | undefined;
256
+ recommendedFor?: string[] | undefined;
257
+ }>;
258
+ /**
259
+ * Prompt Template Variable
260
+ */
261
+ export declare const PromptVariableSchema: z.ZodObject<{
262
+ name: z.ZodString;
263
+ type: z.ZodDefault<z.ZodEnum<["string", "number", "boolean", "object", "array"]>>;
264
+ required: z.ZodDefault<z.ZodBoolean>;
265
+ defaultValue: z.ZodOptional<z.ZodAny>;
266
+ description: z.ZodOptional<z.ZodString>;
267
+ validation: z.ZodOptional<z.ZodObject<{
268
+ minLength: z.ZodOptional<z.ZodNumber>;
269
+ maxLength: z.ZodOptional<z.ZodNumber>;
270
+ pattern: z.ZodOptional<z.ZodString>;
271
+ enum: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
272
+ }, "strip", z.ZodTypeAny, {
273
+ maxLength?: number | undefined;
274
+ minLength?: number | undefined;
275
+ enum?: any[] | undefined;
276
+ pattern?: string | undefined;
277
+ }, {
278
+ maxLength?: number | undefined;
279
+ minLength?: number | undefined;
280
+ enum?: any[] | undefined;
281
+ pattern?: string | undefined;
282
+ }>>;
283
+ }, "strip", z.ZodTypeAny, {
284
+ type: "string" | "number" | "boolean" | "object" | "array";
285
+ name: string;
286
+ required: boolean;
287
+ validation?: {
288
+ maxLength?: number | undefined;
289
+ minLength?: number | undefined;
290
+ enum?: any[] | undefined;
291
+ pattern?: string | undefined;
292
+ } | undefined;
293
+ description?: string | undefined;
294
+ defaultValue?: any;
295
+ }, {
296
+ name: string;
297
+ validation?: {
298
+ maxLength?: number | undefined;
299
+ minLength?: number | undefined;
300
+ enum?: any[] | undefined;
301
+ pattern?: string | undefined;
302
+ } | undefined;
303
+ type?: "string" | "number" | "boolean" | "object" | "array" | undefined;
304
+ description?: string | undefined;
305
+ required?: boolean | undefined;
306
+ defaultValue?: any;
307
+ }>;
308
+ /**
309
+ * Prompt Template
310
+ */
311
+ export declare const PromptTemplateSchema: z.ZodObject<{
312
+ /** Identity */
313
+ id: z.ZodString;
314
+ name: z.ZodString;
315
+ label: z.ZodString;
316
+ /** Template Content */
317
+ system: z.ZodOptional<z.ZodString>;
318
+ user: z.ZodString;
319
+ assistant: z.ZodOptional<z.ZodString>;
320
+ /** Variables */
321
+ variables: z.ZodOptional<z.ZodArray<z.ZodObject<{
322
+ name: z.ZodString;
323
+ type: z.ZodDefault<z.ZodEnum<["string", "number", "boolean", "object", "array"]>>;
324
+ required: z.ZodDefault<z.ZodBoolean>;
325
+ defaultValue: z.ZodOptional<z.ZodAny>;
326
+ description: z.ZodOptional<z.ZodString>;
327
+ validation: z.ZodOptional<z.ZodObject<{
328
+ minLength: z.ZodOptional<z.ZodNumber>;
329
+ maxLength: z.ZodOptional<z.ZodNumber>;
330
+ pattern: z.ZodOptional<z.ZodString>;
331
+ enum: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
332
+ }, "strip", z.ZodTypeAny, {
333
+ maxLength?: number | undefined;
334
+ minLength?: number | undefined;
335
+ enum?: any[] | undefined;
336
+ pattern?: string | undefined;
337
+ }, {
338
+ maxLength?: number | undefined;
339
+ minLength?: number | undefined;
340
+ enum?: any[] | undefined;
341
+ pattern?: string | undefined;
342
+ }>>;
343
+ }, "strip", z.ZodTypeAny, {
344
+ type: "string" | "number" | "boolean" | "object" | "array";
345
+ name: string;
346
+ required: boolean;
347
+ validation?: {
348
+ maxLength?: number | undefined;
349
+ minLength?: number | undefined;
350
+ enum?: any[] | undefined;
351
+ pattern?: string | undefined;
352
+ } | undefined;
353
+ description?: string | undefined;
354
+ defaultValue?: any;
355
+ }, {
356
+ name: string;
357
+ validation?: {
358
+ maxLength?: number | undefined;
359
+ minLength?: number | undefined;
360
+ enum?: any[] | undefined;
361
+ pattern?: string | undefined;
362
+ } | undefined;
363
+ type?: "string" | "number" | "boolean" | "object" | "array" | undefined;
364
+ description?: string | undefined;
365
+ required?: boolean | undefined;
366
+ defaultValue?: any;
367
+ }>, "many">>;
368
+ /** Model Configuration */
369
+ modelId: z.ZodOptional<z.ZodString>;
370
+ temperature: z.ZodOptional<z.ZodNumber>;
371
+ maxTokens: z.ZodOptional<z.ZodNumber>;
372
+ topP: z.ZodOptional<z.ZodNumber>;
373
+ frequencyPenalty: z.ZodOptional<z.ZodNumber>;
374
+ presencePenalty: z.ZodOptional<z.ZodNumber>;
375
+ stopSequences: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
376
+ /** Metadata */
377
+ version: z.ZodDefault<z.ZodOptional<z.ZodString>>;
378
+ description: z.ZodOptional<z.ZodString>;
379
+ category: z.ZodOptional<z.ZodString>;
380
+ tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
381
+ examples: z.ZodOptional<z.ZodArray<z.ZodObject<{
382
+ input: z.ZodRecord<z.ZodString, z.ZodAny>;
383
+ output: z.ZodString;
384
+ }, "strip", z.ZodTypeAny, {
385
+ input: Record<string, any>;
386
+ output: string;
387
+ }, {
388
+ input: Record<string, any>;
389
+ output: string;
390
+ }>, "many">>;
391
+ }, "strip", z.ZodTypeAny, {
392
+ label: string;
393
+ name: string;
394
+ id: string;
395
+ user: string;
396
+ version: string;
397
+ description?: string | undefined;
398
+ variables?: {
399
+ type: "string" | "number" | "boolean" | "object" | "array";
400
+ name: string;
401
+ required: boolean;
402
+ validation?: {
403
+ maxLength?: number | undefined;
404
+ minLength?: number | undefined;
405
+ enum?: any[] | undefined;
406
+ pattern?: string | undefined;
407
+ } | undefined;
408
+ description?: string | undefined;
409
+ defaultValue?: any;
410
+ }[] | undefined;
411
+ system?: string | undefined;
412
+ modelId?: string | undefined;
413
+ temperature?: number | undefined;
414
+ maxTokens?: number | undefined;
415
+ topP?: number | undefined;
416
+ tags?: string[] | undefined;
417
+ assistant?: string | undefined;
418
+ frequencyPenalty?: number | undefined;
419
+ presencePenalty?: number | undefined;
420
+ stopSequences?: string[] | undefined;
421
+ category?: string | undefined;
422
+ examples?: {
423
+ input: Record<string, any>;
424
+ output: string;
425
+ }[] | undefined;
426
+ }, {
427
+ label: string;
428
+ name: string;
429
+ id: string;
430
+ user: string;
431
+ description?: string | undefined;
432
+ variables?: {
433
+ name: string;
434
+ validation?: {
435
+ maxLength?: number | undefined;
436
+ minLength?: number | undefined;
437
+ enum?: any[] | undefined;
438
+ pattern?: string | undefined;
439
+ } | undefined;
440
+ type?: "string" | "number" | "boolean" | "object" | "array" | undefined;
441
+ description?: string | undefined;
442
+ required?: boolean | undefined;
443
+ defaultValue?: any;
444
+ }[] | undefined;
445
+ system?: string | undefined;
446
+ version?: string | undefined;
447
+ modelId?: string | undefined;
448
+ temperature?: number | undefined;
449
+ maxTokens?: number | undefined;
450
+ topP?: number | undefined;
451
+ tags?: string[] | undefined;
452
+ assistant?: string | undefined;
453
+ frequencyPenalty?: number | undefined;
454
+ presencePenalty?: number | undefined;
455
+ stopSequences?: string[] | undefined;
456
+ category?: string | undefined;
457
+ examples?: {
458
+ input: Record<string, any>;
459
+ output: string;
460
+ }[] | undefined;
461
+ }>;
462
+ /**
463
+ * Model Registry Entry
464
+ */
465
+ export declare const ModelRegistryEntrySchema: z.ZodObject<{
466
+ model: z.ZodObject<{
467
+ /** Identity */
468
+ id: z.ZodString;
469
+ name: z.ZodString;
470
+ version: z.ZodString;
471
+ provider: z.ZodEnum<["openai", "azure_openai", "anthropic", "google", "cohere", "huggingface", "local", "custom"]>;
472
+ /** Capabilities */
473
+ capabilities: z.ZodObject<{
474
+ textGeneration: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
475
+ textEmbedding: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
476
+ imageGeneration: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
477
+ imageUnderstanding: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
478
+ functionCalling: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
479
+ codeGeneration: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
480
+ reasoning: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
481
+ }, "strip", z.ZodTypeAny, {
482
+ textGeneration: boolean;
483
+ textEmbedding: boolean;
484
+ imageGeneration: boolean;
485
+ imageUnderstanding: boolean;
486
+ functionCalling: boolean;
487
+ codeGeneration: boolean;
488
+ reasoning: boolean;
489
+ }, {
490
+ textGeneration?: boolean | undefined;
491
+ textEmbedding?: boolean | undefined;
492
+ imageGeneration?: boolean | undefined;
493
+ imageUnderstanding?: boolean | undefined;
494
+ functionCalling?: boolean | undefined;
495
+ codeGeneration?: boolean | undefined;
496
+ reasoning?: boolean | undefined;
497
+ }>;
498
+ limits: z.ZodObject<{
499
+ maxTokens: z.ZodNumber;
500
+ contextWindow: z.ZodNumber;
501
+ maxOutputTokens: z.ZodOptional<z.ZodNumber>;
502
+ rateLimit: z.ZodOptional<z.ZodObject<{
503
+ requestsPerMinute: z.ZodOptional<z.ZodNumber>;
504
+ tokensPerMinute: z.ZodOptional<z.ZodNumber>;
505
+ }, "strip", z.ZodTypeAny, {
506
+ requestsPerMinute?: number | undefined;
507
+ tokensPerMinute?: number | undefined;
508
+ }, {
509
+ requestsPerMinute?: number | undefined;
510
+ tokensPerMinute?: number | undefined;
511
+ }>>;
512
+ }, "strip", z.ZodTypeAny, {
513
+ maxTokens: number;
514
+ contextWindow: number;
515
+ rateLimit?: {
516
+ requestsPerMinute?: number | undefined;
517
+ tokensPerMinute?: number | undefined;
518
+ } | undefined;
519
+ maxOutputTokens?: number | undefined;
520
+ }, {
521
+ maxTokens: number;
522
+ contextWindow: number;
523
+ rateLimit?: {
524
+ requestsPerMinute?: number | undefined;
525
+ tokensPerMinute?: number | undefined;
526
+ } | undefined;
527
+ maxOutputTokens?: number | undefined;
528
+ }>;
529
+ /** Pricing */
530
+ pricing: z.ZodOptional<z.ZodObject<{
531
+ currency: z.ZodDefault<z.ZodOptional<z.ZodString>>;
532
+ inputCostPer1kTokens: z.ZodOptional<z.ZodNumber>;
533
+ outputCostPer1kTokens: z.ZodOptional<z.ZodNumber>;
534
+ embeddingCostPer1kTokens: z.ZodOptional<z.ZodNumber>;
535
+ }, "strip", z.ZodTypeAny, {
536
+ currency: string;
537
+ inputCostPer1kTokens?: number | undefined;
538
+ outputCostPer1kTokens?: number | undefined;
539
+ embeddingCostPer1kTokens?: number | undefined;
540
+ }, {
541
+ currency?: string | undefined;
542
+ inputCostPer1kTokens?: number | undefined;
543
+ outputCostPer1kTokens?: number | undefined;
544
+ embeddingCostPer1kTokens?: number | undefined;
545
+ }>>;
546
+ /** Configuration */
547
+ endpoint: z.ZodOptional<z.ZodString>;
548
+ apiKey: z.ZodOptional<z.ZodString>;
549
+ region: z.ZodOptional<z.ZodString>;
550
+ /** Metadata */
551
+ description: z.ZodOptional<z.ZodString>;
552
+ tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
553
+ deprecated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
554
+ recommendedFor: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
555
+ }, "strip", z.ZodTypeAny, {
556
+ name: string;
557
+ id: string;
558
+ version: string;
559
+ capabilities: {
560
+ textGeneration: boolean;
561
+ textEmbedding: boolean;
562
+ imageGeneration: boolean;
563
+ imageUnderstanding: boolean;
564
+ functionCalling: boolean;
565
+ codeGeneration: boolean;
566
+ reasoning: boolean;
567
+ };
568
+ provider: "custom" | "google" | "openai" | "azure_openai" | "anthropic" | "local" | "cohere" | "huggingface";
569
+ limits: {
570
+ maxTokens: number;
571
+ contextWindow: number;
572
+ rateLimit?: {
573
+ requestsPerMinute?: number | undefined;
574
+ tokensPerMinute?: number | undefined;
575
+ } | undefined;
576
+ maxOutputTokens?: number | undefined;
577
+ };
578
+ deprecated: boolean;
579
+ description?: string | undefined;
580
+ pricing?: {
581
+ currency: string;
582
+ inputCostPer1kTokens?: number | undefined;
583
+ outputCostPer1kTokens?: number | undefined;
584
+ embeddingCostPer1kTokens?: number | undefined;
585
+ } | undefined;
586
+ endpoint?: string | undefined;
587
+ apiKey?: string | undefined;
588
+ region?: string | undefined;
589
+ tags?: string[] | undefined;
590
+ recommendedFor?: string[] | undefined;
591
+ }, {
592
+ name: string;
593
+ id: string;
594
+ version: string;
595
+ capabilities: {
596
+ textGeneration?: boolean | undefined;
597
+ textEmbedding?: boolean | undefined;
598
+ imageGeneration?: boolean | undefined;
599
+ imageUnderstanding?: boolean | undefined;
600
+ functionCalling?: boolean | undefined;
601
+ codeGeneration?: boolean | undefined;
602
+ reasoning?: boolean | undefined;
603
+ };
604
+ provider: "custom" | "google" | "openai" | "azure_openai" | "anthropic" | "local" | "cohere" | "huggingface";
605
+ limits: {
606
+ maxTokens: number;
607
+ contextWindow: number;
608
+ rateLimit?: {
609
+ requestsPerMinute?: number | undefined;
610
+ tokensPerMinute?: number | undefined;
611
+ } | undefined;
612
+ maxOutputTokens?: number | undefined;
613
+ };
614
+ description?: string | undefined;
615
+ pricing?: {
616
+ currency?: string | undefined;
617
+ inputCostPer1kTokens?: number | undefined;
618
+ outputCostPer1kTokens?: number | undefined;
619
+ embeddingCostPer1kTokens?: number | undefined;
620
+ } | undefined;
621
+ endpoint?: string | undefined;
622
+ apiKey?: string | undefined;
623
+ region?: string | undefined;
624
+ tags?: string[] | undefined;
625
+ deprecated?: boolean | undefined;
626
+ recommendedFor?: string[] | undefined;
627
+ }>;
628
+ status: z.ZodDefault<z.ZodEnum<["active", "deprecated", "experimental", "disabled"]>>;
629
+ priority: z.ZodDefault<z.ZodNumber>;
630
+ fallbackModels: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
631
+ healthCheck: z.ZodOptional<z.ZodObject<{
632
+ enabled: z.ZodDefault<z.ZodBoolean>;
633
+ intervalSeconds: z.ZodDefault<z.ZodNumber>;
634
+ lastChecked: z.ZodOptional<z.ZodString>;
635
+ status: z.ZodDefault<z.ZodEnum<["healthy", "unhealthy", "unknown"]>>;
636
+ }, "strip", z.ZodTypeAny, {
637
+ status: "unknown" | "healthy" | "unhealthy";
638
+ enabled: boolean;
639
+ intervalSeconds: number;
640
+ lastChecked?: string | undefined;
641
+ }, {
642
+ status?: "unknown" | "healthy" | "unhealthy" | undefined;
643
+ enabled?: boolean | undefined;
644
+ intervalSeconds?: number | undefined;
645
+ lastChecked?: string | undefined;
646
+ }>>;
647
+ }, "strip", z.ZodTypeAny, {
648
+ status: "active" | "disabled" | "deprecated" | "experimental";
649
+ model: {
650
+ name: string;
651
+ id: string;
652
+ version: string;
653
+ capabilities: {
654
+ textGeneration: boolean;
655
+ textEmbedding: boolean;
656
+ imageGeneration: boolean;
657
+ imageUnderstanding: boolean;
658
+ functionCalling: boolean;
659
+ codeGeneration: boolean;
660
+ reasoning: boolean;
661
+ };
662
+ provider: "custom" | "google" | "openai" | "azure_openai" | "anthropic" | "local" | "cohere" | "huggingface";
663
+ limits: {
664
+ maxTokens: number;
665
+ contextWindow: number;
666
+ rateLimit?: {
667
+ requestsPerMinute?: number | undefined;
668
+ tokensPerMinute?: number | undefined;
669
+ } | undefined;
670
+ maxOutputTokens?: number | undefined;
671
+ };
672
+ deprecated: boolean;
673
+ description?: string | undefined;
674
+ pricing?: {
675
+ currency: string;
676
+ inputCostPer1kTokens?: number | undefined;
677
+ outputCostPer1kTokens?: number | undefined;
678
+ embeddingCostPer1kTokens?: number | undefined;
679
+ } | undefined;
680
+ endpoint?: string | undefined;
681
+ apiKey?: string | undefined;
682
+ region?: string | undefined;
683
+ tags?: string[] | undefined;
684
+ recommendedFor?: string[] | undefined;
685
+ };
686
+ priority: number;
687
+ fallbackModels?: string[] | undefined;
688
+ healthCheck?: {
689
+ status: "unknown" | "healthy" | "unhealthy";
690
+ enabled: boolean;
691
+ intervalSeconds: number;
692
+ lastChecked?: string | undefined;
693
+ } | undefined;
694
+ }, {
695
+ model: {
696
+ name: string;
697
+ id: string;
698
+ version: string;
699
+ capabilities: {
700
+ textGeneration?: boolean | undefined;
701
+ textEmbedding?: boolean | undefined;
702
+ imageGeneration?: boolean | undefined;
703
+ imageUnderstanding?: boolean | undefined;
704
+ functionCalling?: boolean | undefined;
705
+ codeGeneration?: boolean | undefined;
706
+ reasoning?: boolean | undefined;
707
+ };
708
+ provider: "custom" | "google" | "openai" | "azure_openai" | "anthropic" | "local" | "cohere" | "huggingface";
709
+ limits: {
710
+ maxTokens: number;
711
+ contextWindow: number;
712
+ rateLimit?: {
713
+ requestsPerMinute?: number | undefined;
714
+ tokensPerMinute?: number | undefined;
715
+ } | undefined;
716
+ maxOutputTokens?: number | undefined;
717
+ };
718
+ description?: string | undefined;
719
+ pricing?: {
720
+ currency?: string | undefined;
721
+ inputCostPer1kTokens?: number | undefined;
722
+ outputCostPer1kTokens?: number | undefined;
723
+ embeddingCostPer1kTokens?: number | undefined;
724
+ } | undefined;
725
+ endpoint?: string | undefined;
726
+ apiKey?: string | undefined;
727
+ region?: string | undefined;
728
+ tags?: string[] | undefined;
729
+ deprecated?: boolean | undefined;
730
+ recommendedFor?: string[] | undefined;
731
+ };
732
+ status?: "active" | "disabled" | "deprecated" | "experimental" | undefined;
733
+ priority?: number | undefined;
734
+ fallbackModels?: string[] | undefined;
735
+ healthCheck?: {
736
+ status?: "unknown" | "healthy" | "unhealthy" | undefined;
737
+ enabled?: boolean | undefined;
738
+ intervalSeconds?: number | undefined;
739
+ lastChecked?: string | undefined;
740
+ } | undefined;
741
+ }>;
742
+ /**
743
+ * Model Registry
744
+ */
745
+ export declare const ModelRegistrySchema: z.ZodObject<{
746
+ name: z.ZodString;
747
+ models: z.ZodRecord<z.ZodString, z.ZodObject<{
748
+ model: z.ZodObject<{
749
+ /** Identity */
750
+ id: z.ZodString;
751
+ name: z.ZodString;
752
+ version: z.ZodString;
753
+ provider: z.ZodEnum<["openai", "azure_openai", "anthropic", "google", "cohere", "huggingface", "local", "custom"]>;
754
+ /** Capabilities */
755
+ capabilities: z.ZodObject<{
756
+ textGeneration: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
757
+ textEmbedding: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
758
+ imageGeneration: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
759
+ imageUnderstanding: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
760
+ functionCalling: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
761
+ codeGeneration: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
762
+ reasoning: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
763
+ }, "strip", z.ZodTypeAny, {
764
+ textGeneration: boolean;
765
+ textEmbedding: boolean;
766
+ imageGeneration: boolean;
767
+ imageUnderstanding: boolean;
768
+ functionCalling: boolean;
769
+ codeGeneration: boolean;
770
+ reasoning: boolean;
771
+ }, {
772
+ textGeneration?: boolean | undefined;
773
+ textEmbedding?: boolean | undefined;
774
+ imageGeneration?: boolean | undefined;
775
+ imageUnderstanding?: boolean | undefined;
776
+ functionCalling?: boolean | undefined;
777
+ codeGeneration?: boolean | undefined;
778
+ reasoning?: boolean | undefined;
779
+ }>;
780
+ limits: z.ZodObject<{
781
+ maxTokens: z.ZodNumber;
782
+ contextWindow: z.ZodNumber;
783
+ maxOutputTokens: z.ZodOptional<z.ZodNumber>;
784
+ rateLimit: z.ZodOptional<z.ZodObject<{
785
+ requestsPerMinute: z.ZodOptional<z.ZodNumber>;
786
+ tokensPerMinute: z.ZodOptional<z.ZodNumber>;
787
+ }, "strip", z.ZodTypeAny, {
788
+ requestsPerMinute?: number | undefined;
789
+ tokensPerMinute?: number | undefined;
790
+ }, {
791
+ requestsPerMinute?: number | undefined;
792
+ tokensPerMinute?: number | undefined;
793
+ }>>;
794
+ }, "strip", z.ZodTypeAny, {
795
+ maxTokens: number;
796
+ contextWindow: number;
797
+ rateLimit?: {
798
+ requestsPerMinute?: number | undefined;
799
+ tokensPerMinute?: number | undefined;
800
+ } | undefined;
801
+ maxOutputTokens?: number | undefined;
802
+ }, {
803
+ maxTokens: number;
804
+ contextWindow: number;
805
+ rateLimit?: {
806
+ requestsPerMinute?: number | undefined;
807
+ tokensPerMinute?: number | undefined;
808
+ } | undefined;
809
+ maxOutputTokens?: number | undefined;
810
+ }>;
811
+ /** Pricing */
812
+ pricing: z.ZodOptional<z.ZodObject<{
813
+ currency: z.ZodDefault<z.ZodOptional<z.ZodString>>;
814
+ inputCostPer1kTokens: z.ZodOptional<z.ZodNumber>;
815
+ outputCostPer1kTokens: z.ZodOptional<z.ZodNumber>;
816
+ embeddingCostPer1kTokens: z.ZodOptional<z.ZodNumber>;
817
+ }, "strip", z.ZodTypeAny, {
818
+ currency: string;
819
+ inputCostPer1kTokens?: number | undefined;
820
+ outputCostPer1kTokens?: number | undefined;
821
+ embeddingCostPer1kTokens?: number | undefined;
822
+ }, {
823
+ currency?: string | undefined;
824
+ inputCostPer1kTokens?: number | undefined;
825
+ outputCostPer1kTokens?: number | undefined;
826
+ embeddingCostPer1kTokens?: number | undefined;
827
+ }>>;
828
+ /** Configuration */
829
+ endpoint: z.ZodOptional<z.ZodString>;
830
+ apiKey: z.ZodOptional<z.ZodString>;
831
+ region: z.ZodOptional<z.ZodString>;
832
+ /** Metadata */
833
+ description: z.ZodOptional<z.ZodString>;
834
+ tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
835
+ deprecated: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
836
+ recommendedFor: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
837
+ }, "strip", z.ZodTypeAny, {
838
+ name: string;
839
+ id: string;
840
+ version: string;
841
+ capabilities: {
842
+ textGeneration: boolean;
843
+ textEmbedding: boolean;
844
+ imageGeneration: boolean;
845
+ imageUnderstanding: boolean;
846
+ functionCalling: boolean;
847
+ codeGeneration: boolean;
848
+ reasoning: boolean;
849
+ };
850
+ provider: "custom" | "google" | "openai" | "azure_openai" | "anthropic" | "local" | "cohere" | "huggingface";
851
+ limits: {
852
+ maxTokens: number;
853
+ contextWindow: number;
854
+ rateLimit?: {
855
+ requestsPerMinute?: number | undefined;
856
+ tokensPerMinute?: number | undefined;
857
+ } | undefined;
858
+ maxOutputTokens?: number | undefined;
859
+ };
860
+ deprecated: boolean;
861
+ description?: string | undefined;
862
+ pricing?: {
863
+ currency: string;
864
+ inputCostPer1kTokens?: number | undefined;
865
+ outputCostPer1kTokens?: number | undefined;
866
+ embeddingCostPer1kTokens?: number | undefined;
867
+ } | undefined;
868
+ endpoint?: string | undefined;
869
+ apiKey?: string | undefined;
870
+ region?: string | undefined;
871
+ tags?: string[] | undefined;
872
+ recommendedFor?: string[] | undefined;
873
+ }, {
874
+ name: string;
875
+ id: string;
876
+ version: string;
877
+ capabilities: {
878
+ textGeneration?: boolean | undefined;
879
+ textEmbedding?: boolean | undefined;
880
+ imageGeneration?: boolean | undefined;
881
+ imageUnderstanding?: boolean | undefined;
882
+ functionCalling?: boolean | undefined;
883
+ codeGeneration?: boolean | undefined;
884
+ reasoning?: boolean | undefined;
885
+ };
886
+ provider: "custom" | "google" | "openai" | "azure_openai" | "anthropic" | "local" | "cohere" | "huggingface";
887
+ limits: {
888
+ maxTokens: number;
889
+ contextWindow: number;
890
+ rateLimit?: {
891
+ requestsPerMinute?: number | undefined;
892
+ tokensPerMinute?: number | undefined;
893
+ } | undefined;
894
+ maxOutputTokens?: number | undefined;
895
+ };
896
+ description?: string | undefined;
897
+ pricing?: {
898
+ currency?: string | undefined;
899
+ inputCostPer1kTokens?: number | undefined;
900
+ outputCostPer1kTokens?: number | undefined;
901
+ embeddingCostPer1kTokens?: number | undefined;
902
+ } | undefined;
903
+ endpoint?: string | undefined;
904
+ apiKey?: string | undefined;
905
+ region?: string | undefined;
906
+ tags?: string[] | undefined;
907
+ deprecated?: boolean | undefined;
908
+ recommendedFor?: string[] | undefined;
909
+ }>;
910
+ status: z.ZodDefault<z.ZodEnum<["active", "deprecated", "experimental", "disabled"]>>;
911
+ priority: z.ZodDefault<z.ZodNumber>;
912
+ fallbackModels: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
913
+ healthCheck: z.ZodOptional<z.ZodObject<{
914
+ enabled: z.ZodDefault<z.ZodBoolean>;
915
+ intervalSeconds: z.ZodDefault<z.ZodNumber>;
916
+ lastChecked: z.ZodOptional<z.ZodString>;
917
+ status: z.ZodDefault<z.ZodEnum<["healthy", "unhealthy", "unknown"]>>;
918
+ }, "strip", z.ZodTypeAny, {
919
+ status: "unknown" | "healthy" | "unhealthy";
920
+ enabled: boolean;
921
+ intervalSeconds: number;
922
+ lastChecked?: string | undefined;
923
+ }, {
924
+ status?: "unknown" | "healthy" | "unhealthy" | undefined;
925
+ enabled?: boolean | undefined;
926
+ intervalSeconds?: number | undefined;
927
+ lastChecked?: string | undefined;
928
+ }>>;
929
+ }, "strip", z.ZodTypeAny, {
930
+ status: "active" | "disabled" | "deprecated" | "experimental";
931
+ model: {
932
+ name: string;
933
+ id: string;
934
+ version: string;
935
+ capabilities: {
936
+ textGeneration: boolean;
937
+ textEmbedding: boolean;
938
+ imageGeneration: boolean;
939
+ imageUnderstanding: boolean;
940
+ functionCalling: boolean;
941
+ codeGeneration: boolean;
942
+ reasoning: boolean;
943
+ };
944
+ provider: "custom" | "google" | "openai" | "azure_openai" | "anthropic" | "local" | "cohere" | "huggingface";
945
+ limits: {
946
+ maxTokens: number;
947
+ contextWindow: number;
948
+ rateLimit?: {
949
+ requestsPerMinute?: number | undefined;
950
+ tokensPerMinute?: number | undefined;
951
+ } | undefined;
952
+ maxOutputTokens?: number | undefined;
953
+ };
954
+ deprecated: boolean;
955
+ description?: string | undefined;
956
+ pricing?: {
957
+ currency: string;
958
+ inputCostPer1kTokens?: number | undefined;
959
+ outputCostPer1kTokens?: number | undefined;
960
+ embeddingCostPer1kTokens?: number | undefined;
961
+ } | undefined;
962
+ endpoint?: string | undefined;
963
+ apiKey?: string | undefined;
964
+ region?: string | undefined;
965
+ tags?: string[] | undefined;
966
+ recommendedFor?: string[] | undefined;
967
+ };
968
+ priority: number;
969
+ fallbackModels?: string[] | undefined;
970
+ healthCheck?: {
971
+ status: "unknown" | "healthy" | "unhealthy";
972
+ enabled: boolean;
973
+ intervalSeconds: number;
974
+ lastChecked?: string | undefined;
975
+ } | undefined;
976
+ }, {
977
+ model: {
978
+ name: string;
979
+ id: string;
980
+ version: string;
981
+ capabilities: {
982
+ textGeneration?: boolean | undefined;
983
+ textEmbedding?: boolean | undefined;
984
+ imageGeneration?: boolean | undefined;
985
+ imageUnderstanding?: boolean | undefined;
986
+ functionCalling?: boolean | undefined;
987
+ codeGeneration?: boolean | undefined;
988
+ reasoning?: boolean | undefined;
989
+ };
990
+ provider: "custom" | "google" | "openai" | "azure_openai" | "anthropic" | "local" | "cohere" | "huggingface";
991
+ limits: {
992
+ maxTokens: number;
993
+ contextWindow: number;
994
+ rateLimit?: {
995
+ requestsPerMinute?: number | undefined;
996
+ tokensPerMinute?: number | undefined;
997
+ } | undefined;
998
+ maxOutputTokens?: number | undefined;
999
+ };
1000
+ description?: string | undefined;
1001
+ pricing?: {
1002
+ currency?: string | undefined;
1003
+ inputCostPer1kTokens?: number | undefined;
1004
+ outputCostPer1kTokens?: number | undefined;
1005
+ embeddingCostPer1kTokens?: number | undefined;
1006
+ } | undefined;
1007
+ endpoint?: string | undefined;
1008
+ apiKey?: string | undefined;
1009
+ region?: string | undefined;
1010
+ tags?: string[] | undefined;
1011
+ deprecated?: boolean | undefined;
1012
+ recommendedFor?: string[] | undefined;
1013
+ };
1014
+ status?: "active" | "disabled" | "deprecated" | "experimental" | undefined;
1015
+ priority?: number | undefined;
1016
+ fallbackModels?: string[] | undefined;
1017
+ healthCheck?: {
1018
+ status?: "unknown" | "healthy" | "unhealthy" | undefined;
1019
+ enabled?: boolean | undefined;
1020
+ intervalSeconds?: number | undefined;
1021
+ lastChecked?: string | undefined;
1022
+ } | undefined;
1023
+ }>>;
1024
+ promptTemplates: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
1025
+ /** Identity */
1026
+ id: z.ZodString;
1027
+ name: z.ZodString;
1028
+ label: z.ZodString;
1029
+ /** Template Content */
1030
+ system: z.ZodOptional<z.ZodString>;
1031
+ user: z.ZodString;
1032
+ assistant: z.ZodOptional<z.ZodString>;
1033
+ /** Variables */
1034
+ variables: z.ZodOptional<z.ZodArray<z.ZodObject<{
1035
+ name: z.ZodString;
1036
+ type: z.ZodDefault<z.ZodEnum<["string", "number", "boolean", "object", "array"]>>;
1037
+ required: z.ZodDefault<z.ZodBoolean>;
1038
+ defaultValue: z.ZodOptional<z.ZodAny>;
1039
+ description: z.ZodOptional<z.ZodString>;
1040
+ validation: z.ZodOptional<z.ZodObject<{
1041
+ minLength: z.ZodOptional<z.ZodNumber>;
1042
+ maxLength: z.ZodOptional<z.ZodNumber>;
1043
+ pattern: z.ZodOptional<z.ZodString>;
1044
+ enum: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
1045
+ }, "strip", z.ZodTypeAny, {
1046
+ maxLength?: number | undefined;
1047
+ minLength?: number | undefined;
1048
+ enum?: any[] | undefined;
1049
+ pattern?: string | undefined;
1050
+ }, {
1051
+ maxLength?: number | undefined;
1052
+ minLength?: number | undefined;
1053
+ enum?: any[] | undefined;
1054
+ pattern?: string | undefined;
1055
+ }>>;
1056
+ }, "strip", z.ZodTypeAny, {
1057
+ type: "string" | "number" | "boolean" | "object" | "array";
1058
+ name: string;
1059
+ required: boolean;
1060
+ validation?: {
1061
+ maxLength?: number | undefined;
1062
+ minLength?: number | undefined;
1063
+ enum?: any[] | undefined;
1064
+ pattern?: string | undefined;
1065
+ } | undefined;
1066
+ description?: string | undefined;
1067
+ defaultValue?: any;
1068
+ }, {
1069
+ name: string;
1070
+ validation?: {
1071
+ maxLength?: number | undefined;
1072
+ minLength?: number | undefined;
1073
+ enum?: any[] | undefined;
1074
+ pattern?: string | undefined;
1075
+ } | undefined;
1076
+ type?: "string" | "number" | "boolean" | "object" | "array" | undefined;
1077
+ description?: string | undefined;
1078
+ required?: boolean | undefined;
1079
+ defaultValue?: any;
1080
+ }>, "many">>;
1081
+ /** Model Configuration */
1082
+ modelId: z.ZodOptional<z.ZodString>;
1083
+ temperature: z.ZodOptional<z.ZodNumber>;
1084
+ maxTokens: z.ZodOptional<z.ZodNumber>;
1085
+ topP: z.ZodOptional<z.ZodNumber>;
1086
+ frequencyPenalty: z.ZodOptional<z.ZodNumber>;
1087
+ presencePenalty: z.ZodOptional<z.ZodNumber>;
1088
+ stopSequences: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1089
+ /** Metadata */
1090
+ version: z.ZodDefault<z.ZodOptional<z.ZodString>>;
1091
+ description: z.ZodOptional<z.ZodString>;
1092
+ category: z.ZodOptional<z.ZodString>;
1093
+ tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1094
+ examples: z.ZodOptional<z.ZodArray<z.ZodObject<{
1095
+ input: z.ZodRecord<z.ZodString, z.ZodAny>;
1096
+ output: z.ZodString;
1097
+ }, "strip", z.ZodTypeAny, {
1098
+ input: Record<string, any>;
1099
+ output: string;
1100
+ }, {
1101
+ input: Record<string, any>;
1102
+ output: string;
1103
+ }>, "many">>;
1104
+ }, "strip", z.ZodTypeAny, {
1105
+ label: string;
1106
+ name: string;
1107
+ id: string;
1108
+ user: string;
1109
+ version: string;
1110
+ description?: string | undefined;
1111
+ variables?: {
1112
+ type: "string" | "number" | "boolean" | "object" | "array";
1113
+ name: string;
1114
+ required: boolean;
1115
+ validation?: {
1116
+ maxLength?: number | undefined;
1117
+ minLength?: number | undefined;
1118
+ enum?: any[] | undefined;
1119
+ pattern?: string | undefined;
1120
+ } | undefined;
1121
+ description?: string | undefined;
1122
+ defaultValue?: any;
1123
+ }[] | undefined;
1124
+ system?: string | undefined;
1125
+ modelId?: string | undefined;
1126
+ temperature?: number | undefined;
1127
+ maxTokens?: number | undefined;
1128
+ topP?: number | undefined;
1129
+ tags?: string[] | undefined;
1130
+ assistant?: string | undefined;
1131
+ frequencyPenalty?: number | undefined;
1132
+ presencePenalty?: number | undefined;
1133
+ stopSequences?: string[] | undefined;
1134
+ category?: string | undefined;
1135
+ examples?: {
1136
+ input: Record<string, any>;
1137
+ output: string;
1138
+ }[] | undefined;
1139
+ }, {
1140
+ label: string;
1141
+ name: string;
1142
+ id: string;
1143
+ user: string;
1144
+ description?: string | undefined;
1145
+ variables?: {
1146
+ name: string;
1147
+ validation?: {
1148
+ maxLength?: number | undefined;
1149
+ minLength?: number | undefined;
1150
+ enum?: any[] | undefined;
1151
+ pattern?: string | undefined;
1152
+ } | undefined;
1153
+ type?: "string" | "number" | "boolean" | "object" | "array" | undefined;
1154
+ description?: string | undefined;
1155
+ required?: boolean | undefined;
1156
+ defaultValue?: any;
1157
+ }[] | undefined;
1158
+ system?: string | undefined;
1159
+ version?: string | undefined;
1160
+ modelId?: string | undefined;
1161
+ temperature?: number | undefined;
1162
+ maxTokens?: number | undefined;
1163
+ topP?: number | undefined;
1164
+ tags?: string[] | undefined;
1165
+ assistant?: string | undefined;
1166
+ frequencyPenalty?: number | undefined;
1167
+ presencePenalty?: number | undefined;
1168
+ stopSequences?: string[] | undefined;
1169
+ category?: string | undefined;
1170
+ examples?: {
1171
+ input: Record<string, any>;
1172
+ output: string;
1173
+ }[] | undefined;
1174
+ }>>>;
1175
+ defaultModel: z.ZodOptional<z.ZodString>;
1176
+ enableAutoFallback: z.ZodDefault<z.ZodBoolean>;
1177
+ }, "strip", z.ZodTypeAny, {
1178
+ name: string;
1179
+ models: Record<string, {
1180
+ status: "active" | "disabled" | "deprecated" | "experimental";
1181
+ model: {
1182
+ name: string;
1183
+ id: string;
1184
+ version: string;
1185
+ capabilities: {
1186
+ textGeneration: boolean;
1187
+ textEmbedding: boolean;
1188
+ imageGeneration: boolean;
1189
+ imageUnderstanding: boolean;
1190
+ functionCalling: boolean;
1191
+ codeGeneration: boolean;
1192
+ reasoning: boolean;
1193
+ };
1194
+ provider: "custom" | "google" | "openai" | "azure_openai" | "anthropic" | "local" | "cohere" | "huggingface";
1195
+ limits: {
1196
+ maxTokens: number;
1197
+ contextWindow: number;
1198
+ rateLimit?: {
1199
+ requestsPerMinute?: number | undefined;
1200
+ tokensPerMinute?: number | undefined;
1201
+ } | undefined;
1202
+ maxOutputTokens?: number | undefined;
1203
+ };
1204
+ deprecated: boolean;
1205
+ description?: string | undefined;
1206
+ pricing?: {
1207
+ currency: string;
1208
+ inputCostPer1kTokens?: number | undefined;
1209
+ outputCostPer1kTokens?: number | undefined;
1210
+ embeddingCostPer1kTokens?: number | undefined;
1211
+ } | undefined;
1212
+ endpoint?: string | undefined;
1213
+ apiKey?: string | undefined;
1214
+ region?: string | undefined;
1215
+ tags?: string[] | undefined;
1216
+ recommendedFor?: string[] | undefined;
1217
+ };
1218
+ priority: number;
1219
+ fallbackModels?: string[] | undefined;
1220
+ healthCheck?: {
1221
+ status: "unknown" | "healthy" | "unhealthy";
1222
+ enabled: boolean;
1223
+ intervalSeconds: number;
1224
+ lastChecked?: string | undefined;
1225
+ } | undefined;
1226
+ }>;
1227
+ enableAutoFallback: boolean;
1228
+ promptTemplates?: Record<string, {
1229
+ label: string;
1230
+ name: string;
1231
+ id: string;
1232
+ user: string;
1233
+ version: string;
1234
+ description?: string | undefined;
1235
+ variables?: {
1236
+ type: "string" | "number" | "boolean" | "object" | "array";
1237
+ name: string;
1238
+ required: boolean;
1239
+ validation?: {
1240
+ maxLength?: number | undefined;
1241
+ minLength?: number | undefined;
1242
+ enum?: any[] | undefined;
1243
+ pattern?: string | undefined;
1244
+ } | undefined;
1245
+ description?: string | undefined;
1246
+ defaultValue?: any;
1247
+ }[] | undefined;
1248
+ system?: string | undefined;
1249
+ modelId?: string | undefined;
1250
+ temperature?: number | undefined;
1251
+ maxTokens?: number | undefined;
1252
+ topP?: number | undefined;
1253
+ tags?: string[] | undefined;
1254
+ assistant?: string | undefined;
1255
+ frequencyPenalty?: number | undefined;
1256
+ presencePenalty?: number | undefined;
1257
+ stopSequences?: string[] | undefined;
1258
+ category?: string | undefined;
1259
+ examples?: {
1260
+ input: Record<string, any>;
1261
+ output: string;
1262
+ }[] | undefined;
1263
+ }> | undefined;
1264
+ defaultModel?: string | undefined;
1265
+ }, {
1266
+ name: string;
1267
+ models: Record<string, {
1268
+ model: {
1269
+ name: string;
1270
+ id: string;
1271
+ version: string;
1272
+ capabilities: {
1273
+ textGeneration?: boolean | undefined;
1274
+ textEmbedding?: boolean | undefined;
1275
+ imageGeneration?: boolean | undefined;
1276
+ imageUnderstanding?: boolean | undefined;
1277
+ functionCalling?: boolean | undefined;
1278
+ codeGeneration?: boolean | undefined;
1279
+ reasoning?: boolean | undefined;
1280
+ };
1281
+ provider: "custom" | "google" | "openai" | "azure_openai" | "anthropic" | "local" | "cohere" | "huggingface";
1282
+ limits: {
1283
+ maxTokens: number;
1284
+ contextWindow: number;
1285
+ rateLimit?: {
1286
+ requestsPerMinute?: number | undefined;
1287
+ tokensPerMinute?: number | undefined;
1288
+ } | undefined;
1289
+ maxOutputTokens?: number | undefined;
1290
+ };
1291
+ description?: string | undefined;
1292
+ pricing?: {
1293
+ currency?: string | undefined;
1294
+ inputCostPer1kTokens?: number | undefined;
1295
+ outputCostPer1kTokens?: number | undefined;
1296
+ embeddingCostPer1kTokens?: number | undefined;
1297
+ } | undefined;
1298
+ endpoint?: string | undefined;
1299
+ apiKey?: string | undefined;
1300
+ region?: string | undefined;
1301
+ tags?: string[] | undefined;
1302
+ deprecated?: boolean | undefined;
1303
+ recommendedFor?: string[] | undefined;
1304
+ };
1305
+ status?: "active" | "disabled" | "deprecated" | "experimental" | undefined;
1306
+ priority?: number | undefined;
1307
+ fallbackModels?: string[] | undefined;
1308
+ healthCheck?: {
1309
+ status?: "unknown" | "healthy" | "unhealthy" | undefined;
1310
+ enabled?: boolean | undefined;
1311
+ intervalSeconds?: number | undefined;
1312
+ lastChecked?: string | undefined;
1313
+ } | undefined;
1314
+ }>;
1315
+ promptTemplates?: Record<string, {
1316
+ label: string;
1317
+ name: string;
1318
+ id: string;
1319
+ user: string;
1320
+ description?: string | undefined;
1321
+ variables?: {
1322
+ name: string;
1323
+ validation?: {
1324
+ maxLength?: number | undefined;
1325
+ minLength?: number | undefined;
1326
+ enum?: any[] | undefined;
1327
+ pattern?: string | undefined;
1328
+ } | undefined;
1329
+ type?: "string" | "number" | "boolean" | "object" | "array" | undefined;
1330
+ description?: string | undefined;
1331
+ required?: boolean | undefined;
1332
+ defaultValue?: any;
1333
+ }[] | undefined;
1334
+ system?: string | undefined;
1335
+ version?: string | undefined;
1336
+ modelId?: string | undefined;
1337
+ temperature?: number | undefined;
1338
+ maxTokens?: number | undefined;
1339
+ topP?: number | undefined;
1340
+ tags?: string[] | undefined;
1341
+ assistant?: string | undefined;
1342
+ frequencyPenalty?: number | undefined;
1343
+ presencePenalty?: number | undefined;
1344
+ stopSequences?: string[] | undefined;
1345
+ category?: string | undefined;
1346
+ examples?: {
1347
+ input: Record<string, any>;
1348
+ output: string;
1349
+ }[] | undefined;
1350
+ }> | undefined;
1351
+ defaultModel?: string | undefined;
1352
+ enableAutoFallback?: boolean | undefined;
1353
+ }>;
1354
+ /**
1355
+ * Model Selection Criteria
1356
+ */
1357
+ export declare const ModelSelectionCriteriaSchema: z.ZodObject<{
1358
+ capabilities: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1359
+ maxCostPer1kTokens: z.ZodOptional<z.ZodNumber>;
1360
+ minContextWindow: z.ZodOptional<z.ZodNumber>;
1361
+ provider: z.ZodOptional<z.ZodEnum<["openai", "azure_openai", "anthropic", "google", "cohere", "huggingface", "local", "custom"]>>;
1362
+ tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1363
+ excludeDeprecated: z.ZodDefault<z.ZodBoolean>;
1364
+ }, "strip", z.ZodTypeAny, {
1365
+ excludeDeprecated: boolean;
1366
+ capabilities?: string[] | undefined;
1367
+ provider?: "custom" | "google" | "openai" | "azure_openai" | "anthropic" | "local" | "cohere" | "huggingface" | undefined;
1368
+ tags?: string[] | undefined;
1369
+ maxCostPer1kTokens?: number | undefined;
1370
+ minContextWindow?: number | undefined;
1371
+ }, {
1372
+ capabilities?: string[] | undefined;
1373
+ provider?: "custom" | "google" | "openai" | "azure_openai" | "anthropic" | "local" | "cohere" | "huggingface" | undefined;
1374
+ tags?: string[] | undefined;
1375
+ maxCostPer1kTokens?: number | undefined;
1376
+ minContextWindow?: number | undefined;
1377
+ excludeDeprecated?: boolean | undefined;
1378
+ }>;
1379
+ export type ModelProvider = z.infer<typeof ModelProviderSchema>;
1380
+ export type ModelCapability = z.infer<typeof ModelCapabilitySchema>;
1381
+ export type ModelLimits = z.infer<typeof ModelLimitsSchema>;
1382
+ export type ModelPricing = z.infer<typeof ModelPricingSchema>;
1383
+ export type ModelConfig = z.infer<typeof ModelConfigSchema>;
1384
+ export type PromptVariable = z.infer<typeof PromptVariableSchema>;
1385
+ export type PromptTemplate = z.infer<typeof PromptTemplateSchema>;
1386
+ export type ModelRegistryEntry = z.infer<typeof ModelRegistryEntrySchema>;
1387
+ export type ModelRegistry = z.infer<typeof ModelRegistrySchema>;
1388
+ export type ModelSelectionCriteria = z.infer<typeof ModelSelectionCriteriaSchema>;
1389
+ //# sourceMappingURL=model-registry.zod.d.ts.map