@artemiskit/core 0.1.2

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 (127) hide show
  1. package/CHANGELOG.md +48 -0
  2. package/dist/adapters/factory.d.ts +23 -0
  3. package/dist/adapters/factory.d.ts.map +1 -0
  4. package/dist/adapters/index.d.ts +7 -0
  5. package/dist/adapters/index.d.ts.map +1 -0
  6. package/dist/adapters/registry.d.ts +56 -0
  7. package/dist/adapters/registry.d.ts.map +1 -0
  8. package/dist/adapters/types.d.ts +151 -0
  9. package/dist/adapters/types.d.ts.map +1 -0
  10. package/dist/artifacts/index.d.ts +6 -0
  11. package/dist/artifacts/index.d.ts.map +1 -0
  12. package/dist/artifacts/manifest.d.ts +19 -0
  13. package/dist/artifacts/manifest.d.ts.map +1 -0
  14. package/dist/artifacts/types.d.ts +368 -0
  15. package/dist/artifacts/types.d.ts.map +1 -0
  16. package/dist/evaluators/contains.d.ts +10 -0
  17. package/dist/evaluators/contains.d.ts.map +1 -0
  18. package/dist/evaluators/exact.d.ts +10 -0
  19. package/dist/evaluators/exact.d.ts.map +1 -0
  20. package/dist/evaluators/fuzzy.d.ts +10 -0
  21. package/dist/evaluators/fuzzy.d.ts.map +1 -0
  22. package/dist/evaluators/index.d.ts +24 -0
  23. package/dist/evaluators/index.d.ts.map +1 -0
  24. package/dist/evaluators/json-schema.d.ts +11 -0
  25. package/dist/evaluators/json-schema.d.ts.map +1 -0
  26. package/dist/evaluators/llm-grader.d.ts +11 -0
  27. package/dist/evaluators/llm-grader.d.ts.map +1 -0
  28. package/dist/evaluators/regex.d.ts +10 -0
  29. package/dist/evaluators/regex.d.ts.map +1 -0
  30. package/dist/evaluators/types.d.ts +29 -0
  31. package/dist/evaluators/types.d.ts.map +1 -0
  32. package/dist/index.d.ts +14 -0
  33. package/dist/index.d.ts.map +1 -0
  34. package/dist/index.js +26021 -0
  35. package/dist/provenance/environment.d.ts +12 -0
  36. package/dist/provenance/environment.d.ts.map +1 -0
  37. package/dist/provenance/git.d.ts +9 -0
  38. package/dist/provenance/git.d.ts.map +1 -0
  39. package/dist/provenance/index.d.ts +6 -0
  40. package/dist/provenance/index.d.ts.map +1 -0
  41. package/dist/redaction/index.d.ts +3 -0
  42. package/dist/redaction/index.d.ts.map +1 -0
  43. package/dist/redaction/redactor.d.ts +79 -0
  44. package/dist/redaction/redactor.d.ts.map +1 -0
  45. package/dist/redaction/types.d.ts +120 -0
  46. package/dist/redaction/types.d.ts.map +1 -0
  47. package/dist/runner/executor.d.ts +11 -0
  48. package/dist/runner/executor.d.ts.map +1 -0
  49. package/dist/runner/index.d.ts +7 -0
  50. package/dist/runner/index.d.ts.map +1 -0
  51. package/dist/runner/runner.d.ts +13 -0
  52. package/dist/runner/runner.d.ts.map +1 -0
  53. package/dist/runner/types.d.ts +57 -0
  54. package/dist/runner/types.d.ts.map +1 -0
  55. package/dist/scenario/index.d.ts +7 -0
  56. package/dist/scenario/index.d.ts.map +1 -0
  57. package/dist/scenario/parser.d.ts +17 -0
  58. package/dist/scenario/parser.d.ts.map +1 -0
  59. package/dist/scenario/schema.d.ts +945 -0
  60. package/dist/scenario/schema.d.ts.map +1 -0
  61. package/dist/scenario/variables.d.ts +19 -0
  62. package/dist/scenario/variables.d.ts.map +1 -0
  63. package/dist/storage/factory.d.ts +13 -0
  64. package/dist/storage/factory.d.ts.map +1 -0
  65. package/dist/storage/index.d.ts +8 -0
  66. package/dist/storage/index.d.ts.map +1 -0
  67. package/dist/storage/local.d.ts +20 -0
  68. package/dist/storage/local.d.ts.map +1 -0
  69. package/dist/storage/supabase.d.ts +21 -0
  70. package/dist/storage/supabase.d.ts.map +1 -0
  71. package/dist/storage/types.d.ts +86 -0
  72. package/dist/storage/types.d.ts.map +1 -0
  73. package/dist/utils/errors.d.ts +25 -0
  74. package/dist/utils/errors.d.ts.map +1 -0
  75. package/dist/utils/index.d.ts +6 -0
  76. package/dist/utils/index.d.ts.map +1 -0
  77. package/dist/utils/logger.d.ts +21 -0
  78. package/dist/utils/logger.d.ts.map +1 -0
  79. package/package.json +56 -0
  80. package/src/adapters/factory.ts +75 -0
  81. package/src/adapters/index.ts +7 -0
  82. package/src/adapters/registry.ts +143 -0
  83. package/src/adapters/types.ts +184 -0
  84. package/src/artifacts/index.ts +6 -0
  85. package/src/artifacts/manifest.test.ts +206 -0
  86. package/src/artifacts/manifest.ts +136 -0
  87. package/src/artifacts/types.ts +426 -0
  88. package/src/evaluators/contains.test.ts +58 -0
  89. package/src/evaluators/contains.ts +41 -0
  90. package/src/evaluators/exact.test.ts +48 -0
  91. package/src/evaluators/exact.ts +33 -0
  92. package/src/evaluators/fuzzy.test.ts +50 -0
  93. package/src/evaluators/fuzzy.ts +39 -0
  94. package/src/evaluators/index.ts +53 -0
  95. package/src/evaluators/json-schema.ts +98 -0
  96. package/src/evaluators/llm-grader.ts +100 -0
  97. package/src/evaluators/regex.test.ts +73 -0
  98. package/src/evaluators/regex.ts +43 -0
  99. package/src/evaluators/types.ts +37 -0
  100. package/src/index.ts +31 -0
  101. package/src/provenance/environment.ts +18 -0
  102. package/src/provenance/git.ts +48 -0
  103. package/src/provenance/index.ts +6 -0
  104. package/src/redaction/index.ts +23 -0
  105. package/src/redaction/redactor.test.ts +258 -0
  106. package/src/redaction/redactor.ts +246 -0
  107. package/src/redaction/types.ts +135 -0
  108. package/src/runner/executor.ts +251 -0
  109. package/src/runner/index.ts +7 -0
  110. package/src/runner/runner.ts +153 -0
  111. package/src/runner/types.ts +60 -0
  112. package/src/scenario/index.ts +7 -0
  113. package/src/scenario/parser.test.ts +99 -0
  114. package/src/scenario/parser.ts +108 -0
  115. package/src/scenario/schema.ts +176 -0
  116. package/src/scenario/variables.test.ts +150 -0
  117. package/src/scenario/variables.ts +60 -0
  118. package/src/storage/factory.ts +52 -0
  119. package/src/storage/index.ts +8 -0
  120. package/src/storage/local.test.ts +165 -0
  121. package/src/storage/local.ts +194 -0
  122. package/src/storage/supabase.ts +151 -0
  123. package/src/storage/types.ts +98 -0
  124. package/src/utils/errors.ts +76 -0
  125. package/src/utils/index.ts +6 -0
  126. package/src/utils/logger.ts +59 -0
  127. package/tsconfig.json +13 -0
@@ -0,0 +1,945 @@
1
+ /**
2
+ * Scenario schema definitions using Zod
3
+ */
4
+ import { z } from 'zod';
5
+ /**
6
+ * Provider schema - supports all providers
7
+ */
8
+ export declare const ProviderSchema: z.ZodEnum<["openai", "azure-openai", "vercel-ai", "anthropic", "google", "mistral", "cohere", "huggingface", "ollama", "custom"]>;
9
+ /**
10
+ * Provider config schema - optional overrides for provider settings
11
+ * Supports ${ENV_VAR} and ${ENV_VAR:-default} syntax for values
12
+ * All fields are optional - only specified fields override defaults
13
+ */
14
+ export declare const ProviderConfigSchema: z.ZodOptional<z.ZodObject<{
15
+ apiKey: z.ZodOptional<z.ZodString>;
16
+ baseUrl: z.ZodOptional<z.ZodString>;
17
+ defaultModel: z.ZodOptional<z.ZodString>;
18
+ timeout: z.ZodOptional<z.ZodNumber>;
19
+ maxRetries: z.ZodOptional<z.ZodNumber>;
20
+ organization: z.ZodOptional<z.ZodString>;
21
+ resourceName: z.ZodOptional<z.ZodString>;
22
+ deploymentName: z.ZodOptional<z.ZodString>;
23
+ apiVersion: z.ZodOptional<z.ZodString>;
24
+ underlyingProvider: z.ZodOptional<z.ZodEnum<["openai", "azure", "anthropic", "google", "mistral"]>>;
25
+ }, "strip", z.ZodTypeAny, {
26
+ apiKey?: string | undefined;
27
+ baseUrl?: string | undefined;
28
+ defaultModel?: string | undefined;
29
+ timeout?: number | undefined;
30
+ maxRetries?: number | undefined;
31
+ organization?: string | undefined;
32
+ resourceName?: string | undefined;
33
+ deploymentName?: string | undefined;
34
+ apiVersion?: string | undefined;
35
+ underlyingProvider?: "openai" | "anthropic" | "google" | "mistral" | "azure" | undefined;
36
+ }, {
37
+ apiKey?: string | undefined;
38
+ baseUrl?: string | undefined;
39
+ defaultModel?: string | undefined;
40
+ timeout?: number | undefined;
41
+ maxRetries?: number | undefined;
42
+ organization?: string | undefined;
43
+ resourceName?: string | undefined;
44
+ deploymentName?: string | undefined;
45
+ apiVersion?: string | undefined;
46
+ underlyingProvider?: "openai" | "anthropic" | "google" | "mistral" | "azure" | undefined;
47
+ }>>;
48
+ /**
49
+ * Expected result types - how to evaluate responses
50
+ */
51
+ export declare const ExpectedSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
52
+ type: z.ZodLiteral<"exact">;
53
+ value: z.ZodString;
54
+ caseSensitive: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
55
+ }, "strip", z.ZodTypeAny, {
56
+ value: string;
57
+ type: "exact";
58
+ caseSensitive: boolean;
59
+ }, {
60
+ value: string;
61
+ type: "exact";
62
+ caseSensitive?: boolean | undefined;
63
+ }>, z.ZodObject<{
64
+ type: z.ZodLiteral<"regex">;
65
+ pattern: z.ZodString;
66
+ flags: z.ZodOptional<z.ZodString>;
67
+ }, "strip", z.ZodTypeAny, {
68
+ type: "regex";
69
+ pattern: string;
70
+ flags?: string | undefined;
71
+ }, {
72
+ type: "regex";
73
+ pattern: string;
74
+ flags?: string | undefined;
75
+ }>, z.ZodObject<{
76
+ type: z.ZodLiteral<"fuzzy">;
77
+ value: z.ZodString;
78
+ threshold: z.ZodDefault<z.ZodNumber>;
79
+ }, "strip", z.ZodTypeAny, {
80
+ value: string;
81
+ type: "fuzzy";
82
+ threshold: number;
83
+ }, {
84
+ value: string;
85
+ type: "fuzzy";
86
+ threshold?: number | undefined;
87
+ }>, z.ZodObject<{
88
+ type: z.ZodLiteral<"llm_grader">;
89
+ rubric: z.ZodString;
90
+ model: z.ZodOptional<z.ZodString>;
91
+ provider: z.ZodOptional<z.ZodEnum<["openai", "azure-openai", "vercel-ai", "anthropic", "google", "mistral", "cohere", "huggingface", "ollama", "custom"]>>;
92
+ threshold: z.ZodDefault<z.ZodNumber>;
93
+ }, "strip", z.ZodTypeAny, {
94
+ type: "llm_grader";
95
+ threshold: number;
96
+ rubric: string;
97
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
98
+ model?: string | undefined;
99
+ }, {
100
+ type: "llm_grader";
101
+ rubric: string;
102
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
103
+ threshold?: number | undefined;
104
+ model?: string | undefined;
105
+ }>, z.ZodObject<{
106
+ type: z.ZodLiteral<"contains">;
107
+ values: z.ZodArray<z.ZodString, "many">;
108
+ mode: z.ZodDefault<z.ZodEnum<["all", "any"]>>;
109
+ }, "strip", z.ZodTypeAny, {
110
+ values: string[];
111
+ type: "contains";
112
+ mode: "all" | "any";
113
+ }, {
114
+ values: string[];
115
+ type: "contains";
116
+ mode?: "all" | "any" | undefined;
117
+ }>, z.ZodObject<{
118
+ type: z.ZodLiteral<"json_schema">;
119
+ schema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
120
+ }, "strip", z.ZodTypeAny, {
121
+ type: "json_schema";
122
+ schema: Record<string, unknown>;
123
+ }, {
124
+ type: "json_schema";
125
+ schema: Record<string, unknown>;
126
+ }>, z.ZodObject<{
127
+ type: z.ZodLiteral<"custom">;
128
+ evaluator: z.ZodString;
129
+ config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
130
+ }, "strip", z.ZodTypeAny, {
131
+ type: "custom";
132
+ evaluator: string;
133
+ config?: Record<string, unknown> | undefined;
134
+ }, {
135
+ type: "custom";
136
+ evaluator: string;
137
+ config?: Record<string, unknown> | undefined;
138
+ }>]>;
139
+ /**
140
+ * Chat message schema
141
+ */
142
+ export declare const ChatMessageSchema: z.ZodObject<{
143
+ role: z.ZodEnum<["system", "user", "assistant"]>;
144
+ content: z.ZodString;
145
+ }, "strip", z.ZodTypeAny, {
146
+ role: "system" | "user" | "assistant";
147
+ content: string;
148
+ }, {
149
+ role: "system" | "user" | "assistant";
150
+ content: string;
151
+ }>;
152
+ /**
153
+ * Variables schema - key-value pairs for template substitution
154
+ */
155
+ export declare const VariablesSchema: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
156
+ /**
157
+ * Redaction configuration schema for scenario-level settings
158
+ * Re-exported from redaction module, made optional for scenario context
159
+ */
160
+ declare const RedactionConfigSchema: z.ZodOptional<z.ZodObject<{
161
+ enabled: z.ZodDefault<z.ZodBoolean>;
162
+ patterns: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
163
+ redactPrompts: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
164
+ redactResponses: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
165
+ redactMetadata: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
166
+ replacement: z.ZodDefault<z.ZodOptional<z.ZodString>>;
167
+ }, "strip", z.ZodTypeAny, {
168
+ enabled: boolean;
169
+ redactPrompts: boolean;
170
+ redactResponses: boolean;
171
+ redactMetadata: boolean;
172
+ replacement: string;
173
+ patterns?: string[] | undefined;
174
+ }, {
175
+ enabled?: boolean | undefined;
176
+ patterns?: string[] | undefined;
177
+ redactPrompts?: boolean | undefined;
178
+ redactResponses?: boolean | undefined;
179
+ redactMetadata?: boolean | undefined;
180
+ replacement?: string | undefined;
181
+ }>>;
182
+ /**
183
+ * Test case schema
184
+ */
185
+ export declare const TestCaseSchema: z.ZodObject<{
186
+ id: z.ZodString;
187
+ name: z.ZodOptional<z.ZodString>;
188
+ description: z.ZodOptional<z.ZodString>;
189
+ prompt: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodObject<{
190
+ role: z.ZodEnum<["system", "user", "assistant"]>;
191
+ content: z.ZodString;
192
+ }, "strip", z.ZodTypeAny, {
193
+ role: "system" | "user" | "assistant";
194
+ content: string;
195
+ }, {
196
+ role: "system" | "user" | "assistant";
197
+ content: string;
198
+ }>, "many">]>;
199
+ expected: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
200
+ type: z.ZodLiteral<"exact">;
201
+ value: z.ZodString;
202
+ caseSensitive: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
203
+ }, "strip", z.ZodTypeAny, {
204
+ value: string;
205
+ type: "exact";
206
+ caseSensitive: boolean;
207
+ }, {
208
+ value: string;
209
+ type: "exact";
210
+ caseSensitive?: boolean | undefined;
211
+ }>, z.ZodObject<{
212
+ type: z.ZodLiteral<"regex">;
213
+ pattern: z.ZodString;
214
+ flags: z.ZodOptional<z.ZodString>;
215
+ }, "strip", z.ZodTypeAny, {
216
+ type: "regex";
217
+ pattern: string;
218
+ flags?: string | undefined;
219
+ }, {
220
+ type: "regex";
221
+ pattern: string;
222
+ flags?: string | undefined;
223
+ }>, z.ZodObject<{
224
+ type: z.ZodLiteral<"fuzzy">;
225
+ value: z.ZodString;
226
+ threshold: z.ZodDefault<z.ZodNumber>;
227
+ }, "strip", z.ZodTypeAny, {
228
+ value: string;
229
+ type: "fuzzy";
230
+ threshold: number;
231
+ }, {
232
+ value: string;
233
+ type: "fuzzy";
234
+ threshold?: number | undefined;
235
+ }>, z.ZodObject<{
236
+ type: z.ZodLiteral<"llm_grader">;
237
+ rubric: z.ZodString;
238
+ model: z.ZodOptional<z.ZodString>;
239
+ provider: z.ZodOptional<z.ZodEnum<["openai", "azure-openai", "vercel-ai", "anthropic", "google", "mistral", "cohere", "huggingface", "ollama", "custom"]>>;
240
+ threshold: z.ZodDefault<z.ZodNumber>;
241
+ }, "strip", z.ZodTypeAny, {
242
+ type: "llm_grader";
243
+ threshold: number;
244
+ rubric: string;
245
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
246
+ model?: string | undefined;
247
+ }, {
248
+ type: "llm_grader";
249
+ rubric: string;
250
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
251
+ threshold?: number | undefined;
252
+ model?: string | undefined;
253
+ }>, z.ZodObject<{
254
+ type: z.ZodLiteral<"contains">;
255
+ values: z.ZodArray<z.ZodString, "many">;
256
+ mode: z.ZodDefault<z.ZodEnum<["all", "any"]>>;
257
+ }, "strip", z.ZodTypeAny, {
258
+ values: string[];
259
+ type: "contains";
260
+ mode: "all" | "any";
261
+ }, {
262
+ values: string[];
263
+ type: "contains";
264
+ mode?: "all" | "any" | undefined;
265
+ }>, z.ZodObject<{
266
+ type: z.ZodLiteral<"json_schema">;
267
+ schema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
268
+ }, "strip", z.ZodTypeAny, {
269
+ type: "json_schema";
270
+ schema: Record<string, unknown>;
271
+ }, {
272
+ type: "json_schema";
273
+ schema: Record<string, unknown>;
274
+ }>, z.ZodObject<{
275
+ type: z.ZodLiteral<"custom">;
276
+ evaluator: z.ZodString;
277
+ config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
278
+ }, "strip", z.ZodTypeAny, {
279
+ type: "custom";
280
+ evaluator: string;
281
+ config?: Record<string, unknown> | undefined;
282
+ }, {
283
+ type: "custom";
284
+ evaluator: string;
285
+ config?: Record<string, unknown> | undefined;
286
+ }>]>;
287
+ tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
288
+ metadata: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
289
+ timeout: z.ZodOptional<z.ZodNumber>;
290
+ retries: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
291
+ provider: z.ZodOptional<z.ZodEnum<["openai", "azure-openai", "vercel-ai", "anthropic", "google", "mistral", "cohere", "huggingface", "ollama", "custom"]>>;
292
+ model: z.ZodOptional<z.ZodString>;
293
+ variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
294
+ /** Case-level redaction config (overrides scenario-level) */
295
+ redaction: z.ZodOptional<z.ZodObject<{
296
+ enabled: z.ZodDefault<z.ZodBoolean>;
297
+ patterns: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
298
+ redactPrompts: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
299
+ redactResponses: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
300
+ redactMetadata: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
301
+ replacement: z.ZodDefault<z.ZodOptional<z.ZodString>>;
302
+ }, "strip", z.ZodTypeAny, {
303
+ enabled: boolean;
304
+ redactPrompts: boolean;
305
+ redactResponses: boolean;
306
+ redactMetadata: boolean;
307
+ replacement: string;
308
+ patterns?: string[] | undefined;
309
+ }, {
310
+ enabled?: boolean | undefined;
311
+ patterns?: string[] | undefined;
312
+ redactPrompts?: boolean | undefined;
313
+ redactResponses?: boolean | undefined;
314
+ redactMetadata?: boolean | undefined;
315
+ replacement?: string | undefined;
316
+ }>>;
317
+ }, "strip", z.ZodTypeAny, {
318
+ expected: {
319
+ value: string;
320
+ type: "exact";
321
+ caseSensitive: boolean;
322
+ } | {
323
+ type: "regex";
324
+ pattern: string;
325
+ flags?: string | undefined;
326
+ } | {
327
+ value: string;
328
+ type: "fuzzy";
329
+ threshold: number;
330
+ } | {
331
+ type: "llm_grader";
332
+ threshold: number;
333
+ rubric: string;
334
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
335
+ model?: string | undefined;
336
+ } | {
337
+ values: string[];
338
+ type: "contains";
339
+ mode: "all" | "any";
340
+ } | {
341
+ type: "json_schema";
342
+ schema: Record<string, unknown>;
343
+ } | {
344
+ type: "custom";
345
+ evaluator: string;
346
+ config?: Record<string, unknown> | undefined;
347
+ };
348
+ id: string;
349
+ prompt: string | {
350
+ role: "system" | "user" | "assistant";
351
+ content: string;
352
+ }[];
353
+ tags: string[];
354
+ metadata: Record<string, unknown>;
355
+ retries: number;
356
+ name?: string | undefined;
357
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
358
+ timeout?: number | undefined;
359
+ model?: string | undefined;
360
+ description?: string | undefined;
361
+ variables?: Record<string, string | number | boolean> | undefined;
362
+ redaction?: {
363
+ enabled: boolean;
364
+ redactPrompts: boolean;
365
+ redactResponses: boolean;
366
+ redactMetadata: boolean;
367
+ replacement: string;
368
+ patterns?: string[] | undefined;
369
+ } | undefined;
370
+ }, {
371
+ expected: {
372
+ value: string;
373
+ type: "exact";
374
+ caseSensitive?: boolean | undefined;
375
+ } | {
376
+ type: "regex";
377
+ pattern: string;
378
+ flags?: string | undefined;
379
+ } | {
380
+ value: string;
381
+ type: "fuzzy";
382
+ threshold?: number | undefined;
383
+ } | {
384
+ type: "llm_grader";
385
+ rubric: string;
386
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
387
+ threshold?: number | undefined;
388
+ model?: string | undefined;
389
+ } | {
390
+ values: string[];
391
+ type: "contains";
392
+ mode?: "all" | "any" | undefined;
393
+ } | {
394
+ type: "json_schema";
395
+ schema: Record<string, unknown>;
396
+ } | {
397
+ type: "custom";
398
+ evaluator: string;
399
+ config?: Record<string, unknown> | undefined;
400
+ };
401
+ id: string;
402
+ prompt: string | {
403
+ role: "system" | "user" | "assistant";
404
+ content: string;
405
+ }[];
406
+ name?: string | undefined;
407
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
408
+ timeout?: number | undefined;
409
+ model?: string | undefined;
410
+ description?: string | undefined;
411
+ tags?: string[] | undefined;
412
+ metadata?: Record<string, unknown> | undefined;
413
+ retries?: number | undefined;
414
+ variables?: Record<string, string | number | boolean> | undefined;
415
+ redaction?: {
416
+ enabled?: boolean | undefined;
417
+ patterns?: string[] | undefined;
418
+ redactPrompts?: boolean | undefined;
419
+ redactResponses?: boolean | undefined;
420
+ redactMetadata?: boolean | undefined;
421
+ replacement?: string | undefined;
422
+ } | undefined;
423
+ }>;
424
+ /**
425
+ * Scenario schema - a collection of test cases
426
+ */
427
+ export declare const ScenarioSchema: z.ZodObject<{
428
+ name: z.ZodString;
429
+ description: z.ZodOptional<z.ZodString>;
430
+ version: z.ZodDefault<z.ZodOptional<z.ZodString>>;
431
+ provider: z.ZodOptional<z.ZodEnum<["openai", "azure-openai", "vercel-ai", "anthropic", "google", "mistral", "cohere", "huggingface", "ollama", "custom"]>>;
432
+ model: z.ZodOptional<z.ZodString>;
433
+ providerConfig: z.ZodOptional<z.ZodObject<{
434
+ apiKey: z.ZodOptional<z.ZodString>;
435
+ baseUrl: z.ZodOptional<z.ZodString>;
436
+ defaultModel: z.ZodOptional<z.ZodString>;
437
+ timeout: z.ZodOptional<z.ZodNumber>;
438
+ maxRetries: z.ZodOptional<z.ZodNumber>;
439
+ organization: z.ZodOptional<z.ZodString>;
440
+ resourceName: z.ZodOptional<z.ZodString>;
441
+ deploymentName: z.ZodOptional<z.ZodString>;
442
+ apiVersion: z.ZodOptional<z.ZodString>;
443
+ underlyingProvider: z.ZodOptional<z.ZodEnum<["openai", "azure", "anthropic", "google", "mistral"]>>;
444
+ }, "strip", z.ZodTypeAny, {
445
+ apiKey?: string | undefined;
446
+ baseUrl?: string | undefined;
447
+ defaultModel?: string | undefined;
448
+ timeout?: number | undefined;
449
+ maxRetries?: number | undefined;
450
+ organization?: string | undefined;
451
+ resourceName?: string | undefined;
452
+ deploymentName?: string | undefined;
453
+ apiVersion?: string | undefined;
454
+ underlyingProvider?: "openai" | "anthropic" | "google" | "mistral" | "azure" | undefined;
455
+ }, {
456
+ apiKey?: string | undefined;
457
+ baseUrl?: string | undefined;
458
+ defaultModel?: string | undefined;
459
+ timeout?: number | undefined;
460
+ maxRetries?: number | undefined;
461
+ organization?: string | undefined;
462
+ resourceName?: string | undefined;
463
+ deploymentName?: string | undefined;
464
+ apiVersion?: string | undefined;
465
+ underlyingProvider?: "openai" | "anthropic" | "google" | "mistral" | "azure" | undefined;
466
+ }>>;
467
+ seed: z.ZodOptional<z.ZodNumber>;
468
+ temperature: z.ZodOptional<z.ZodNumber>;
469
+ maxTokens: z.ZodOptional<z.ZodNumber>;
470
+ tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
471
+ variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
472
+ /** Scenario-level redaction configuration */
473
+ redaction: z.ZodOptional<z.ZodObject<{
474
+ enabled: z.ZodDefault<z.ZodBoolean>;
475
+ patterns: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
476
+ redactPrompts: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
477
+ redactResponses: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
478
+ redactMetadata: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
479
+ replacement: z.ZodDefault<z.ZodOptional<z.ZodString>>;
480
+ }, "strip", z.ZodTypeAny, {
481
+ enabled: boolean;
482
+ redactPrompts: boolean;
483
+ redactResponses: boolean;
484
+ redactMetadata: boolean;
485
+ replacement: string;
486
+ patterns?: string[] | undefined;
487
+ }, {
488
+ enabled?: boolean | undefined;
489
+ patterns?: string[] | undefined;
490
+ redactPrompts?: boolean | undefined;
491
+ redactResponses?: boolean | undefined;
492
+ redactMetadata?: boolean | undefined;
493
+ replacement?: string | undefined;
494
+ }>>;
495
+ setup: z.ZodOptional<z.ZodObject<{
496
+ systemPrompt: z.ZodOptional<z.ZodString>;
497
+ functions: z.ZodOptional<z.ZodArray<z.ZodUnknown, "many">>;
498
+ }, "strip", z.ZodTypeAny, {
499
+ systemPrompt?: string | undefined;
500
+ functions?: unknown[] | undefined;
501
+ }, {
502
+ systemPrompt?: string | undefined;
503
+ functions?: unknown[] | undefined;
504
+ }>>;
505
+ cases: z.ZodArray<z.ZodObject<{
506
+ id: z.ZodString;
507
+ name: z.ZodOptional<z.ZodString>;
508
+ description: z.ZodOptional<z.ZodString>;
509
+ prompt: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodObject<{
510
+ role: z.ZodEnum<["system", "user", "assistant"]>;
511
+ content: z.ZodString;
512
+ }, "strip", z.ZodTypeAny, {
513
+ role: "system" | "user" | "assistant";
514
+ content: string;
515
+ }, {
516
+ role: "system" | "user" | "assistant";
517
+ content: string;
518
+ }>, "many">]>;
519
+ expected: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
520
+ type: z.ZodLiteral<"exact">;
521
+ value: z.ZodString;
522
+ caseSensitive: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
523
+ }, "strip", z.ZodTypeAny, {
524
+ value: string;
525
+ type: "exact";
526
+ caseSensitive: boolean;
527
+ }, {
528
+ value: string;
529
+ type: "exact";
530
+ caseSensitive?: boolean | undefined;
531
+ }>, z.ZodObject<{
532
+ type: z.ZodLiteral<"regex">;
533
+ pattern: z.ZodString;
534
+ flags: z.ZodOptional<z.ZodString>;
535
+ }, "strip", z.ZodTypeAny, {
536
+ type: "regex";
537
+ pattern: string;
538
+ flags?: string | undefined;
539
+ }, {
540
+ type: "regex";
541
+ pattern: string;
542
+ flags?: string | undefined;
543
+ }>, z.ZodObject<{
544
+ type: z.ZodLiteral<"fuzzy">;
545
+ value: z.ZodString;
546
+ threshold: z.ZodDefault<z.ZodNumber>;
547
+ }, "strip", z.ZodTypeAny, {
548
+ value: string;
549
+ type: "fuzzy";
550
+ threshold: number;
551
+ }, {
552
+ value: string;
553
+ type: "fuzzy";
554
+ threshold?: number | undefined;
555
+ }>, z.ZodObject<{
556
+ type: z.ZodLiteral<"llm_grader">;
557
+ rubric: z.ZodString;
558
+ model: z.ZodOptional<z.ZodString>;
559
+ provider: z.ZodOptional<z.ZodEnum<["openai", "azure-openai", "vercel-ai", "anthropic", "google", "mistral", "cohere", "huggingface", "ollama", "custom"]>>;
560
+ threshold: z.ZodDefault<z.ZodNumber>;
561
+ }, "strip", z.ZodTypeAny, {
562
+ type: "llm_grader";
563
+ threshold: number;
564
+ rubric: string;
565
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
566
+ model?: string | undefined;
567
+ }, {
568
+ type: "llm_grader";
569
+ rubric: string;
570
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
571
+ threshold?: number | undefined;
572
+ model?: string | undefined;
573
+ }>, z.ZodObject<{
574
+ type: z.ZodLiteral<"contains">;
575
+ values: z.ZodArray<z.ZodString, "many">;
576
+ mode: z.ZodDefault<z.ZodEnum<["all", "any"]>>;
577
+ }, "strip", z.ZodTypeAny, {
578
+ values: string[];
579
+ type: "contains";
580
+ mode: "all" | "any";
581
+ }, {
582
+ values: string[];
583
+ type: "contains";
584
+ mode?: "all" | "any" | undefined;
585
+ }>, z.ZodObject<{
586
+ type: z.ZodLiteral<"json_schema">;
587
+ schema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
588
+ }, "strip", z.ZodTypeAny, {
589
+ type: "json_schema";
590
+ schema: Record<string, unknown>;
591
+ }, {
592
+ type: "json_schema";
593
+ schema: Record<string, unknown>;
594
+ }>, z.ZodObject<{
595
+ type: z.ZodLiteral<"custom">;
596
+ evaluator: z.ZodString;
597
+ config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
598
+ }, "strip", z.ZodTypeAny, {
599
+ type: "custom";
600
+ evaluator: string;
601
+ config?: Record<string, unknown> | undefined;
602
+ }, {
603
+ type: "custom";
604
+ evaluator: string;
605
+ config?: Record<string, unknown> | undefined;
606
+ }>]>;
607
+ tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
608
+ metadata: z.ZodDefault<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
609
+ timeout: z.ZodOptional<z.ZodNumber>;
610
+ retries: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
611
+ provider: z.ZodOptional<z.ZodEnum<["openai", "azure-openai", "vercel-ai", "anthropic", "google", "mistral", "cohere", "huggingface", "ollama", "custom"]>>;
612
+ model: z.ZodOptional<z.ZodString>;
613
+ variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
614
+ /** Case-level redaction config (overrides scenario-level) */
615
+ redaction: z.ZodOptional<z.ZodObject<{
616
+ enabled: z.ZodDefault<z.ZodBoolean>;
617
+ patterns: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
618
+ redactPrompts: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
619
+ redactResponses: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
620
+ redactMetadata: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
621
+ replacement: z.ZodDefault<z.ZodOptional<z.ZodString>>;
622
+ }, "strip", z.ZodTypeAny, {
623
+ enabled: boolean;
624
+ redactPrompts: boolean;
625
+ redactResponses: boolean;
626
+ redactMetadata: boolean;
627
+ replacement: string;
628
+ patterns?: string[] | undefined;
629
+ }, {
630
+ enabled?: boolean | undefined;
631
+ patterns?: string[] | undefined;
632
+ redactPrompts?: boolean | undefined;
633
+ redactResponses?: boolean | undefined;
634
+ redactMetadata?: boolean | undefined;
635
+ replacement?: string | undefined;
636
+ }>>;
637
+ }, "strip", z.ZodTypeAny, {
638
+ expected: {
639
+ value: string;
640
+ type: "exact";
641
+ caseSensitive: boolean;
642
+ } | {
643
+ type: "regex";
644
+ pattern: string;
645
+ flags?: string | undefined;
646
+ } | {
647
+ value: string;
648
+ type: "fuzzy";
649
+ threshold: number;
650
+ } | {
651
+ type: "llm_grader";
652
+ threshold: number;
653
+ rubric: string;
654
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
655
+ model?: string | undefined;
656
+ } | {
657
+ values: string[];
658
+ type: "contains";
659
+ mode: "all" | "any";
660
+ } | {
661
+ type: "json_schema";
662
+ schema: Record<string, unknown>;
663
+ } | {
664
+ type: "custom";
665
+ evaluator: string;
666
+ config?: Record<string, unknown> | undefined;
667
+ };
668
+ id: string;
669
+ prompt: string | {
670
+ role: "system" | "user" | "assistant";
671
+ content: string;
672
+ }[];
673
+ tags: string[];
674
+ metadata: Record<string, unknown>;
675
+ retries: number;
676
+ name?: string | undefined;
677
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
678
+ timeout?: number | undefined;
679
+ model?: string | undefined;
680
+ description?: string | undefined;
681
+ variables?: Record<string, string | number | boolean> | undefined;
682
+ redaction?: {
683
+ enabled: boolean;
684
+ redactPrompts: boolean;
685
+ redactResponses: boolean;
686
+ redactMetadata: boolean;
687
+ replacement: string;
688
+ patterns?: string[] | undefined;
689
+ } | undefined;
690
+ }, {
691
+ expected: {
692
+ value: string;
693
+ type: "exact";
694
+ caseSensitive?: boolean | undefined;
695
+ } | {
696
+ type: "regex";
697
+ pattern: string;
698
+ flags?: string | undefined;
699
+ } | {
700
+ value: string;
701
+ type: "fuzzy";
702
+ threshold?: number | undefined;
703
+ } | {
704
+ type: "llm_grader";
705
+ rubric: string;
706
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
707
+ threshold?: number | undefined;
708
+ model?: string | undefined;
709
+ } | {
710
+ values: string[];
711
+ type: "contains";
712
+ mode?: "all" | "any" | undefined;
713
+ } | {
714
+ type: "json_schema";
715
+ schema: Record<string, unknown>;
716
+ } | {
717
+ type: "custom";
718
+ evaluator: string;
719
+ config?: Record<string, unknown> | undefined;
720
+ };
721
+ id: string;
722
+ prompt: string | {
723
+ role: "system" | "user" | "assistant";
724
+ content: string;
725
+ }[];
726
+ name?: string | undefined;
727
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
728
+ timeout?: number | undefined;
729
+ model?: string | undefined;
730
+ description?: string | undefined;
731
+ tags?: string[] | undefined;
732
+ metadata?: Record<string, unknown> | undefined;
733
+ retries?: number | undefined;
734
+ variables?: Record<string, string | number | boolean> | undefined;
735
+ redaction?: {
736
+ enabled?: boolean | undefined;
737
+ patterns?: string[] | undefined;
738
+ redactPrompts?: boolean | undefined;
739
+ redactResponses?: boolean | undefined;
740
+ redactMetadata?: boolean | undefined;
741
+ replacement?: string | undefined;
742
+ } | undefined;
743
+ }>, "many">;
744
+ teardown: z.ZodOptional<z.ZodObject<{
745
+ cleanup: z.ZodOptional<z.ZodBoolean>;
746
+ }, "strip", z.ZodTypeAny, {
747
+ cleanup?: boolean | undefined;
748
+ }, {
749
+ cleanup?: boolean | undefined;
750
+ }>>;
751
+ }, "strip", z.ZodTypeAny, {
752
+ name: string;
753
+ tags: string[];
754
+ version: string;
755
+ cases: {
756
+ expected: {
757
+ value: string;
758
+ type: "exact";
759
+ caseSensitive: boolean;
760
+ } | {
761
+ type: "regex";
762
+ pattern: string;
763
+ flags?: string | undefined;
764
+ } | {
765
+ value: string;
766
+ type: "fuzzy";
767
+ threshold: number;
768
+ } | {
769
+ type: "llm_grader";
770
+ threshold: number;
771
+ rubric: string;
772
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
773
+ model?: string | undefined;
774
+ } | {
775
+ values: string[];
776
+ type: "contains";
777
+ mode: "all" | "any";
778
+ } | {
779
+ type: "json_schema";
780
+ schema: Record<string, unknown>;
781
+ } | {
782
+ type: "custom";
783
+ evaluator: string;
784
+ config?: Record<string, unknown> | undefined;
785
+ };
786
+ id: string;
787
+ prompt: string | {
788
+ role: "system" | "user" | "assistant";
789
+ content: string;
790
+ }[];
791
+ tags: string[];
792
+ metadata: Record<string, unknown>;
793
+ retries: number;
794
+ name?: string | undefined;
795
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
796
+ timeout?: number | undefined;
797
+ model?: string | undefined;
798
+ description?: string | undefined;
799
+ variables?: Record<string, string | number | boolean> | undefined;
800
+ redaction?: {
801
+ enabled: boolean;
802
+ redactPrompts: boolean;
803
+ redactResponses: boolean;
804
+ redactMetadata: boolean;
805
+ replacement: string;
806
+ patterns?: string[] | undefined;
807
+ } | undefined;
808
+ }[];
809
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
810
+ model?: string | undefined;
811
+ description?: string | undefined;
812
+ variables?: Record<string, string | number | boolean> | undefined;
813
+ redaction?: {
814
+ enabled: boolean;
815
+ redactPrompts: boolean;
816
+ redactResponses: boolean;
817
+ redactMetadata: boolean;
818
+ replacement: string;
819
+ patterns?: string[] | undefined;
820
+ } | undefined;
821
+ providerConfig?: {
822
+ apiKey?: string | undefined;
823
+ baseUrl?: string | undefined;
824
+ defaultModel?: string | undefined;
825
+ timeout?: number | undefined;
826
+ maxRetries?: number | undefined;
827
+ organization?: string | undefined;
828
+ resourceName?: string | undefined;
829
+ deploymentName?: string | undefined;
830
+ apiVersion?: string | undefined;
831
+ underlyingProvider?: "openai" | "anthropic" | "google" | "mistral" | "azure" | undefined;
832
+ } | undefined;
833
+ seed?: number | undefined;
834
+ temperature?: number | undefined;
835
+ maxTokens?: number | undefined;
836
+ setup?: {
837
+ systemPrompt?: string | undefined;
838
+ functions?: unknown[] | undefined;
839
+ } | undefined;
840
+ teardown?: {
841
+ cleanup?: boolean | undefined;
842
+ } | undefined;
843
+ }, {
844
+ name: string;
845
+ cases: {
846
+ expected: {
847
+ value: string;
848
+ type: "exact";
849
+ caseSensitive?: boolean | undefined;
850
+ } | {
851
+ type: "regex";
852
+ pattern: string;
853
+ flags?: string | undefined;
854
+ } | {
855
+ value: string;
856
+ type: "fuzzy";
857
+ threshold?: number | undefined;
858
+ } | {
859
+ type: "llm_grader";
860
+ rubric: string;
861
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
862
+ threshold?: number | undefined;
863
+ model?: string | undefined;
864
+ } | {
865
+ values: string[];
866
+ type: "contains";
867
+ mode?: "all" | "any" | undefined;
868
+ } | {
869
+ type: "json_schema";
870
+ schema: Record<string, unknown>;
871
+ } | {
872
+ type: "custom";
873
+ evaluator: string;
874
+ config?: Record<string, unknown> | undefined;
875
+ };
876
+ id: string;
877
+ prompt: string | {
878
+ role: "system" | "user" | "assistant";
879
+ content: string;
880
+ }[];
881
+ name?: string | undefined;
882
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
883
+ timeout?: number | undefined;
884
+ model?: string | undefined;
885
+ description?: string | undefined;
886
+ tags?: string[] | undefined;
887
+ metadata?: Record<string, unknown> | undefined;
888
+ retries?: number | undefined;
889
+ variables?: Record<string, string | number | boolean> | undefined;
890
+ redaction?: {
891
+ enabled?: boolean | undefined;
892
+ patterns?: string[] | undefined;
893
+ redactPrompts?: boolean | undefined;
894
+ redactResponses?: boolean | undefined;
895
+ redactMetadata?: boolean | undefined;
896
+ replacement?: string | undefined;
897
+ } | undefined;
898
+ }[];
899
+ provider?: "openai" | "azure-openai" | "vercel-ai" | "anthropic" | "google" | "mistral" | "cohere" | "huggingface" | "ollama" | "custom" | undefined;
900
+ model?: string | undefined;
901
+ description?: string | undefined;
902
+ tags?: string[] | undefined;
903
+ variables?: Record<string, string | number | boolean> | undefined;
904
+ redaction?: {
905
+ enabled?: boolean | undefined;
906
+ patterns?: string[] | undefined;
907
+ redactPrompts?: boolean | undefined;
908
+ redactResponses?: boolean | undefined;
909
+ redactMetadata?: boolean | undefined;
910
+ replacement?: string | undefined;
911
+ } | undefined;
912
+ version?: string | undefined;
913
+ providerConfig?: {
914
+ apiKey?: string | undefined;
915
+ baseUrl?: string | undefined;
916
+ defaultModel?: string | undefined;
917
+ timeout?: number | undefined;
918
+ maxRetries?: number | undefined;
919
+ organization?: string | undefined;
920
+ resourceName?: string | undefined;
921
+ deploymentName?: string | undefined;
922
+ apiVersion?: string | undefined;
923
+ underlyingProvider?: "openai" | "anthropic" | "google" | "mistral" | "azure" | undefined;
924
+ } | undefined;
925
+ seed?: number | undefined;
926
+ temperature?: number | undefined;
927
+ maxTokens?: number | undefined;
928
+ setup?: {
929
+ systemPrompt?: string | undefined;
930
+ functions?: unknown[] | undefined;
931
+ } | undefined;
932
+ teardown?: {
933
+ cleanup?: boolean | undefined;
934
+ } | undefined;
935
+ }>;
936
+ export type Expected = z.infer<typeof ExpectedSchema>;
937
+ export type TestCase = z.infer<typeof TestCaseSchema>;
938
+ export type Scenario = z.infer<typeof ScenarioSchema>;
939
+ export type Provider = z.infer<typeof ProviderSchema>;
940
+ export type ProviderConfig = z.infer<typeof ProviderConfigSchema>;
941
+ export type ChatMessageType = z.infer<typeof ChatMessageSchema>;
942
+ export type Variables = z.infer<typeof VariablesSchema>;
943
+ export type ScenarioRedactionConfig = z.infer<typeof RedactionConfigSchema>;
944
+ export {};
945
+ //# sourceMappingURL=schema.d.ts.map