qualyx 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 (100) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +523 -0
  3. package/dist/cli/commands/init.d.ts +6 -0
  4. package/dist/cli/commands/init.d.ts.map +1 -0
  5. package/dist/cli/commands/init.js +124 -0
  6. package/dist/cli/commands/init.js.map +1 -0
  7. package/dist/cli/commands/list.d.ts +3 -0
  8. package/dist/cli/commands/list.d.ts.map +1 -0
  9. package/dist/cli/commands/list.js +122 -0
  10. package/dist/cli/commands/list.js.map +1 -0
  11. package/dist/cli/commands/run.d.ts +12 -0
  12. package/dist/cli/commands/run.d.ts.map +1 -0
  13. package/dist/cli/commands/run.js +160 -0
  14. package/dist/cli/commands/run.js.map +1 -0
  15. package/dist/cli/commands/schedule.d.ts +19 -0
  16. package/dist/cli/commands/schedule.d.ts.map +1 -0
  17. package/dist/cli/commands/schedule.js +240 -0
  18. package/dist/cli/commands/schedule.js.map +1 -0
  19. package/dist/cli/commands/validate.d.ts +3 -0
  20. package/dist/cli/commands/validate.d.ts.map +1 -0
  21. package/dist/cli/commands/validate.js +47 -0
  22. package/dist/cli/commands/validate.js.map +1 -0
  23. package/dist/cli/index.d.ts +3 -0
  24. package/dist/cli/index.d.ts.map +1 -0
  25. package/dist/cli/index.js +194 -0
  26. package/dist/cli/index.js.map +1 -0
  27. package/dist/core/claude-runner.d.ts +23 -0
  28. package/dist/core/claude-runner.d.ts.map +1 -0
  29. package/dist/core/claude-runner.js +196 -0
  30. package/dist/core/claude-runner.js.map +1 -0
  31. package/dist/core/config-loader.d.ts +137 -0
  32. package/dist/core/config-loader.d.ts.map +1 -0
  33. package/dist/core/config-loader.js +239 -0
  34. package/dist/core/config-loader.js.map +1 -0
  35. package/dist/core/executor.d.ts +75 -0
  36. package/dist/core/executor.d.ts.map +1 -0
  37. package/dist/core/executor.js +337 -0
  38. package/dist/core/executor.js.map +1 -0
  39. package/dist/core/index.d.ts +6 -0
  40. package/dist/core/index.d.ts.map +1 -0
  41. package/dist/core/index.js +7 -0
  42. package/dist/core/index.js.map +1 -0
  43. package/dist/core/prompt-builder.d.ts +24 -0
  44. package/dist/core/prompt-builder.d.ts.map +1 -0
  45. package/dist/core/prompt-builder.js +145 -0
  46. package/dist/core/prompt-builder.js.map +1 -0
  47. package/dist/core/retry-handler.d.ts +42 -0
  48. package/dist/core/retry-handler.d.ts.map +1 -0
  49. package/dist/core/retry-handler.js +126 -0
  50. package/dist/core/retry-handler.js.map +1 -0
  51. package/dist/index.d.ts +3 -0
  52. package/dist/index.d.ts.map +1 -0
  53. package/dist/index.js +16 -0
  54. package/dist/index.js.map +1 -0
  55. package/dist/integrations/email.d.ts +38 -0
  56. package/dist/integrations/email.d.ts.map +1 -0
  57. package/dist/integrations/email.js +216 -0
  58. package/dist/integrations/email.js.map +1 -0
  59. package/dist/integrations/index.d.ts +5 -0
  60. package/dist/integrations/index.d.ts.map +1 -0
  61. package/dist/integrations/index.js +5 -0
  62. package/dist/integrations/index.js.map +1 -0
  63. package/dist/integrations/jira.d.ts +68 -0
  64. package/dist/integrations/jira.d.ts.map +1 -0
  65. package/dist/integrations/jira.js +288 -0
  66. package/dist/integrations/jira.js.map +1 -0
  67. package/dist/integrations/slack.d.ts +66 -0
  68. package/dist/integrations/slack.d.ts.map +1 -0
  69. package/dist/integrations/slack.js +192 -0
  70. package/dist/integrations/slack.js.map +1 -0
  71. package/dist/integrations/teams.d.ts +72 -0
  72. package/dist/integrations/teams.d.ts.map +1 -0
  73. package/dist/integrations/teams.js +197 -0
  74. package/dist/integrations/teams.js.map +1 -0
  75. package/dist/reporters/console.d.ts +83 -0
  76. package/dist/reporters/console.d.ts.map +1 -0
  77. package/dist/reporters/console.js +299 -0
  78. package/dist/reporters/console.js.map +1 -0
  79. package/dist/reporters/html.d.ts +29 -0
  80. package/dist/reporters/html.d.ts.map +1 -0
  81. package/dist/reporters/html.js +105 -0
  82. package/dist/reporters/html.js.map +1 -0
  83. package/dist/storage/results.d.ts +61 -0
  84. package/dist/storage/results.d.ts.map +1 -0
  85. package/dist/storage/results.js +111 -0
  86. package/dist/storage/results.js.map +1 -0
  87. package/dist/storage/sqlite.d.ts +70 -0
  88. package/dist/storage/sqlite.d.ts.map +1 -0
  89. package/dist/storage/sqlite.js +240 -0
  90. package/dist/storage/sqlite.js.map +1 -0
  91. package/dist/types/index.d.ts +1239 -0
  92. package/dist/types/index.d.ts.map +1 -0
  93. package/dist/types/index.js +105 -0
  94. package/dist/types/index.js.map +1 -0
  95. package/package.json +75 -0
  96. package/templates/crontab.hbs +24 -0
  97. package/templates/github-schedule.yml.hbs +153 -0
  98. package/templates/prompt.md.hbs +147 -0
  99. package/templates/report.html.hbs +423 -0
  100. package/templates/slack-message.json.hbs +93 -0
@@ -0,0 +1,1239 @@
1
+ import { z } from 'zod';
2
+ export declare const StepSchema: z.ZodUnion<[z.ZodString, z.ZodObject<{
3
+ action: z.ZodString;
4
+ hint: z.ZodOptional<z.ZodString>;
5
+ caution: z.ZodOptional<z.ZodString>;
6
+ }, "strip", z.ZodTypeAny, {
7
+ action: string;
8
+ hint?: string | undefined;
9
+ caution?: string | undefined;
10
+ }, {
11
+ action: string;
12
+ hint?: string | undefined;
13
+ caution?: string | undefined;
14
+ }>]>;
15
+ export declare const RuleSchema: z.ZodObject<{
16
+ id: z.ZodString;
17
+ name: z.ZodString;
18
+ severity: z.ZodDefault<z.ZodEnum<["critical", "high", "medium", "low"]>>;
19
+ timeout: z.ZodOptional<z.ZodNumber>;
20
+ steps: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
21
+ action: z.ZodString;
22
+ hint: z.ZodOptional<z.ZodString>;
23
+ caution: z.ZodOptional<z.ZodString>;
24
+ }, "strip", z.ZodTypeAny, {
25
+ action: string;
26
+ hint?: string | undefined;
27
+ caution?: string | undefined;
28
+ }, {
29
+ action: string;
30
+ hint?: string | undefined;
31
+ caution?: string | undefined;
32
+ }>]>, "many">;
33
+ validations: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
34
+ on_failure: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
35
+ test_data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
36
+ schedule: z.ZodOptional<z.ZodString>;
37
+ skip_setup: z.ZodOptional<z.ZodBoolean>;
38
+ }, "strip", z.ZodTypeAny, {
39
+ id: string;
40
+ name: string;
41
+ severity: "critical" | "high" | "medium" | "low";
42
+ steps: (string | {
43
+ action: string;
44
+ hint?: string | undefined;
45
+ caution?: string | undefined;
46
+ })[];
47
+ timeout?: number | undefined;
48
+ validations?: string[] | undefined;
49
+ on_failure?: string[] | undefined;
50
+ test_data?: Record<string, unknown> | undefined;
51
+ schedule?: string | undefined;
52
+ skip_setup?: boolean | undefined;
53
+ }, {
54
+ id: string;
55
+ name: string;
56
+ steps: (string | {
57
+ action: string;
58
+ hint?: string | undefined;
59
+ caution?: string | undefined;
60
+ })[];
61
+ severity?: "critical" | "high" | "medium" | "low" | undefined;
62
+ timeout?: number | undefined;
63
+ validations?: string[] | undefined;
64
+ on_failure?: string[] | undefined;
65
+ test_data?: Record<string, unknown> | undefined;
66
+ schedule?: string | undefined;
67
+ skip_setup?: boolean | undefined;
68
+ }>;
69
+ export declare const AuthSchema: z.ZodObject<{
70
+ type: z.ZodDefault<z.ZodEnum<["form-login", "basic", "bearer", "cookie", "none"]>>;
71
+ credentials: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
72
+ login_url: z.ZodOptional<z.ZodString>;
73
+ }, "strip", z.ZodTypeAny, {
74
+ type: "form-login" | "basic" | "bearer" | "cookie" | "none";
75
+ credentials?: Record<string, string> | undefined;
76
+ login_url?: string | undefined;
77
+ }, {
78
+ type?: "form-login" | "basic" | "bearer" | "cookie" | "none" | undefined;
79
+ credentials?: Record<string, string> | undefined;
80
+ login_url?: string | undefined;
81
+ }>;
82
+ export declare const ScreenshotsConfigSchema: z.ZodObject<{
83
+ on_failure: z.ZodDefault<z.ZodBoolean>;
84
+ on_success: z.ZodDefault<z.ZodBoolean>;
85
+ each_step: z.ZodDefault<z.ZodBoolean>;
86
+ }, "strip", z.ZodTypeAny, {
87
+ on_failure: boolean;
88
+ on_success: boolean;
89
+ each_step: boolean;
90
+ }, {
91
+ on_failure?: boolean | undefined;
92
+ on_success?: boolean | undefined;
93
+ each_step?: boolean | undefined;
94
+ }>;
95
+ export declare const AppSchema: z.ZodObject<{
96
+ name: z.ZodString;
97
+ url: z.ZodString;
98
+ environments: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
99
+ auth: z.ZodOptional<z.ZodObject<{
100
+ type: z.ZodDefault<z.ZodEnum<["form-login", "basic", "bearer", "cookie", "none"]>>;
101
+ credentials: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
102
+ login_url: z.ZodOptional<z.ZodString>;
103
+ }, "strip", z.ZodTypeAny, {
104
+ type: "form-login" | "basic" | "bearer" | "cookie" | "none";
105
+ credentials?: Record<string, string> | undefined;
106
+ login_url?: string | undefined;
107
+ }, {
108
+ type?: "form-login" | "basic" | "bearer" | "cookie" | "none" | undefined;
109
+ credentials?: Record<string, string> | undefined;
110
+ login_url?: string | undefined;
111
+ }>>;
112
+ screenshots: z.ZodOptional<z.ZodObject<{
113
+ on_failure: z.ZodDefault<z.ZodBoolean>;
114
+ on_success: z.ZodDefault<z.ZodBoolean>;
115
+ each_step: z.ZodDefault<z.ZodBoolean>;
116
+ }, "strip", z.ZodTypeAny, {
117
+ on_failure: boolean;
118
+ on_success: boolean;
119
+ each_step: boolean;
120
+ }, {
121
+ on_failure?: boolean | undefined;
122
+ on_success?: boolean | undefined;
123
+ each_step?: boolean | undefined;
124
+ }>>;
125
+ setup: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
126
+ rules: z.ZodArray<z.ZodObject<{
127
+ id: z.ZodString;
128
+ name: z.ZodString;
129
+ severity: z.ZodDefault<z.ZodEnum<["critical", "high", "medium", "low"]>>;
130
+ timeout: z.ZodOptional<z.ZodNumber>;
131
+ steps: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
132
+ action: z.ZodString;
133
+ hint: z.ZodOptional<z.ZodString>;
134
+ caution: z.ZodOptional<z.ZodString>;
135
+ }, "strip", z.ZodTypeAny, {
136
+ action: string;
137
+ hint?: string | undefined;
138
+ caution?: string | undefined;
139
+ }, {
140
+ action: string;
141
+ hint?: string | undefined;
142
+ caution?: string | undefined;
143
+ }>]>, "many">;
144
+ validations: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
145
+ on_failure: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
146
+ test_data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
147
+ schedule: z.ZodOptional<z.ZodString>;
148
+ skip_setup: z.ZodOptional<z.ZodBoolean>;
149
+ }, "strip", z.ZodTypeAny, {
150
+ id: string;
151
+ name: string;
152
+ severity: "critical" | "high" | "medium" | "low";
153
+ steps: (string | {
154
+ action: string;
155
+ hint?: string | undefined;
156
+ caution?: string | undefined;
157
+ })[];
158
+ timeout?: number | undefined;
159
+ validations?: string[] | undefined;
160
+ on_failure?: string[] | undefined;
161
+ test_data?: Record<string, unknown> | undefined;
162
+ schedule?: string | undefined;
163
+ skip_setup?: boolean | undefined;
164
+ }, {
165
+ id: string;
166
+ name: string;
167
+ steps: (string | {
168
+ action: string;
169
+ hint?: string | undefined;
170
+ caution?: string | undefined;
171
+ })[];
172
+ severity?: "critical" | "high" | "medium" | "low" | undefined;
173
+ timeout?: number | undefined;
174
+ validations?: string[] | undefined;
175
+ on_failure?: string[] | undefined;
176
+ test_data?: Record<string, unknown> | undefined;
177
+ schedule?: string | undefined;
178
+ skip_setup?: boolean | undefined;
179
+ }>, "many">;
180
+ }, "strip", z.ZodTypeAny, {
181
+ name: string;
182
+ url: string;
183
+ rules: {
184
+ id: string;
185
+ name: string;
186
+ severity: "critical" | "high" | "medium" | "low";
187
+ steps: (string | {
188
+ action: string;
189
+ hint?: string | undefined;
190
+ caution?: string | undefined;
191
+ })[];
192
+ timeout?: number | undefined;
193
+ validations?: string[] | undefined;
194
+ on_failure?: string[] | undefined;
195
+ test_data?: Record<string, unknown> | undefined;
196
+ schedule?: string | undefined;
197
+ skip_setup?: boolean | undefined;
198
+ }[];
199
+ environments?: Record<string, string> | undefined;
200
+ auth?: {
201
+ type: "form-login" | "basic" | "bearer" | "cookie" | "none";
202
+ credentials?: Record<string, string> | undefined;
203
+ login_url?: string | undefined;
204
+ } | undefined;
205
+ screenshots?: {
206
+ on_failure: boolean;
207
+ on_success: boolean;
208
+ each_step: boolean;
209
+ } | undefined;
210
+ setup?: string[] | undefined;
211
+ }, {
212
+ name: string;
213
+ url: string;
214
+ rules: {
215
+ id: string;
216
+ name: string;
217
+ steps: (string | {
218
+ action: string;
219
+ hint?: string | undefined;
220
+ caution?: string | undefined;
221
+ })[];
222
+ severity?: "critical" | "high" | "medium" | "low" | undefined;
223
+ timeout?: number | undefined;
224
+ validations?: string[] | undefined;
225
+ on_failure?: string[] | undefined;
226
+ test_data?: Record<string, unknown> | undefined;
227
+ schedule?: string | undefined;
228
+ skip_setup?: boolean | undefined;
229
+ }[];
230
+ environments?: Record<string, string> | undefined;
231
+ auth?: {
232
+ type?: "form-login" | "basic" | "bearer" | "cookie" | "none" | undefined;
233
+ credentials?: Record<string, string> | undefined;
234
+ login_url?: string | undefined;
235
+ } | undefined;
236
+ screenshots?: {
237
+ on_failure?: boolean | undefined;
238
+ on_success?: boolean | undefined;
239
+ each_step?: boolean | undefined;
240
+ } | undefined;
241
+ setup?: string[] | undefined;
242
+ }>;
243
+ export declare const OrganizationDefaultsSchema: z.ZodObject<{
244
+ timeout: z.ZodDefault<z.ZodNumber>;
245
+ retries: z.ZodDefault<z.ZodNumber>;
246
+ headless: z.ZodDefault<z.ZodBoolean>;
247
+ }, "strip", z.ZodTypeAny, {
248
+ timeout: number;
249
+ retries: number;
250
+ headless: boolean;
251
+ }, {
252
+ timeout?: number | undefined;
253
+ retries?: number | undefined;
254
+ headless?: boolean | undefined;
255
+ }>;
256
+ export declare const OrganizationSchema: z.ZodObject<{
257
+ name: z.ZodString;
258
+ defaults: z.ZodOptional<z.ZodObject<{
259
+ timeout: z.ZodDefault<z.ZodNumber>;
260
+ retries: z.ZodDefault<z.ZodNumber>;
261
+ headless: z.ZodDefault<z.ZodBoolean>;
262
+ }, "strip", z.ZodTypeAny, {
263
+ timeout: number;
264
+ retries: number;
265
+ headless: boolean;
266
+ }, {
267
+ timeout?: number | undefined;
268
+ retries?: number | undefined;
269
+ headless?: boolean | undefined;
270
+ }>>;
271
+ }, "strip", z.ZodTypeAny, {
272
+ name: string;
273
+ defaults?: {
274
+ timeout: number;
275
+ retries: number;
276
+ headless: boolean;
277
+ } | undefined;
278
+ }, {
279
+ name: string;
280
+ defaults?: {
281
+ timeout?: number | undefined;
282
+ retries?: number | undefined;
283
+ headless?: boolean | undefined;
284
+ } | undefined;
285
+ }>;
286
+ export declare const SlackConfigSchema: z.ZodObject<{
287
+ webhook_url: z.ZodString;
288
+ on_failure: z.ZodDefault<z.ZodBoolean>;
289
+ on_success: z.ZodDefault<z.ZodBoolean>;
290
+ channel: z.ZodOptional<z.ZodString>;
291
+ mention_on_failure: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
292
+ }, "strip", z.ZodTypeAny, {
293
+ on_failure: boolean;
294
+ on_success: boolean;
295
+ webhook_url: string;
296
+ channel?: string | undefined;
297
+ mention_on_failure?: string[] | undefined;
298
+ }, {
299
+ webhook_url: string;
300
+ on_failure?: boolean | undefined;
301
+ on_success?: boolean | undefined;
302
+ channel?: string | undefined;
303
+ mention_on_failure?: string[] | undefined;
304
+ }>;
305
+ export declare const EmailConfigSchema: z.ZodObject<{
306
+ smtp_host: z.ZodString;
307
+ smtp_port: z.ZodDefault<z.ZodNumber>;
308
+ smtp_secure: z.ZodDefault<z.ZodBoolean>;
309
+ smtp_user: z.ZodString;
310
+ smtp_pass: z.ZodString;
311
+ from: z.ZodString;
312
+ to: z.ZodArray<z.ZodString, "many">;
313
+ on_failure: z.ZodDefault<z.ZodBoolean>;
314
+ on_success: z.ZodDefault<z.ZodBoolean>;
315
+ subject_prefix: z.ZodDefault<z.ZodString>;
316
+ }, "strip", z.ZodTypeAny, {
317
+ on_failure: boolean;
318
+ on_success: boolean;
319
+ smtp_host: string;
320
+ smtp_port: number;
321
+ smtp_secure: boolean;
322
+ smtp_user: string;
323
+ smtp_pass: string;
324
+ from: string;
325
+ to: string[];
326
+ subject_prefix: string;
327
+ }, {
328
+ smtp_host: string;
329
+ smtp_user: string;
330
+ smtp_pass: string;
331
+ from: string;
332
+ to: string[];
333
+ on_failure?: boolean | undefined;
334
+ on_success?: boolean | undefined;
335
+ smtp_port?: number | undefined;
336
+ smtp_secure?: boolean | undefined;
337
+ subject_prefix?: string | undefined;
338
+ }>;
339
+ export declare const TeamsConfigSchema: z.ZodObject<{
340
+ webhook_url: z.ZodString;
341
+ on_failure: z.ZodDefault<z.ZodBoolean>;
342
+ on_success: z.ZodDefault<z.ZodBoolean>;
343
+ mention_on_failure: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
344
+ }, "strip", z.ZodTypeAny, {
345
+ on_failure: boolean;
346
+ on_success: boolean;
347
+ webhook_url: string;
348
+ mention_on_failure?: string[] | undefined;
349
+ }, {
350
+ webhook_url: string;
351
+ on_failure?: boolean | undefined;
352
+ on_success?: boolean | undefined;
353
+ mention_on_failure?: string[] | undefined;
354
+ }>;
355
+ export declare const JiraConfigSchema: z.ZodObject<{
356
+ base_url: z.ZodString;
357
+ email: z.ZodString;
358
+ api_token: z.ZodString;
359
+ project_key: z.ZodString;
360
+ create_issues: z.ZodDefault<z.ZodBoolean>;
361
+ issue_type: z.ZodDefault<z.ZodString>;
362
+ labels: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
363
+ components: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
364
+ }, "strip", z.ZodTypeAny, {
365
+ base_url: string;
366
+ email: string;
367
+ api_token: string;
368
+ project_key: string;
369
+ create_issues: boolean;
370
+ issue_type: string;
371
+ labels?: string[] | undefined;
372
+ components?: string[] | undefined;
373
+ }, {
374
+ base_url: string;
375
+ email: string;
376
+ api_token: string;
377
+ project_key: string;
378
+ create_issues?: boolean | undefined;
379
+ issue_type?: string | undefined;
380
+ labels?: string[] | undefined;
381
+ components?: string[] | undefined;
382
+ }>;
383
+ export declare const NotificationsSchema: z.ZodObject<{
384
+ slack: z.ZodOptional<z.ZodObject<{
385
+ webhook_url: z.ZodString;
386
+ on_failure: z.ZodDefault<z.ZodBoolean>;
387
+ on_success: z.ZodDefault<z.ZodBoolean>;
388
+ channel: z.ZodOptional<z.ZodString>;
389
+ mention_on_failure: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
390
+ }, "strip", z.ZodTypeAny, {
391
+ on_failure: boolean;
392
+ on_success: boolean;
393
+ webhook_url: string;
394
+ channel?: string | undefined;
395
+ mention_on_failure?: string[] | undefined;
396
+ }, {
397
+ webhook_url: string;
398
+ on_failure?: boolean | undefined;
399
+ on_success?: boolean | undefined;
400
+ channel?: string | undefined;
401
+ mention_on_failure?: string[] | undefined;
402
+ }>>;
403
+ email: z.ZodOptional<z.ZodObject<{
404
+ smtp_host: z.ZodString;
405
+ smtp_port: z.ZodDefault<z.ZodNumber>;
406
+ smtp_secure: z.ZodDefault<z.ZodBoolean>;
407
+ smtp_user: z.ZodString;
408
+ smtp_pass: z.ZodString;
409
+ from: z.ZodString;
410
+ to: z.ZodArray<z.ZodString, "many">;
411
+ on_failure: z.ZodDefault<z.ZodBoolean>;
412
+ on_success: z.ZodDefault<z.ZodBoolean>;
413
+ subject_prefix: z.ZodDefault<z.ZodString>;
414
+ }, "strip", z.ZodTypeAny, {
415
+ on_failure: boolean;
416
+ on_success: boolean;
417
+ smtp_host: string;
418
+ smtp_port: number;
419
+ smtp_secure: boolean;
420
+ smtp_user: string;
421
+ smtp_pass: string;
422
+ from: string;
423
+ to: string[];
424
+ subject_prefix: string;
425
+ }, {
426
+ smtp_host: string;
427
+ smtp_user: string;
428
+ smtp_pass: string;
429
+ from: string;
430
+ to: string[];
431
+ on_failure?: boolean | undefined;
432
+ on_success?: boolean | undefined;
433
+ smtp_port?: number | undefined;
434
+ smtp_secure?: boolean | undefined;
435
+ subject_prefix?: string | undefined;
436
+ }>>;
437
+ teams: z.ZodOptional<z.ZodObject<{
438
+ webhook_url: z.ZodString;
439
+ on_failure: z.ZodDefault<z.ZodBoolean>;
440
+ on_success: z.ZodDefault<z.ZodBoolean>;
441
+ mention_on_failure: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
442
+ }, "strip", z.ZodTypeAny, {
443
+ on_failure: boolean;
444
+ on_success: boolean;
445
+ webhook_url: string;
446
+ mention_on_failure?: string[] | undefined;
447
+ }, {
448
+ webhook_url: string;
449
+ on_failure?: boolean | undefined;
450
+ on_success?: boolean | undefined;
451
+ mention_on_failure?: string[] | undefined;
452
+ }>>;
453
+ }, "strip", z.ZodTypeAny, {
454
+ email?: {
455
+ on_failure: boolean;
456
+ on_success: boolean;
457
+ smtp_host: string;
458
+ smtp_port: number;
459
+ smtp_secure: boolean;
460
+ smtp_user: string;
461
+ smtp_pass: string;
462
+ from: string;
463
+ to: string[];
464
+ subject_prefix: string;
465
+ } | undefined;
466
+ slack?: {
467
+ on_failure: boolean;
468
+ on_success: boolean;
469
+ webhook_url: string;
470
+ channel?: string | undefined;
471
+ mention_on_failure?: string[] | undefined;
472
+ } | undefined;
473
+ teams?: {
474
+ on_failure: boolean;
475
+ on_success: boolean;
476
+ webhook_url: string;
477
+ mention_on_failure?: string[] | undefined;
478
+ } | undefined;
479
+ }, {
480
+ email?: {
481
+ smtp_host: string;
482
+ smtp_user: string;
483
+ smtp_pass: string;
484
+ from: string;
485
+ to: string[];
486
+ on_failure?: boolean | undefined;
487
+ on_success?: boolean | undefined;
488
+ smtp_port?: number | undefined;
489
+ smtp_secure?: boolean | undefined;
490
+ subject_prefix?: string | undefined;
491
+ } | undefined;
492
+ slack?: {
493
+ webhook_url: string;
494
+ on_failure?: boolean | undefined;
495
+ on_success?: boolean | undefined;
496
+ channel?: string | undefined;
497
+ mention_on_failure?: string[] | undefined;
498
+ } | undefined;
499
+ teams?: {
500
+ webhook_url: string;
501
+ on_failure?: boolean | undefined;
502
+ on_success?: boolean | undefined;
503
+ mention_on_failure?: string[] | undefined;
504
+ } | undefined;
505
+ }>;
506
+ export declare const IntegrationsSchema: z.ZodObject<{
507
+ jira: z.ZodOptional<z.ZodObject<{
508
+ base_url: z.ZodString;
509
+ email: z.ZodString;
510
+ api_token: z.ZodString;
511
+ project_key: z.ZodString;
512
+ create_issues: z.ZodDefault<z.ZodBoolean>;
513
+ issue_type: z.ZodDefault<z.ZodString>;
514
+ labels: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
515
+ components: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
516
+ }, "strip", z.ZodTypeAny, {
517
+ base_url: string;
518
+ email: string;
519
+ api_token: string;
520
+ project_key: string;
521
+ create_issues: boolean;
522
+ issue_type: string;
523
+ labels?: string[] | undefined;
524
+ components?: string[] | undefined;
525
+ }, {
526
+ base_url: string;
527
+ email: string;
528
+ api_token: string;
529
+ project_key: string;
530
+ create_issues?: boolean | undefined;
531
+ issue_type?: string | undefined;
532
+ labels?: string[] | undefined;
533
+ components?: string[] | undefined;
534
+ }>>;
535
+ }, "strip", z.ZodTypeAny, {
536
+ jira?: {
537
+ base_url: string;
538
+ email: string;
539
+ api_token: string;
540
+ project_key: string;
541
+ create_issues: boolean;
542
+ issue_type: string;
543
+ labels?: string[] | undefined;
544
+ components?: string[] | undefined;
545
+ } | undefined;
546
+ }, {
547
+ jira?: {
548
+ base_url: string;
549
+ email: string;
550
+ api_token: string;
551
+ project_key: string;
552
+ create_issues?: boolean | undefined;
553
+ issue_type?: string | undefined;
554
+ labels?: string[] | undefined;
555
+ components?: string[] | undefined;
556
+ } | undefined;
557
+ }>;
558
+ export declare const QualyxConfigSchema: z.ZodObject<{
559
+ organization: z.ZodObject<{
560
+ name: z.ZodString;
561
+ defaults: z.ZodOptional<z.ZodObject<{
562
+ timeout: z.ZodDefault<z.ZodNumber>;
563
+ retries: z.ZodDefault<z.ZodNumber>;
564
+ headless: z.ZodDefault<z.ZodBoolean>;
565
+ }, "strip", z.ZodTypeAny, {
566
+ timeout: number;
567
+ retries: number;
568
+ headless: boolean;
569
+ }, {
570
+ timeout?: number | undefined;
571
+ retries?: number | undefined;
572
+ headless?: boolean | undefined;
573
+ }>>;
574
+ }, "strip", z.ZodTypeAny, {
575
+ name: string;
576
+ defaults?: {
577
+ timeout: number;
578
+ retries: number;
579
+ headless: boolean;
580
+ } | undefined;
581
+ }, {
582
+ name: string;
583
+ defaults?: {
584
+ timeout?: number | undefined;
585
+ retries?: number | undefined;
586
+ headless?: boolean | undefined;
587
+ } | undefined;
588
+ }>;
589
+ apps: z.ZodArray<z.ZodObject<{
590
+ name: z.ZodString;
591
+ url: z.ZodString;
592
+ environments: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
593
+ auth: z.ZodOptional<z.ZodObject<{
594
+ type: z.ZodDefault<z.ZodEnum<["form-login", "basic", "bearer", "cookie", "none"]>>;
595
+ credentials: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
596
+ login_url: z.ZodOptional<z.ZodString>;
597
+ }, "strip", z.ZodTypeAny, {
598
+ type: "form-login" | "basic" | "bearer" | "cookie" | "none";
599
+ credentials?: Record<string, string> | undefined;
600
+ login_url?: string | undefined;
601
+ }, {
602
+ type?: "form-login" | "basic" | "bearer" | "cookie" | "none" | undefined;
603
+ credentials?: Record<string, string> | undefined;
604
+ login_url?: string | undefined;
605
+ }>>;
606
+ screenshots: z.ZodOptional<z.ZodObject<{
607
+ on_failure: z.ZodDefault<z.ZodBoolean>;
608
+ on_success: z.ZodDefault<z.ZodBoolean>;
609
+ each_step: z.ZodDefault<z.ZodBoolean>;
610
+ }, "strip", z.ZodTypeAny, {
611
+ on_failure: boolean;
612
+ on_success: boolean;
613
+ each_step: boolean;
614
+ }, {
615
+ on_failure?: boolean | undefined;
616
+ on_success?: boolean | undefined;
617
+ each_step?: boolean | undefined;
618
+ }>>;
619
+ setup: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
620
+ rules: z.ZodArray<z.ZodObject<{
621
+ id: z.ZodString;
622
+ name: z.ZodString;
623
+ severity: z.ZodDefault<z.ZodEnum<["critical", "high", "medium", "low"]>>;
624
+ timeout: z.ZodOptional<z.ZodNumber>;
625
+ steps: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
626
+ action: z.ZodString;
627
+ hint: z.ZodOptional<z.ZodString>;
628
+ caution: z.ZodOptional<z.ZodString>;
629
+ }, "strip", z.ZodTypeAny, {
630
+ action: string;
631
+ hint?: string | undefined;
632
+ caution?: string | undefined;
633
+ }, {
634
+ action: string;
635
+ hint?: string | undefined;
636
+ caution?: string | undefined;
637
+ }>]>, "many">;
638
+ validations: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
639
+ on_failure: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
640
+ test_data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
641
+ schedule: z.ZodOptional<z.ZodString>;
642
+ skip_setup: z.ZodOptional<z.ZodBoolean>;
643
+ }, "strip", z.ZodTypeAny, {
644
+ id: string;
645
+ name: string;
646
+ severity: "critical" | "high" | "medium" | "low";
647
+ steps: (string | {
648
+ action: string;
649
+ hint?: string | undefined;
650
+ caution?: string | undefined;
651
+ })[];
652
+ timeout?: number | undefined;
653
+ validations?: string[] | undefined;
654
+ on_failure?: string[] | undefined;
655
+ test_data?: Record<string, unknown> | undefined;
656
+ schedule?: string | undefined;
657
+ skip_setup?: boolean | undefined;
658
+ }, {
659
+ id: string;
660
+ name: string;
661
+ steps: (string | {
662
+ action: string;
663
+ hint?: string | undefined;
664
+ caution?: string | undefined;
665
+ })[];
666
+ severity?: "critical" | "high" | "medium" | "low" | undefined;
667
+ timeout?: number | undefined;
668
+ validations?: string[] | undefined;
669
+ on_failure?: string[] | undefined;
670
+ test_data?: Record<string, unknown> | undefined;
671
+ schedule?: string | undefined;
672
+ skip_setup?: boolean | undefined;
673
+ }>, "many">;
674
+ }, "strip", z.ZodTypeAny, {
675
+ name: string;
676
+ url: string;
677
+ rules: {
678
+ id: string;
679
+ name: string;
680
+ severity: "critical" | "high" | "medium" | "low";
681
+ steps: (string | {
682
+ action: string;
683
+ hint?: string | undefined;
684
+ caution?: string | undefined;
685
+ })[];
686
+ timeout?: number | undefined;
687
+ validations?: string[] | undefined;
688
+ on_failure?: string[] | undefined;
689
+ test_data?: Record<string, unknown> | undefined;
690
+ schedule?: string | undefined;
691
+ skip_setup?: boolean | undefined;
692
+ }[];
693
+ environments?: Record<string, string> | undefined;
694
+ auth?: {
695
+ type: "form-login" | "basic" | "bearer" | "cookie" | "none";
696
+ credentials?: Record<string, string> | undefined;
697
+ login_url?: string | undefined;
698
+ } | undefined;
699
+ screenshots?: {
700
+ on_failure: boolean;
701
+ on_success: boolean;
702
+ each_step: boolean;
703
+ } | undefined;
704
+ setup?: string[] | undefined;
705
+ }, {
706
+ name: string;
707
+ url: string;
708
+ rules: {
709
+ id: string;
710
+ name: string;
711
+ steps: (string | {
712
+ action: string;
713
+ hint?: string | undefined;
714
+ caution?: string | undefined;
715
+ })[];
716
+ severity?: "critical" | "high" | "medium" | "low" | undefined;
717
+ timeout?: number | undefined;
718
+ validations?: string[] | undefined;
719
+ on_failure?: string[] | undefined;
720
+ test_data?: Record<string, unknown> | undefined;
721
+ schedule?: string | undefined;
722
+ skip_setup?: boolean | undefined;
723
+ }[];
724
+ environments?: Record<string, string> | undefined;
725
+ auth?: {
726
+ type?: "form-login" | "basic" | "bearer" | "cookie" | "none" | undefined;
727
+ credentials?: Record<string, string> | undefined;
728
+ login_url?: string | undefined;
729
+ } | undefined;
730
+ screenshots?: {
731
+ on_failure?: boolean | undefined;
732
+ on_success?: boolean | undefined;
733
+ each_step?: boolean | undefined;
734
+ } | undefined;
735
+ setup?: string[] | undefined;
736
+ }>, "many">;
737
+ notifications: z.ZodOptional<z.ZodObject<{
738
+ slack: z.ZodOptional<z.ZodObject<{
739
+ webhook_url: z.ZodString;
740
+ on_failure: z.ZodDefault<z.ZodBoolean>;
741
+ on_success: z.ZodDefault<z.ZodBoolean>;
742
+ channel: z.ZodOptional<z.ZodString>;
743
+ mention_on_failure: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
744
+ }, "strip", z.ZodTypeAny, {
745
+ on_failure: boolean;
746
+ on_success: boolean;
747
+ webhook_url: string;
748
+ channel?: string | undefined;
749
+ mention_on_failure?: string[] | undefined;
750
+ }, {
751
+ webhook_url: string;
752
+ on_failure?: boolean | undefined;
753
+ on_success?: boolean | undefined;
754
+ channel?: string | undefined;
755
+ mention_on_failure?: string[] | undefined;
756
+ }>>;
757
+ email: z.ZodOptional<z.ZodObject<{
758
+ smtp_host: z.ZodString;
759
+ smtp_port: z.ZodDefault<z.ZodNumber>;
760
+ smtp_secure: z.ZodDefault<z.ZodBoolean>;
761
+ smtp_user: z.ZodString;
762
+ smtp_pass: z.ZodString;
763
+ from: z.ZodString;
764
+ to: z.ZodArray<z.ZodString, "many">;
765
+ on_failure: z.ZodDefault<z.ZodBoolean>;
766
+ on_success: z.ZodDefault<z.ZodBoolean>;
767
+ subject_prefix: z.ZodDefault<z.ZodString>;
768
+ }, "strip", z.ZodTypeAny, {
769
+ on_failure: boolean;
770
+ on_success: boolean;
771
+ smtp_host: string;
772
+ smtp_port: number;
773
+ smtp_secure: boolean;
774
+ smtp_user: string;
775
+ smtp_pass: string;
776
+ from: string;
777
+ to: string[];
778
+ subject_prefix: string;
779
+ }, {
780
+ smtp_host: string;
781
+ smtp_user: string;
782
+ smtp_pass: string;
783
+ from: string;
784
+ to: string[];
785
+ on_failure?: boolean | undefined;
786
+ on_success?: boolean | undefined;
787
+ smtp_port?: number | undefined;
788
+ smtp_secure?: boolean | undefined;
789
+ subject_prefix?: string | undefined;
790
+ }>>;
791
+ teams: z.ZodOptional<z.ZodObject<{
792
+ webhook_url: z.ZodString;
793
+ on_failure: z.ZodDefault<z.ZodBoolean>;
794
+ on_success: z.ZodDefault<z.ZodBoolean>;
795
+ mention_on_failure: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
796
+ }, "strip", z.ZodTypeAny, {
797
+ on_failure: boolean;
798
+ on_success: boolean;
799
+ webhook_url: string;
800
+ mention_on_failure?: string[] | undefined;
801
+ }, {
802
+ webhook_url: string;
803
+ on_failure?: boolean | undefined;
804
+ on_success?: boolean | undefined;
805
+ mention_on_failure?: string[] | undefined;
806
+ }>>;
807
+ }, "strip", z.ZodTypeAny, {
808
+ email?: {
809
+ on_failure: boolean;
810
+ on_success: boolean;
811
+ smtp_host: string;
812
+ smtp_port: number;
813
+ smtp_secure: boolean;
814
+ smtp_user: string;
815
+ smtp_pass: string;
816
+ from: string;
817
+ to: string[];
818
+ subject_prefix: string;
819
+ } | undefined;
820
+ slack?: {
821
+ on_failure: boolean;
822
+ on_success: boolean;
823
+ webhook_url: string;
824
+ channel?: string | undefined;
825
+ mention_on_failure?: string[] | undefined;
826
+ } | undefined;
827
+ teams?: {
828
+ on_failure: boolean;
829
+ on_success: boolean;
830
+ webhook_url: string;
831
+ mention_on_failure?: string[] | undefined;
832
+ } | undefined;
833
+ }, {
834
+ email?: {
835
+ smtp_host: string;
836
+ smtp_user: string;
837
+ smtp_pass: string;
838
+ from: string;
839
+ to: string[];
840
+ on_failure?: boolean | undefined;
841
+ on_success?: boolean | undefined;
842
+ smtp_port?: number | undefined;
843
+ smtp_secure?: boolean | undefined;
844
+ subject_prefix?: string | undefined;
845
+ } | undefined;
846
+ slack?: {
847
+ webhook_url: string;
848
+ on_failure?: boolean | undefined;
849
+ on_success?: boolean | undefined;
850
+ channel?: string | undefined;
851
+ mention_on_failure?: string[] | undefined;
852
+ } | undefined;
853
+ teams?: {
854
+ webhook_url: string;
855
+ on_failure?: boolean | undefined;
856
+ on_success?: boolean | undefined;
857
+ mention_on_failure?: string[] | undefined;
858
+ } | undefined;
859
+ }>>;
860
+ integrations: z.ZodOptional<z.ZodObject<{
861
+ jira: z.ZodOptional<z.ZodObject<{
862
+ base_url: z.ZodString;
863
+ email: z.ZodString;
864
+ api_token: z.ZodString;
865
+ project_key: z.ZodString;
866
+ create_issues: z.ZodDefault<z.ZodBoolean>;
867
+ issue_type: z.ZodDefault<z.ZodString>;
868
+ labels: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
869
+ components: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
870
+ }, "strip", z.ZodTypeAny, {
871
+ base_url: string;
872
+ email: string;
873
+ api_token: string;
874
+ project_key: string;
875
+ create_issues: boolean;
876
+ issue_type: string;
877
+ labels?: string[] | undefined;
878
+ components?: string[] | undefined;
879
+ }, {
880
+ base_url: string;
881
+ email: string;
882
+ api_token: string;
883
+ project_key: string;
884
+ create_issues?: boolean | undefined;
885
+ issue_type?: string | undefined;
886
+ labels?: string[] | undefined;
887
+ components?: string[] | undefined;
888
+ }>>;
889
+ }, "strip", z.ZodTypeAny, {
890
+ jira?: {
891
+ base_url: string;
892
+ email: string;
893
+ api_token: string;
894
+ project_key: string;
895
+ create_issues: boolean;
896
+ issue_type: string;
897
+ labels?: string[] | undefined;
898
+ components?: string[] | undefined;
899
+ } | undefined;
900
+ }, {
901
+ jira?: {
902
+ base_url: string;
903
+ email: string;
904
+ api_token: string;
905
+ project_key: string;
906
+ create_issues?: boolean | undefined;
907
+ issue_type?: string | undefined;
908
+ labels?: string[] | undefined;
909
+ components?: string[] | undefined;
910
+ } | undefined;
911
+ }>>;
912
+ }, "strip", z.ZodTypeAny, {
913
+ organization: {
914
+ name: string;
915
+ defaults?: {
916
+ timeout: number;
917
+ retries: number;
918
+ headless: boolean;
919
+ } | undefined;
920
+ };
921
+ apps: {
922
+ name: string;
923
+ url: string;
924
+ rules: {
925
+ id: string;
926
+ name: string;
927
+ severity: "critical" | "high" | "medium" | "low";
928
+ steps: (string | {
929
+ action: string;
930
+ hint?: string | undefined;
931
+ caution?: string | undefined;
932
+ })[];
933
+ timeout?: number | undefined;
934
+ validations?: string[] | undefined;
935
+ on_failure?: string[] | undefined;
936
+ test_data?: Record<string, unknown> | undefined;
937
+ schedule?: string | undefined;
938
+ skip_setup?: boolean | undefined;
939
+ }[];
940
+ environments?: Record<string, string> | undefined;
941
+ auth?: {
942
+ type: "form-login" | "basic" | "bearer" | "cookie" | "none";
943
+ credentials?: Record<string, string> | undefined;
944
+ login_url?: string | undefined;
945
+ } | undefined;
946
+ screenshots?: {
947
+ on_failure: boolean;
948
+ on_success: boolean;
949
+ each_step: boolean;
950
+ } | undefined;
951
+ setup?: string[] | undefined;
952
+ }[];
953
+ notifications?: {
954
+ email?: {
955
+ on_failure: boolean;
956
+ on_success: boolean;
957
+ smtp_host: string;
958
+ smtp_port: number;
959
+ smtp_secure: boolean;
960
+ smtp_user: string;
961
+ smtp_pass: string;
962
+ from: string;
963
+ to: string[];
964
+ subject_prefix: string;
965
+ } | undefined;
966
+ slack?: {
967
+ on_failure: boolean;
968
+ on_success: boolean;
969
+ webhook_url: string;
970
+ channel?: string | undefined;
971
+ mention_on_failure?: string[] | undefined;
972
+ } | undefined;
973
+ teams?: {
974
+ on_failure: boolean;
975
+ on_success: boolean;
976
+ webhook_url: string;
977
+ mention_on_failure?: string[] | undefined;
978
+ } | undefined;
979
+ } | undefined;
980
+ integrations?: {
981
+ jira?: {
982
+ base_url: string;
983
+ email: string;
984
+ api_token: string;
985
+ project_key: string;
986
+ create_issues: boolean;
987
+ issue_type: string;
988
+ labels?: string[] | undefined;
989
+ components?: string[] | undefined;
990
+ } | undefined;
991
+ } | undefined;
992
+ }, {
993
+ organization: {
994
+ name: string;
995
+ defaults?: {
996
+ timeout?: number | undefined;
997
+ retries?: number | undefined;
998
+ headless?: boolean | undefined;
999
+ } | undefined;
1000
+ };
1001
+ apps: {
1002
+ name: string;
1003
+ url: string;
1004
+ rules: {
1005
+ id: string;
1006
+ name: string;
1007
+ steps: (string | {
1008
+ action: string;
1009
+ hint?: string | undefined;
1010
+ caution?: string | undefined;
1011
+ })[];
1012
+ severity?: "critical" | "high" | "medium" | "low" | undefined;
1013
+ timeout?: number | undefined;
1014
+ validations?: string[] | undefined;
1015
+ on_failure?: string[] | undefined;
1016
+ test_data?: Record<string, unknown> | undefined;
1017
+ schedule?: string | undefined;
1018
+ skip_setup?: boolean | undefined;
1019
+ }[];
1020
+ environments?: Record<string, string> | undefined;
1021
+ auth?: {
1022
+ type?: "form-login" | "basic" | "bearer" | "cookie" | "none" | undefined;
1023
+ credentials?: Record<string, string> | undefined;
1024
+ login_url?: string | undefined;
1025
+ } | undefined;
1026
+ screenshots?: {
1027
+ on_failure?: boolean | undefined;
1028
+ on_success?: boolean | undefined;
1029
+ each_step?: boolean | undefined;
1030
+ } | undefined;
1031
+ setup?: string[] | undefined;
1032
+ }[];
1033
+ notifications?: {
1034
+ email?: {
1035
+ smtp_host: string;
1036
+ smtp_user: string;
1037
+ smtp_pass: string;
1038
+ from: string;
1039
+ to: string[];
1040
+ on_failure?: boolean | undefined;
1041
+ on_success?: boolean | undefined;
1042
+ smtp_port?: number | undefined;
1043
+ smtp_secure?: boolean | undefined;
1044
+ subject_prefix?: string | undefined;
1045
+ } | undefined;
1046
+ slack?: {
1047
+ webhook_url: string;
1048
+ on_failure?: boolean | undefined;
1049
+ on_success?: boolean | undefined;
1050
+ channel?: string | undefined;
1051
+ mention_on_failure?: string[] | undefined;
1052
+ } | undefined;
1053
+ teams?: {
1054
+ webhook_url: string;
1055
+ on_failure?: boolean | undefined;
1056
+ on_success?: boolean | undefined;
1057
+ mention_on_failure?: string[] | undefined;
1058
+ } | undefined;
1059
+ } | undefined;
1060
+ integrations?: {
1061
+ jira?: {
1062
+ base_url: string;
1063
+ email: string;
1064
+ api_token: string;
1065
+ project_key: string;
1066
+ create_issues?: boolean | undefined;
1067
+ issue_type?: string | undefined;
1068
+ labels?: string[] | undefined;
1069
+ components?: string[] | undefined;
1070
+ } | undefined;
1071
+ } | undefined;
1072
+ }>;
1073
+ export type Step = z.infer<typeof StepSchema>;
1074
+ export type Rule = z.infer<typeof RuleSchema>;
1075
+ export type Auth = z.infer<typeof AuthSchema>;
1076
+ export type ScreenshotsConfig = z.infer<typeof ScreenshotsConfigSchema>;
1077
+ export type App = z.infer<typeof AppSchema>;
1078
+ export type OrganizationDefaults = z.infer<typeof OrganizationDefaultsSchema>;
1079
+ export type Organization = z.infer<typeof OrganizationSchema>;
1080
+ export type SlackConfig = z.infer<typeof SlackConfigSchema>;
1081
+ export type EmailConfig = z.infer<typeof EmailConfigSchema>;
1082
+ export type TeamsConfig = z.infer<typeof TeamsConfigSchema>;
1083
+ export type JiraConfig = z.infer<typeof JiraConfigSchema>;
1084
+ export type Notifications = z.infer<typeof NotificationsSchema>;
1085
+ export type Integrations = z.infer<typeof IntegrationsSchema>;
1086
+ export type QualyxConfig = z.infer<typeof QualyxConfigSchema>;
1087
+ export type TestStatus = 'passed' | 'failed' | 'skipped' | 'pending';
1088
+ export interface PerformanceMetrics {
1089
+ pageLoadTime?: number;
1090
+ domContentLoaded?: number;
1091
+ firstContentfulPaint?: number;
1092
+ largestContentfulPaint?: number;
1093
+ timeToInteractive?: number;
1094
+ totalRequestCount?: number;
1095
+ totalTransferSize?: number;
1096
+ }
1097
+ export interface StepResult {
1098
+ step: string;
1099
+ status: TestStatus;
1100
+ timestamp: string;
1101
+ duration: number;
1102
+ error?: string;
1103
+ screenshot?: string;
1104
+ metrics?: PerformanceMetrics;
1105
+ }
1106
+ export interface ValidationResult {
1107
+ validation: string;
1108
+ passed: boolean;
1109
+ details?: string;
1110
+ }
1111
+ export interface TestResult {
1112
+ ruleId: string;
1113
+ ruleName: string;
1114
+ appName: string;
1115
+ status: TestStatus;
1116
+ severity: string;
1117
+ startedAt: string;
1118
+ completedAt: string;
1119
+ duration: number;
1120
+ steps: StepResult[];
1121
+ validations: ValidationResult[];
1122
+ error?: string;
1123
+ screenshot?: string;
1124
+ retryCount: number;
1125
+ metrics?: PerformanceMetrics;
1126
+ }
1127
+ export interface RunResult {
1128
+ runId: string;
1129
+ startedAt: string;
1130
+ completedAt: string;
1131
+ duration: number;
1132
+ totalTests: number;
1133
+ passed: number;
1134
+ failed: number;
1135
+ skipped: number;
1136
+ results: TestResult[];
1137
+ environment: string;
1138
+ }
1139
+ export interface ClaudeRunnerOptions {
1140
+ timeout: number;
1141
+ headless: boolean;
1142
+ retries: number;
1143
+ dryRun: boolean;
1144
+ }
1145
+ export interface ClaudeResponse {
1146
+ status: TestStatus;
1147
+ steps: StepResult[];
1148
+ validations: ValidationResult[];
1149
+ error?: string;
1150
+ screenshot?: string;
1151
+ }
1152
+ export interface PromptContext {
1153
+ app: App;
1154
+ rule: Rule;
1155
+ environment?: string;
1156
+ credentials: Record<string, string>;
1157
+ previousAttempt?: {
1158
+ error: string;
1159
+ screenshot?: string;
1160
+ domSnippet?: string;
1161
+ };
1162
+ collectMetrics?: boolean;
1163
+ }
1164
+ export interface ReporterOptions {
1165
+ outputDir: string;
1166
+ verbose: boolean;
1167
+ }
1168
+ export interface StoredRun {
1169
+ id: string;
1170
+ config_hash: string;
1171
+ started_at: string;
1172
+ completed_at: string;
1173
+ duration: number;
1174
+ total_tests: number;
1175
+ passed: number;
1176
+ failed: number;
1177
+ skipped: number;
1178
+ environment: string;
1179
+ results_json: string;
1180
+ }
1181
+ export interface StoredTestResult {
1182
+ id: string;
1183
+ run_id: string;
1184
+ rule_id: string;
1185
+ rule_name: string;
1186
+ app_name: string;
1187
+ status: TestStatus;
1188
+ severity: string;
1189
+ started_at: string;
1190
+ completed_at: string;
1191
+ duration: number;
1192
+ error?: string;
1193
+ screenshot?: string;
1194
+ retry_count: number;
1195
+ steps_json: string;
1196
+ validations_json: string;
1197
+ }
1198
+ export interface RunOptions {
1199
+ app?: string;
1200
+ rule?: string;
1201
+ environment?: string;
1202
+ dryRun?: boolean;
1203
+ headed?: boolean;
1204
+ verbose?: boolean;
1205
+ retries?: number;
1206
+ timeout?: number;
1207
+ parallel?: boolean;
1208
+ maxParallel?: number;
1209
+ collectMetrics?: boolean;
1210
+ }
1211
+ export interface ListOptions {
1212
+ format?: 'table' | 'json';
1213
+ }
1214
+ export interface ValidateOptions {
1215
+ strict?: boolean;
1216
+ }
1217
+ export interface ScheduledRule {
1218
+ appName: string;
1219
+ ruleId: string;
1220
+ ruleName: string;
1221
+ schedule: string;
1222
+ severity: string;
1223
+ }
1224
+ export interface ScheduleExportOptions {
1225
+ format: 'cron' | 'github';
1226
+ projectPath?: string;
1227
+ outputFile?: string;
1228
+ }
1229
+ export interface SlackNotificationPayload {
1230
+ runResult: RunResult;
1231
+ reportUrl?: string;
1232
+ config: QualyxConfig;
1233
+ }
1234
+ export interface JiraIssuePayload {
1235
+ testResult: TestResult;
1236
+ runId: string;
1237
+ config: QualyxConfig;
1238
+ }
1239
+ //# sourceMappingURL=index.d.ts.map