@nuxtseo/protocol 0.1.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 (44) hide show
  1. package/dist/analytics-codecs/analytics-row.d.ts +265 -0
  2. package/dist/analytics-codecs/analytics-row.js +175 -0
  3. package/dist/analytics-codecs/analytics-web-vitals.d.ts +57 -0
  4. package/dist/analytics-codecs/analytics-web-vitals.js +76 -0
  5. package/dist/analytics-codecs/capabilities.d.ts +35 -0
  6. package/dist/analytics-codecs/capabilities.js +76 -0
  7. package/dist/analytics-codecs/index.d.ts +3 -0
  8. package/dist/analytics-codecs/index.js +3 -0
  9. package/dist/cli-pairing.d.ts +67 -0
  10. package/dist/cli-pairing.js +52 -0
  11. package/dist/index.d.ts +1 -0
  12. package/dist/index.js +1 -0
  13. package/dist/v1/account.d.ts +715 -0
  14. package/dist/v1/account.js +123 -0
  15. package/dist/v1/actions.d.ts +2591 -0
  16. package/dist/v1/actions.js +460 -0
  17. package/dist/v1/analytics.d.ts +6145 -0
  18. package/dist/v1/analytics.js +296 -0
  19. package/dist/v1/audit.d.ts +4053 -0
  20. package/dist/v1/audit.js +609 -0
  21. package/dist/v1/backlinks.d.ts +1002 -0
  22. package/dist/v1/backlinks.js +239 -0
  23. package/dist/v1/content.d.ts +2745 -0
  24. package/dist/v1/content.js +326 -0
  25. package/dist/v1/core.d.ts +301 -0
  26. package/dist/v1/core.js +333 -0
  27. package/dist/v1/documents.d.ts +4 -0
  28. package/dist/v1/documents.js +216 -0
  29. package/dist/v1/gsc.d.ts +5172 -0
  30. package/dist/v1/gsc.js +583 -0
  31. package/dist/v1/index.d.ts +49 -0
  32. package/dist/v1/index.js +52 -0
  33. package/dist/v1/pages.d.ts +1404 -0
  34. package/dist/v1/pages.js +287 -0
  35. package/dist/v1/performance.d.ts +1379 -0
  36. package/dist/v1/performance.js +198 -0
  37. package/dist/v1/research.d.ts +1173 -0
  38. package/dist/v1/research.js +174 -0
  39. package/dist/v1/sitemaps.d.ts +1506 -0
  40. package/dist/v1/sitemaps.js +199 -0
  41. package/dist/v1/sites.d.ts +591 -0
  42. package/dist/v1/sites.js +101 -0
  43. package/generated/openapi.v1.json +1 -0
  44. package/package.json +131 -0
@@ -0,0 +1,4053 @@
1
+ import type { z } from 'zod';
2
+ export declare const auditSiteParamsSchema: z.ZodObject<{
3
+ siteId: z.ZodString;
4
+ }, z.core.$strict>;
5
+ export declare const auditChangesQuerySchema: z.ZodObject<{
6
+ from: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
7
+ to: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
8
+ }, z.core.$strict>;
9
+ export declare const auditChangeExampleSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
10
+ readonly url: z.ZodString;
11
+ readonly path: z.ZodString;
12
+ }, z.core.$strip>, z.ZodObject<{
13
+ readonly url: z.ZodString;
14
+ readonly path: z.ZodString;
15
+ }, z.core.$strip>>;
16
+ export declare const auditChangeCheckSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
17
+ readonly key: z.ZodString;
18
+ readonly label: z.ZodString;
19
+ readonly severity: z.ZodEnum<{
20
+ error: "error";
21
+ notice: "notice";
22
+ warning: "warning";
23
+ }>;
24
+ readonly subject: z.ZodEnum<{
25
+ "link-target": "link-target";
26
+ page: "page";
27
+ }>;
28
+ readonly pages: z.ZodNumber;
29
+ }, z.core.$strip>, z.ZodObject<{
30
+ readonly key: z.ZodString;
31
+ readonly label: z.ZodString;
32
+ readonly severity: z.ZodEnum<{
33
+ error: "error";
34
+ notice: "notice";
35
+ warning: "warning";
36
+ }>;
37
+ readonly subject: z.ZodEnum<{
38
+ "link-target": "link-target";
39
+ page: "page";
40
+ }>;
41
+ readonly pages: z.ZodNumber;
42
+ }, z.core.$strip>>;
43
+ export declare const auditChangeGroupSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
44
+ readonly key: z.ZodString;
45
+ readonly label: z.ZodString;
46
+ readonly severity: z.ZodEnum<{
47
+ error: "error";
48
+ notice: "notice";
49
+ warning: "warning";
50
+ }>;
51
+ readonly subject: z.ZodEnum<{
52
+ "link-target": "link-target";
53
+ page: "page";
54
+ }>;
55
+ readonly pages: z.ZodNumber;
56
+ readonly examples: z.ZodArray<z.ZodObject<{
57
+ readonly url: z.ZodString;
58
+ readonly path: z.ZodString;
59
+ }, z.core.$strip>>;
60
+ readonly checks: z.ZodArray<z.ZodObject<{
61
+ readonly key: z.ZodString;
62
+ readonly label: z.ZodString;
63
+ readonly severity: z.ZodEnum<{
64
+ error: "error";
65
+ notice: "notice";
66
+ warning: "warning";
67
+ }>;
68
+ readonly subject: z.ZodEnum<{
69
+ "link-target": "link-target";
70
+ page: "page";
71
+ }>;
72
+ readonly pages: z.ZodNumber;
73
+ }, z.core.$strip>>;
74
+ readonly spike: z.ZodBoolean;
75
+ }, z.core.$strip>, z.ZodObject<{
76
+ readonly key: z.ZodString;
77
+ readonly label: z.ZodString;
78
+ readonly severity: z.ZodEnum<{
79
+ error: "error";
80
+ notice: "notice";
81
+ warning: "warning";
82
+ }>;
83
+ readonly subject: z.ZodEnum<{
84
+ "link-target": "link-target";
85
+ page: "page";
86
+ }>;
87
+ readonly pages: z.ZodNumber;
88
+ readonly examples: z.ZodArray<z.ZodObject<{
89
+ readonly url: z.ZodString;
90
+ readonly path: z.ZodString;
91
+ }, z.core.$strip>>;
92
+ readonly checks: z.ZodArray<z.ZodObject<{
93
+ readonly key: z.ZodString;
94
+ readonly label: z.ZodString;
95
+ readonly severity: z.ZodEnum<{
96
+ error: "error";
97
+ notice: "notice";
98
+ warning: "warning";
99
+ }>;
100
+ readonly subject: z.ZodEnum<{
101
+ "link-target": "link-target";
102
+ page: "page";
103
+ }>;
104
+ readonly pages: z.ZodNumber;
105
+ }, z.core.$strip>>;
106
+ readonly spike: z.ZodBoolean;
107
+ }, z.core.$strip>>;
108
+ export declare const auditChangeFacetSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
109
+ readonly groups: z.ZodArray<z.ZodObject<{
110
+ readonly key: z.ZodString;
111
+ readonly label: z.ZodString;
112
+ readonly severity: z.ZodEnum<{
113
+ error: "error";
114
+ notice: "notice";
115
+ warning: "warning";
116
+ }>;
117
+ readonly subject: z.ZodEnum<{
118
+ "link-target": "link-target";
119
+ page: "page";
120
+ }>;
121
+ readonly pages: z.ZodNumber;
122
+ readonly examples: z.ZodArray<z.ZodObject<{
123
+ readonly url: z.ZodString;
124
+ readonly path: z.ZodString;
125
+ }, z.core.$strip>>;
126
+ readonly checks: z.ZodArray<z.ZodObject<{
127
+ readonly key: z.ZodString;
128
+ readonly label: z.ZodString;
129
+ readonly severity: z.ZodEnum<{
130
+ error: "error";
131
+ notice: "notice";
132
+ warning: "warning";
133
+ }>;
134
+ readonly subject: z.ZodEnum<{
135
+ "link-target": "link-target";
136
+ page: "page";
137
+ }>;
138
+ readonly pages: z.ZodNumber;
139
+ }, z.core.$strip>>;
140
+ readonly spike: z.ZodBoolean;
141
+ }, z.core.$strip>>;
142
+ readonly pages: z.ZodNumber;
143
+ readonly groupTotal: z.ZodNumber;
144
+ readonly checkTotal: z.ZodNumber;
145
+ }, z.core.$strip>, z.ZodObject<{
146
+ readonly groups: z.ZodArray<z.ZodObject<{
147
+ readonly key: z.ZodString;
148
+ readonly label: z.ZodString;
149
+ readonly severity: z.ZodEnum<{
150
+ error: "error";
151
+ notice: "notice";
152
+ warning: "warning";
153
+ }>;
154
+ readonly subject: z.ZodEnum<{
155
+ "link-target": "link-target";
156
+ page: "page";
157
+ }>;
158
+ readonly pages: z.ZodNumber;
159
+ readonly examples: z.ZodArray<z.ZodObject<{
160
+ readonly url: z.ZodString;
161
+ readonly path: z.ZodString;
162
+ }, z.core.$strip>>;
163
+ readonly checks: z.ZodArray<z.ZodObject<{
164
+ readonly key: z.ZodString;
165
+ readonly label: z.ZodString;
166
+ readonly severity: z.ZodEnum<{
167
+ error: "error";
168
+ notice: "notice";
169
+ warning: "warning";
170
+ }>;
171
+ readonly subject: z.ZodEnum<{
172
+ "link-target": "link-target";
173
+ page: "page";
174
+ }>;
175
+ readonly pages: z.ZodNumber;
176
+ }, z.core.$strip>>;
177
+ readonly spike: z.ZodBoolean;
178
+ }, z.core.$strip>>;
179
+ readonly pages: z.ZodNumber;
180
+ readonly groupTotal: z.ZodNumber;
181
+ readonly checkTotal: z.ZodNumber;
182
+ }, z.core.$strip>>;
183
+ export declare const auditChangeGenerationSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
184
+ readonly generation: z.ZodNumber;
185
+ readonly buildId: z.ZodNullable<z.ZodString>;
186
+ readonly completedAt: z.ZodNullable<z.ZodString>;
187
+ }, z.core.$strip>, z.ZodObject<{
188
+ readonly generation: z.ZodNumber;
189
+ readonly buildId: z.ZodNullable<z.ZodString>;
190
+ readonly completedAt: z.ZodNullable<z.ZodString>;
191
+ }, z.core.$strip>>;
192
+ export declare const auditRegressionHistoryPointSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
193
+ readonly generation: z.ZodNumber;
194
+ readonly buildId: z.ZodNullable<z.ZodString>;
195
+ readonly completedAt: z.ZodNullable<z.ZodString>;
196
+ readonly regressedUrls: z.ZodNumber;
197
+ }, z.core.$strip>, z.ZodObject<{
198
+ readonly generation: z.ZodNumber;
199
+ readonly buildId: z.ZodNullable<z.ZodString>;
200
+ readonly completedAt: z.ZodNullable<z.ZodString>;
201
+ readonly regressedUrls: z.ZodNumber;
202
+ }, z.core.$strip>>;
203
+ export declare const auditChangesDataSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
204
+ readonly state: z.ZodEnum<{
205
+ changes: "changes";
206
+ "no-baseline": "no-baseline";
207
+ "no-changes": "no-changes";
208
+ "no-crawl": "no-crawl";
209
+ }>;
210
+ readonly verdict: z.ZodString;
211
+ readonly window: z.ZodObject<{
212
+ observedAt: z.ZodNullable<z.ZodString>;
213
+ comparedTo: z.ZodNullable<z.ZodString>;
214
+ }, z.core.$strict>;
215
+ readonly regressions: z.ZodObject<{
216
+ readonly groups: z.ZodArray<z.ZodObject<{
217
+ readonly key: z.ZodString;
218
+ readonly label: z.ZodString;
219
+ readonly severity: z.ZodEnum<{
220
+ error: "error";
221
+ notice: "notice";
222
+ warning: "warning";
223
+ }>;
224
+ readonly subject: z.ZodEnum<{
225
+ "link-target": "link-target";
226
+ page: "page";
227
+ }>;
228
+ readonly pages: z.ZodNumber;
229
+ readonly examples: z.ZodArray<z.ZodObject<{
230
+ readonly url: z.ZodString;
231
+ readonly path: z.ZodString;
232
+ }, z.core.$strip>>;
233
+ readonly checks: z.ZodArray<z.ZodObject<{
234
+ readonly key: z.ZodString;
235
+ readonly label: z.ZodString;
236
+ readonly severity: z.ZodEnum<{
237
+ error: "error";
238
+ notice: "notice";
239
+ warning: "warning";
240
+ }>;
241
+ readonly subject: z.ZodEnum<{
242
+ "link-target": "link-target";
243
+ page: "page";
244
+ }>;
245
+ readonly pages: z.ZodNumber;
246
+ }, z.core.$strip>>;
247
+ readonly spike: z.ZodBoolean;
248
+ }, z.core.$strip>>;
249
+ readonly pages: z.ZodNumber;
250
+ readonly groupTotal: z.ZodNumber;
251
+ readonly checkTotal: z.ZodNumber;
252
+ }, z.core.$strip>;
253
+ readonly resolved: z.ZodObject<{
254
+ readonly groups: z.ZodArray<z.ZodObject<{
255
+ readonly key: z.ZodString;
256
+ readonly label: z.ZodString;
257
+ readonly severity: z.ZodEnum<{
258
+ error: "error";
259
+ notice: "notice";
260
+ warning: "warning";
261
+ }>;
262
+ readonly subject: z.ZodEnum<{
263
+ "link-target": "link-target";
264
+ page: "page";
265
+ }>;
266
+ readonly pages: z.ZodNumber;
267
+ readonly examples: z.ZodArray<z.ZodObject<{
268
+ readonly url: z.ZodString;
269
+ readonly path: z.ZodString;
270
+ }, z.core.$strip>>;
271
+ readonly checks: z.ZodArray<z.ZodObject<{
272
+ readonly key: z.ZodString;
273
+ readonly label: z.ZodString;
274
+ readonly severity: z.ZodEnum<{
275
+ error: "error";
276
+ notice: "notice";
277
+ warning: "warning";
278
+ }>;
279
+ readonly subject: z.ZodEnum<{
280
+ "link-target": "link-target";
281
+ page: "page";
282
+ }>;
283
+ readonly pages: z.ZodNumber;
284
+ }, z.core.$strip>>;
285
+ readonly spike: z.ZodBoolean;
286
+ }, z.core.$strip>>;
287
+ readonly pages: z.ZodNumber;
288
+ readonly groupTotal: z.ZodNumber;
289
+ readonly checkTotal: z.ZodNumber;
290
+ }, z.core.$strip>;
291
+ readonly pages: z.ZodObject<{
292
+ readonly groups: z.ZodArray<z.ZodObject<{
293
+ readonly key: z.ZodString;
294
+ readonly label: z.ZodString;
295
+ readonly severity: z.ZodEnum<{
296
+ error: "error";
297
+ notice: "notice";
298
+ warning: "warning";
299
+ }>;
300
+ readonly subject: z.ZodEnum<{
301
+ "link-target": "link-target";
302
+ page: "page";
303
+ }>;
304
+ readonly pages: z.ZodNumber;
305
+ readonly examples: z.ZodArray<z.ZodObject<{
306
+ readonly url: z.ZodString;
307
+ readonly path: z.ZodString;
308
+ }, z.core.$strip>>;
309
+ readonly checks: z.ZodArray<z.ZodObject<{
310
+ readonly key: z.ZodString;
311
+ readonly label: z.ZodString;
312
+ readonly severity: z.ZodEnum<{
313
+ error: "error";
314
+ notice: "notice";
315
+ warning: "warning";
316
+ }>;
317
+ readonly subject: z.ZodEnum<{
318
+ "link-target": "link-target";
319
+ page: "page";
320
+ }>;
321
+ readonly pages: z.ZodNumber;
322
+ }, z.core.$strip>>;
323
+ readonly spike: z.ZodBoolean;
324
+ }, z.core.$strip>>;
325
+ readonly pages: z.ZodNumber;
326
+ readonly groupTotal: z.ZodNumber;
327
+ readonly checkTotal: z.ZodNumber;
328
+ }, z.core.$strip>;
329
+ readonly sampled: z.ZodBoolean;
330
+ readonly generations: z.ZodArray<z.ZodObject<{
331
+ readonly generation: z.ZodNumber;
332
+ readonly buildId: z.ZodNullable<z.ZodString>;
333
+ readonly completedAt: z.ZodNullable<z.ZodString>;
334
+ }, z.core.$strip>>;
335
+ readonly regressionHistory: z.ZodArray<z.ZodObject<{
336
+ readonly generation: z.ZodNumber;
337
+ readonly buildId: z.ZodNullable<z.ZodString>;
338
+ readonly completedAt: z.ZodNullable<z.ZodString>;
339
+ readonly regressedUrls: z.ZodNumber;
340
+ }, z.core.$strip>>;
341
+ readonly comparison: z.ZodNullable<z.ZodObject<{
342
+ from: z.ZodObject<{
343
+ readonly generation: z.ZodNumber;
344
+ readonly buildId: z.ZodNullable<z.ZodString>;
345
+ readonly completedAt: z.ZodNullable<z.ZodString>;
346
+ }, z.core.$strip>;
347
+ to: z.ZodObject<{
348
+ readonly generation: z.ZodNumber;
349
+ readonly buildId: z.ZodNullable<z.ZodString>;
350
+ readonly completedAt: z.ZodNullable<z.ZodString>;
351
+ }, z.core.$strip>;
352
+ }, z.core.$strict>>;
353
+ readonly clicksAtRisk: z.ZodNullable<z.ZodNumber>;
354
+ }, z.core.$strip>, z.ZodObject<{
355
+ readonly state: z.ZodEnum<{
356
+ changes: "changes";
357
+ "no-baseline": "no-baseline";
358
+ "no-changes": "no-changes";
359
+ "no-crawl": "no-crawl";
360
+ }>;
361
+ readonly verdict: z.ZodString;
362
+ readonly window: z.ZodObject<{
363
+ observedAt: z.ZodNullable<z.ZodString>;
364
+ comparedTo: z.ZodNullable<z.ZodString>;
365
+ }, z.core.$loose>;
366
+ readonly regressions: z.ZodObject<{
367
+ readonly groups: z.ZodArray<z.ZodObject<{
368
+ readonly key: z.ZodString;
369
+ readonly label: z.ZodString;
370
+ readonly severity: z.ZodEnum<{
371
+ error: "error";
372
+ notice: "notice";
373
+ warning: "warning";
374
+ }>;
375
+ readonly subject: z.ZodEnum<{
376
+ "link-target": "link-target";
377
+ page: "page";
378
+ }>;
379
+ readonly pages: z.ZodNumber;
380
+ readonly examples: z.ZodArray<z.ZodObject<{
381
+ readonly url: z.ZodString;
382
+ readonly path: z.ZodString;
383
+ }, z.core.$strip>>;
384
+ readonly checks: z.ZodArray<z.ZodObject<{
385
+ readonly key: z.ZodString;
386
+ readonly label: z.ZodString;
387
+ readonly severity: z.ZodEnum<{
388
+ error: "error";
389
+ notice: "notice";
390
+ warning: "warning";
391
+ }>;
392
+ readonly subject: z.ZodEnum<{
393
+ "link-target": "link-target";
394
+ page: "page";
395
+ }>;
396
+ readonly pages: z.ZodNumber;
397
+ }, z.core.$strip>>;
398
+ readonly spike: z.ZodBoolean;
399
+ }, z.core.$strip>>;
400
+ readonly pages: z.ZodNumber;
401
+ readonly groupTotal: z.ZodNumber;
402
+ readonly checkTotal: z.ZodNumber;
403
+ }, z.core.$strip>;
404
+ readonly resolved: z.ZodObject<{
405
+ readonly groups: z.ZodArray<z.ZodObject<{
406
+ readonly key: z.ZodString;
407
+ readonly label: z.ZodString;
408
+ readonly severity: z.ZodEnum<{
409
+ error: "error";
410
+ notice: "notice";
411
+ warning: "warning";
412
+ }>;
413
+ readonly subject: z.ZodEnum<{
414
+ "link-target": "link-target";
415
+ page: "page";
416
+ }>;
417
+ readonly pages: z.ZodNumber;
418
+ readonly examples: z.ZodArray<z.ZodObject<{
419
+ readonly url: z.ZodString;
420
+ readonly path: z.ZodString;
421
+ }, z.core.$strip>>;
422
+ readonly checks: z.ZodArray<z.ZodObject<{
423
+ readonly key: z.ZodString;
424
+ readonly label: z.ZodString;
425
+ readonly severity: z.ZodEnum<{
426
+ error: "error";
427
+ notice: "notice";
428
+ warning: "warning";
429
+ }>;
430
+ readonly subject: z.ZodEnum<{
431
+ "link-target": "link-target";
432
+ page: "page";
433
+ }>;
434
+ readonly pages: z.ZodNumber;
435
+ }, z.core.$strip>>;
436
+ readonly spike: z.ZodBoolean;
437
+ }, z.core.$strip>>;
438
+ readonly pages: z.ZodNumber;
439
+ readonly groupTotal: z.ZodNumber;
440
+ readonly checkTotal: z.ZodNumber;
441
+ }, z.core.$strip>;
442
+ readonly pages: z.ZodObject<{
443
+ readonly groups: z.ZodArray<z.ZodObject<{
444
+ readonly key: z.ZodString;
445
+ readonly label: z.ZodString;
446
+ readonly severity: z.ZodEnum<{
447
+ error: "error";
448
+ notice: "notice";
449
+ warning: "warning";
450
+ }>;
451
+ readonly subject: z.ZodEnum<{
452
+ "link-target": "link-target";
453
+ page: "page";
454
+ }>;
455
+ readonly pages: z.ZodNumber;
456
+ readonly examples: z.ZodArray<z.ZodObject<{
457
+ readonly url: z.ZodString;
458
+ readonly path: z.ZodString;
459
+ }, z.core.$strip>>;
460
+ readonly checks: z.ZodArray<z.ZodObject<{
461
+ readonly key: z.ZodString;
462
+ readonly label: z.ZodString;
463
+ readonly severity: z.ZodEnum<{
464
+ error: "error";
465
+ notice: "notice";
466
+ warning: "warning";
467
+ }>;
468
+ readonly subject: z.ZodEnum<{
469
+ "link-target": "link-target";
470
+ page: "page";
471
+ }>;
472
+ readonly pages: z.ZodNumber;
473
+ }, z.core.$strip>>;
474
+ readonly spike: z.ZodBoolean;
475
+ }, z.core.$strip>>;
476
+ readonly pages: z.ZodNumber;
477
+ readonly groupTotal: z.ZodNumber;
478
+ readonly checkTotal: z.ZodNumber;
479
+ }, z.core.$strip>;
480
+ readonly sampled: z.ZodBoolean;
481
+ readonly generations: z.ZodArray<z.ZodObject<{
482
+ readonly generation: z.ZodNumber;
483
+ readonly buildId: z.ZodNullable<z.ZodString>;
484
+ readonly completedAt: z.ZodNullable<z.ZodString>;
485
+ }, z.core.$strip>>;
486
+ readonly regressionHistory: z.ZodArray<z.ZodObject<{
487
+ readonly generation: z.ZodNumber;
488
+ readonly buildId: z.ZodNullable<z.ZodString>;
489
+ readonly completedAt: z.ZodNullable<z.ZodString>;
490
+ readonly regressedUrls: z.ZodNumber;
491
+ }, z.core.$strip>>;
492
+ readonly comparison: z.ZodNullable<z.ZodObject<{
493
+ from: z.ZodObject<{
494
+ readonly generation: z.ZodNumber;
495
+ readonly buildId: z.ZodNullable<z.ZodString>;
496
+ readonly completedAt: z.ZodNullable<z.ZodString>;
497
+ }, z.core.$strip>;
498
+ to: z.ZodObject<{
499
+ readonly generation: z.ZodNumber;
500
+ readonly buildId: z.ZodNullable<z.ZodString>;
501
+ readonly completedAt: z.ZodNullable<z.ZodString>;
502
+ }, z.core.$strip>;
503
+ }, z.core.$loose>>;
504
+ readonly clicksAtRisk: z.ZodNullable<z.ZodNumber>;
505
+ }, z.core.$strip>>;
506
+ export declare const auditChangesResponseSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
507
+ data: z.ZodObject<{
508
+ readonly state: z.ZodEnum<{
509
+ changes: "changes";
510
+ "no-baseline": "no-baseline";
511
+ "no-changes": "no-changes";
512
+ "no-crawl": "no-crawl";
513
+ }>;
514
+ readonly verdict: z.ZodString;
515
+ readonly window: z.ZodObject<{
516
+ observedAt: z.ZodNullable<z.ZodString>;
517
+ comparedTo: z.ZodNullable<z.ZodString>;
518
+ }, z.core.$strict>;
519
+ readonly regressions: z.ZodObject<{
520
+ readonly groups: z.ZodArray<z.ZodObject<{
521
+ readonly key: z.ZodString;
522
+ readonly label: z.ZodString;
523
+ readonly severity: z.ZodEnum<{
524
+ error: "error";
525
+ notice: "notice";
526
+ warning: "warning";
527
+ }>;
528
+ readonly subject: z.ZodEnum<{
529
+ "link-target": "link-target";
530
+ page: "page";
531
+ }>;
532
+ readonly pages: z.ZodNumber;
533
+ readonly examples: z.ZodArray<z.ZodObject<{
534
+ readonly url: z.ZodString;
535
+ readonly path: z.ZodString;
536
+ }, z.core.$strip>>;
537
+ readonly checks: z.ZodArray<z.ZodObject<{
538
+ readonly key: z.ZodString;
539
+ readonly label: z.ZodString;
540
+ readonly severity: z.ZodEnum<{
541
+ error: "error";
542
+ notice: "notice";
543
+ warning: "warning";
544
+ }>;
545
+ readonly subject: z.ZodEnum<{
546
+ "link-target": "link-target";
547
+ page: "page";
548
+ }>;
549
+ readonly pages: z.ZodNumber;
550
+ }, z.core.$strip>>;
551
+ readonly spike: z.ZodBoolean;
552
+ }, z.core.$strip>>;
553
+ readonly pages: z.ZodNumber;
554
+ readonly groupTotal: z.ZodNumber;
555
+ readonly checkTotal: z.ZodNumber;
556
+ }, z.core.$strip>;
557
+ readonly resolved: z.ZodObject<{
558
+ readonly groups: z.ZodArray<z.ZodObject<{
559
+ readonly key: z.ZodString;
560
+ readonly label: z.ZodString;
561
+ readonly severity: z.ZodEnum<{
562
+ error: "error";
563
+ notice: "notice";
564
+ warning: "warning";
565
+ }>;
566
+ readonly subject: z.ZodEnum<{
567
+ "link-target": "link-target";
568
+ page: "page";
569
+ }>;
570
+ readonly pages: z.ZodNumber;
571
+ readonly examples: z.ZodArray<z.ZodObject<{
572
+ readonly url: z.ZodString;
573
+ readonly path: z.ZodString;
574
+ }, z.core.$strip>>;
575
+ readonly checks: z.ZodArray<z.ZodObject<{
576
+ readonly key: z.ZodString;
577
+ readonly label: z.ZodString;
578
+ readonly severity: z.ZodEnum<{
579
+ error: "error";
580
+ notice: "notice";
581
+ warning: "warning";
582
+ }>;
583
+ readonly subject: z.ZodEnum<{
584
+ "link-target": "link-target";
585
+ page: "page";
586
+ }>;
587
+ readonly pages: z.ZodNumber;
588
+ }, z.core.$strip>>;
589
+ readonly spike: z.ZodBoolean;
590
+ }, z.core.$strip>>;
591
+ readonly pages: z.ZodNumber;
592
+ readonly groupTotal: z.ZodNumber;
593
+ readonly checkTotal: z.ZodNumber;
594
+ }, z.core.$strip>;
595
+ readonly pages: z.ZodObject<{
596
+ readonly groups: z.ZodArray<z.ZodObject<{
597
+ readonly key: z.ZodString;
598
+ readonly label: z.ZodString;
599
+ readonly severity: z.ZodEnum<{
600
+ error: "error";
601
+ notice: "notice";
602
+ warning: "warning";
603
+ }>;
604
+ readonly subject: z.ZodEnum<{
605
+ "link-target": "link-target";
606
+ page: "page";
607
+ }>;
608
+ readonly pages: z.ZodNumber;
609
+ readonly examples: z.ZodArray<z.ZodObject<{
610
+ readonly url: z.ZodString;
611
+ readonly path: z.ZodString;
612
+ }, z.core.$strip>>;
613
+ readonly checks: z.ZodArray<z.ZodObject<{
614
+ readonly key: z.ZodString;
615
+ readonly label: z.ZodString;
616
+ readonly severity: z.ZodEnum<{
617
+ error: "error";
618
+ notice: "notice";
619
+ warning: "warning";
620
+ }>;
621
+ readonly subject: z.ZodEnum<{
622
+ "link-target": "link-target";
623
+ page: "page";
624
+ }>;
625
+ readonly pages: z.ZodNumber;
626
+ }, z.core.$strip>>;
627
+ readonly spike: z.ZodBoolean;
628
+ }, z.core.$strip>>;
629
+ readonly pages: z.ZodNumber;
630
+ readonly groupTotal: z.ZodNumber;
631
+ readonly checkTotal: z.ZodNumber;
632
+ }, z.core.$strip>;
633
+ readonly sampled: z.ZodBoolean;
634
+ readonly generations: z.ZodArray<z.ZodObject<{
635
+ readonly generation: z.ZodNumber;
636
+ readonly buildId: z.ZodNullable<z.ZodString>;
637
+ readonly completedAt: z.ZodNullable<z.ZodString>;
638
+ }, z.core.$strip>>;
639
+ readonly regressionHistory: z.ZodArray<z.ZodObject<{
640
+ readonly generation: z.ZodNumber;
641
+ readonly buildId: z.ZodNullable<z.ZodString>;
642
+ readonly completedAt: z.ZodNullable<z.ZodString>;
643
+ readonly regressedUrls: z.ZodNumber;
644
+ }, z.core.$strip>>;
645
+ readonly comparison: z.ZodNullable<z.ZodObject<{
646
+ from: z.ZodObject<{
647
+ readonly generation: z.ZodNumber;
648
+ readonly buildId: z.ZodNullable<z.ZodString>;
649
+ readonly completedAt: z.ZodNullable<z.ZodString>;
650
+ }, z.core.$strip>;
651
+ to: z.ZodObject<{
652
+ readonly generation: z.ZodNumber;
653
+ readonly buildId: z.ZodNullable<z.ZodString>;
654
+ readonly completedAt: z.ZodNullable<z.ZodString>;
655
+ }, z.core.$strip>;
656
+ }, z.core.$strict>>;
657
+ readonly clicksAtRisk: z.ZodNullable<z.ZodNumber>;
658
+ }, z.core.$strip>;
659
+ meta: z.ZodObject<{
660
+ requestId: z.ZodString;
661
+ version: z.ZodLiteral<"1.0">;
662
+ }, z.core.$strict>;
663
+ }, z.core.$strip>, z.ZodObject<{
664
+ data: z.ZodObject<{
665
+ readonly state: z.ZodEnum<{
666
+ changes: "changes";
667
+ "no-baseline": "no-baseline";
668
+ "no-changes": "no-changes";
669
+ "no-crawl": "no-crawl";
670
+ }>;
671
+ readonly verdict: z.ZodString;
672
+ readonly window: z.ZodObject<{
673
+ observedAt: z.ZodNullable<z.ZodString>;
674
+ comparedTo: z.ZodNullable<z.ZodString>;
675
+ }, z.core.$loose>;
676
+ readonly regressions: z.ZodObject<{
677
+ readonly groups: z.ZodArray<z.ZodObject<{
678
+ readonly key: z.ZodString;
679
+ readonly label: z.ZodString;
680
+ readonly severity: z.ZodEnum<{
681
+ error: "error";
682
+ notice: "notice";
683
+ warning: "warning";
684
+ }>;
685
+ readonly subject: z.ZodEnum<{
686
+ "link-target": "link-target";
687
+ page: "page";
688
+ }>;
689
+ readonly pages: z.ZodNumber;
690
+ readonly examples: z.ZodArray<z.ZodObject<{
691
+ readonly url: z.ZodString;
692
+ readonly path: z.ZodString;
693
+ }, z.core.$strip>>;
694
+ readonly checks: z.ZodArray<z.ZodObject<{
695
+ readonly key: z.ZodString;
696
+ readonly label: z.ZodString;
697
+ readonly severity: z.ZodEnum<{
698
+ error: "error";
699
+ notice: "notice";
700
+ warning: "warning";
701
+ }>;
702
+ readonly subject: z.ZodEnum<{
703
+ "link-target": "link-target";
704
+ page: "page";
705
+ }>;
706
+ readonly pages: z.ZodNumber;
707
+ }, z.core.$strip>>;
708
+ readonly spike: z.ZodBoolean;
709
+ }, z.core.$strip>>;
710
+ readonly pages: z.ZodNumber;
711
+ readonly groupTotal: z.ZodNumber;
712
+ readonly checkTotal: z.ZodNumber;
713
+ }, z.core.$strip>;
714
+ readonly resolved: z.ZodObject<{
715
+ readonly groups: z.ZodArray<z.ZodObject<{
716
+ readonly key: z.ZodString;
717
+ readonly label: z.ZodString;
718
+ readonly severity: z.ZodEnum<{
719
+ error: "error";
720
+ notice: "notice";
721
+ warning: "warning";
722
+ }>;
723
+ readonly subject: z.ZodEnum<{
724
+ "link-target": "link-target";
725
+ page: "page";
726
+ }>;
727
+ readonly pages: z.ZodNumber;
728
+ readonly examples: z.ZodArray<z.ZodObject<{
729
+ readonly url: z.ZodString;
730
+ readonly path: z.ZodString;
731
+ }, z.core.$strip>>;
732
+ readonly checks: z.ZodArray<z.ZodObject<{
733
+ readonly key: z.ZodString;
734
+ readonly label: z.ZodString;
735
+ readonly severity: z.ZodEnum<{
736
+ error: "error";
737
+ notice: "notice";
738
+ warning: "warning";
739
+ }>;
740
+ readonly subject: z.ZodEnum<{
741
+ "link-target": "link-target";
742
+ page: "page";
743
+ }>;
744
+ readonly pages: z.ZodNumber;
745
+ }, z.core.$strip>>;
746
+ readonly spike: z.ZodBoolean;
747
+ }, z.core.$strip>>;
748
+ readonly pages: z.ZodNumber;
749
+ readonly groupTotal: z.ZodNumber;
750
+ readonly checkTotal: z.ZodNumber;
751
+ }, z.core.$strip>;
752
+ readonly pages: z.ZodObject<{
753
+ readonly groups: z.ZodArray<z.ZodObject<{
754
+ readonly key: z.ZodString;
755
+ readonly label: z.ZodString;
756
+ readonly severity: z.ZodEnum<{
757
+ error: "error";
758
+ notice: "notice";
759
+ warning: "warning";
760
+ }>;
761
+ readonly subject: z.ZodEnum<{
762
+ "link-target": "link-target";
763
+ page: "page";
764
+ }>;
765
+ readonly pages: z.ZodNumber;
766
+ readonly examples: z.ZodArray<z.ZodObject<{
767
+ readonly url: z.ZodString;
768
+ readonly path: z.ZodString;
769
+ }, z.core.$strip>>;
770
+ readonly checks: z.ZodArray<z.ZodObject<{
771
+ readonly key: z.ZodString;
772
+ readonly label: z.ZodString;
773
+ readonly severity: z.ZodEnum<{
774
+ error: "error";
775
+ notice: "notice";
776
+ warning: "warning";
777
+ }>;
778
+ readonly subject: z.ZodEnum<{
779
+ "link-target": "link-target";
780
+ page: "page";
781
+ }>;
782
+ readonly pages: z.ZodNumber;
783
+ }, z.core.$strip>>;
784
+ readonly spike: z.ZodBoolean;
785
+ }, z.core.$strip>>;
786
+ readonly pages: z.ZodNumber;
787
+ readonly groupTotal: z.ZodNumber;
788
+ readonly checkTotal: z.ZodNumber;
789
+ }, z.core.$strip>;
790
+ readonly sampled: z.ZodBoolean;
791
+ readonly generations: z.ZodArray<z.ZodObject<{
792
+ readonly generation: z.ZodNumber;
793
+ readonly buildId: z.ZodNullable<z.ZodString>;
794
+ readonly completedAt: z.ZodNullable<z.ZodString>;
795
+ }, z.core.$strip>>;
796
+ readonly regressionHistory: z.ZodArray<z.ZodObject<{
797
+ readonly generation: z.ZodNumber;
798
+ readonly buildId: z.ZodNullable<z.ZodString>;
799
+ readonly completedAt: z.ZodNullable<z.ZodString>;
800
+ readonly regressedUrls: z.ZodNumber;
801
+ }, z.core.$strip>>;
802
+ readonly comparison: z.ZodNullable<z.ZodObject<{
803
+ from: z.ZodObject<{
804
+ readonly generation: z.ZodNumber;
805
+ readonly buildId: z.ZodNullable<z.ZodString>;
806
+ readonly completedAt: z.ZodNullable<z.ZodString>;
807
+ }, z.core.$strip>;
808
+ to: z.ZodObject<{
809
+ readonly generation: z.ZodNumber;
810
+ readonly buildId: z.ZodNullable<z.ZodString>;
811
+ readonly completedAt: z.ZodNullable<z.ZodString>;
812
+ }, z.core.$strip>;
813
+ }, z.core.$loose>>;
814
+ readonly clicksAtRisk: z.ZodNullable<z.ZodNumber>;
815
+ }, z.core.$strip>;
816
+ meta: z.ZodObject<{
817
+ requestId: z.ZodString;
818
+ version: z.ZodLiteral<"1.0">;
819
+ }, z.core.$loose>;
820
+ }, z.core.$strip>>;
821
+ export declare const contentDecayRowSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
822
+ readonly url: z.ZodString;
823
+ readonly path: z.ZodString;
824
+ readonly clicks: z.ZodNumber;
825
+ readonly prevClicks: z.ZodNumber;
826
+ readonly clicksDelta: z.ZodNumber;
827
+ readonly clicksChangePct: z.ZodNumber;
828
+ readonly impressions: z.ZodNumber;
829
+ readonly prevImpressions: z.ZodNumber;
830
+ readonly position: z.ZodNullable<z.ZodNumber>;
831
+ readonly prevPosition: z.ZodNullable<z.ZodNumber>;
832
+ }, z.core.$strip>, z.ZodObject<{
833
+ readonly url: z.ZodString;
834
+ readonly path: z.ZodString;
835
+ readonly clicks: z.ZodNumber;
836
+ readonly prevClicks: z.ZodNumber;
837
+ readonly clicksDelta: z.ZodNumber;
838
+ readonly clicksChangePct: z.ZodNumber;
839
+ readonly impressions: z.ZodNumber;
840
+ readonly prevImpressions: z.ZodNumber;
841
+ readonly position: z.ZodNullable<z.ZodNumber>;
842
+ readonly prevPosition: z.ZodNullable<z.ZodNumber>;
843
+ }, z.core.$strip>>;
844
+ export declare const auditContentDecayDataSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
845
+ readonly connected: z.ZodBoolean;
846
+ readonly rows: z.ZodArray<z.ZodObject<{
847
+ readonly url: z.ZodString;
848
+ readonly path: z.ZodString;
849
+ readonly clicks: z.ZodNumber;
850
+ readonly prevClicks: z.ZodNumber;
851
+ readonly clicksDelta: z.ZodNumber;
852
+ readonly clicksChangePct: z.ZodNumber;
853
+ readonly impressions: z.ZodNumber;
854
+ readonly prevImpressions: z.ZodNumber;
855
+ readonly position: z.ZodNullable<z.ZodNumber>;
856
+ readonly prevPosition: z.ZodNullable<z.ZodNumber>;
857
+ }, z.core.$strip>>;
858
+ readonly total: z.ZodNumber;
859
+ readonly clicksLost: z.ZodNumber;
860
+ readonly window: z.ZodNullable<z.ZodObject<{
861
+ startDate: z.ZodString;
862
+ endDate: z.ZodString;
863
+ prevStartDate: z.ZodString;
864
+ prevEndDate: z.ZodString;
865
+ }, z.core.$strict>>;
866
+ readonly truncated: z.ZodBoolean;
867
+ }, z.core.$strip>, z.ZodObject<{
868
+ readonly connected: z.ZodBoolean;
869
+ readonly rows: z.ZodArray<z.ZodObject<{
870
+ readonly url: z.ZodString;
871
+ readonly path: z.ZodString;
872
+ readonly clicks: z.ZodNumber;
873
+ readonly prevClicks: z.ZodNumber;
874
+ readonly clicksDelta: z.ZodNumber;
875
+ readonly clicksChangePct: z.ZodNumber;
876
+ readonly impressions: z.ZodNumber;
877
+ readonly prevImpressions: z.ZodNumber;
878
+ readonly position: z.ZodNullable<z.ZodNumber>;
879
+ readonly prevPosition: z.ZodNullable<z.ZodNumber>;
880
+ }, z.core.$strip>>;
881
+ readonly total: z.ZodNumber;
882
+ readonly clicksLost: z.ZodNumber;
883
+ readonly window: z.ZodNullable<z.ZodObject<{
884
+ startDate: z.ZodString;
885
+ endDate: z.ZodString;
886
+ prevStartDate: z.ZodString;
887
+ prevEndDate: z.ZodString;
888
+ }, z.core.$loose>>;
889
+ readonly truncated: z.ZodBoolean;
890
+ }, z.core.$strip>>;
891
+ export declare const auditContentDecayResponseSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
892
+ data: z.ZodObject<{
893
+ readonly connected: z.ZodBoolean;
894
+ readonly rows: z.ZodArray<z.ZodObject<{
895
+ readonly url: z.ZodString;
896
+ readonly path: z.ZodString;
897
+ readonly clicks: z.ZodNumber;
898
+ readonly prevClicks: z.ZodNumber;
899
+ readonly clicksDelta: z.ZodNumber;
900
+ readonly clicksChangePct: z.ZodNumber;
901
+ readonly impressions: z.ZodNumber;
902
+ readonly prevImpressions: z.ZodNumber;
903
+ readonly position: z.ZodNullable<z.ZodNumber>;
904
+ readonly prevPosition: z.ZodNullable<z.ZodNumber>;
905
+ }, z.core.$strip>>;
906
+ readonly total: z.ZodNumber;
907
+ readonly clicksLost: z.ZodNumber;
908
+ readonly window: z.ZodNullable<z.ZodObject<{
909
+ startDate: z.ZodString;
910
+ endDate: z.ZodString;
911
+ prevStartDate: z.ZodString;
912
+ prevEndDate: z.ZodString;
913
+ }, z.core.$strict>>;
914
+ readonly truncated: z.ZodBoolean;
915
+ }, z.core.$strip>;
916
+ meta: z.ZodObject<{
917
+ requestId: z.ZodString;
918
+ version: z.ZodLiteral<"1.0">;
919
+ }, z.core.$strict>;
920
+ }, z.core.$strip>, z.ZodObject<{
921
+ data: z.ZodObject<{
922
+ readonly connected: z.ZodBoolean;
923
+ readonly rows: z.ZodArray<z.ZodObject<{
924
+ readonly url: z.ZodString;
925
+ readonly path: z.ZodString;
926
+ readonly clicks: z.ZodNumber;
927
+ readonly prevClicks: z.ZodNumber;
928
+ readonly clicksDelta: z.ZodNumber;
929
+ readonly clicksChangePct: z.ZodNumber;
930
+ readonly impressions: z.ZodNumber;
931
+ readonly prevImpressions: z.ZodNumber;
932
+ readonly position: z.ZodNullable<z.ZodNumber>;
933
+ readonly prevPosition: z.ZodNullable<z.ZodNumber>;
934
+ }, z.core.$strip>>;
935
+ readonly total: z.ZodNumber;
936
+ readonly clicksLost: z.ZodNumber;
937
+ readonly window: z.ZodNullable<z.ZodObject<{
938
+ startDate: z.ZodString;
939
+ endDate: z.ZodString;
940
+ prevStartDate: z.ZodString;
941
+ prevEndDate: z.ZodString;
942
+ }, z.core.$loose>>;
943
+ readonly truncated: z.ZodBoolean;
944
+ }, z.core.$strip>;
945
+ meta: z.ZodObject<{
946
+ requestId: z.ZodString;
947
+ version: z.ZodLiteral<"1.0">;
948
+ }, z.core.$loose>;
949
+ }, z.core.$strip>>;
950
+ export declare const duplicateMemberSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
951
+ readonly url: z.ZodString;
952
+ readonly path: z.ZodString;
953
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
954
+ readonly impressions: z.ZodNullable<z.ZodNumber>;
955
+ }, z.core.$strip>, z.ZodObject<{
956
+ readonly url: z.ZodString;
957
+ readonly path: z.ZodString;
958
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
959
+ readonly impressions: z.ZodNullable<z.ZodNumber>;
960
+ }, z.core.$strip>>;
961
+ export declare const duplicateClusterSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
962
+ readonly pathPattern: z.ZodString;
963
+ readonly size: z.ZodNumber;
964
+ readonly exactDuplicates: z.ZodNumber;
965
+ readonly members: z.ZodArray<z.ZodObject<{
966
+ readonly url: z.ZodString;
967
+ readonly path: z.ZodString;
968
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
969
+ readonly impressions: z.ZodNullable<z.ZodNumber>;
970
+ }, z.core.$strip>>;
971
+ readonly keepPath: z.ZodNullable<z.ZodString>;
972
+ readonly titles: z.ZodObject<{
973
+ distinct: z.ZodNumber;
974
+ sampled: z.ZodNumber;
975
+ verdict: z.ZodEnum<{
976
+ distinct: "distinct";
977
+ mixed: "mixed";
978
+ shared: "shared";
979
+ unknown: "unknown";
980
+ }>;
981
+ }, z.core.$strict>;
982
+ }, z.core.$strip>, z.ZodObject<{
983
+ readonly pathPattern: z.ZodString;
984
+ readonly size: z.ZodNumber;
985
+ readonly exactDuplicates: z.ZodNumber;
986
+ readonly members: z.ZodArray<z.ZodObject<{
987
+ readonly url: z.ZodString;
988
+ readonly path: z.ZodString;
989
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
990
+ readonly impressions: z.ZodNullable<z.ZodNumber>;
991
+ }, z.core.$strip>>;
992
+ readonly keepPath: z.ZodNullable<z.ZodString>;
993
+ readonly titles: z.ZodObject<{
994
+ distinct: z.ZodNumber;
995
+ sampled: z.ZodNumber;
996
+ verdict: z.ZodEnum<{
997
+ distinct: "distinct";
998
+ mixed: "mixed";
999
+ shared: "shared";
1000
+ unknown: "unknown";
1001
+ }>;
1002
+ }, z.core.$loose>;
1003
+ }, z.core.$strip>>;
1004
+ export declare const auditDuplicateClustersDataSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
1005
+ readonly connected: z.ZodBoolean;
1006
+ readonly clusters: z.ZodArray<z.ZodObject<{
1007
+ readonly pathPattern: z.ZodString;
1008
+ readonly size: z.ZodNumber;
1009
+ readonly exactDuplicates: z.ZodNumber;
1010
+ readonly members: z.ZodArray<z.ZodObject<{
1011
+ readonly url: z.ZodString;
1012
+ readonly path: z.ZodString;
1013
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
1014
+ readonly impressions: z.ZodNullable<z.ZodNumber>;
1015
+ }, z.core.$strip>>;
1016
+ readonly keepPath: z.ZodNullable<z.ZodString>;
1017
+ readonly titles: z.ZodObject<{
1018
+ distinct: z.ZodNumber;
1019
+ sampled: z.ZodNumber;
1020
+ verdict: z.ZodEnum<{
1021
+ distinct: "distinct";
1022
+ mixed: "mixed";
1023
+ shared: "shared";
1024
+ unknown: "unknown";
1025
+ }>;
1026
+ }, z.core.$strict>;
1027
+ }, z.core.$strip>>;
1028
+ readonly total: z.ZodNumber;
1029
+ readonly pagesAffected: z.ZodNumber;
1030
+ }, z.core.$strip>, z.ZodObject<{
1031
+ readonly connected: z.ZodBoolean;
1032
+ readonly clusters: z.ZodArray<z.ZodObject<{
1033
+ readonly pathPattern: z.ZodString;
1034
+ readonly size: z.ZodNumber;
1035
+ readonly exactDuplicates: z.ZodNumber;
1036
+ readonly members: z.ZodArray<z.ZodObject<{
1037
+ readonly url: z.ZodString;
1038
+ readonly path: z.ZodString;
1039
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
1040
+ readonly impressions: z.ZodNullable<z.ZodNumber>;
1041
+ }, z.core.$strip>>;
1042
+ readonly keepPath: z.ZodNullable<z.ZodString>;
1043
+ readonly titles: z.ZodObject<{
1044
+ distinct: z.ZodNumber;
1045
+ sampled: z.ZodNumber;
1046
+ verdict: z.ZodEnum<{
1047
+ distinct: "distinct";
1048
+ mixed: "mixed";
1049
+ shared: "shared";
1050
+ unknown: "unknown";
1051
+ }>;
1052
+ }, z.core.$loose>;
1053
+ }, z.core.$strip>>;
1054
+ readonly total: z.ZodNumber;
1055
+ readonly pagesAffected: z.ZodNumber;
1056
+ }, z.core.$strip>>;
1057
+ export declare const auditDuplicateClustersResponseSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
1058
+ data: z.ZodObject<{
1059
+ readonly connected: z.ZodBoolean;
1060
+ readonly clusters: z.ZodArray<z.ZodObject<{
1061
+ readonly pathPattern: z.ZodString;
1062
+ readonly size: z.ZodNumber;
1063
+ readonly exactDuplicates: z.ZodNumber;
1064
+ readonly members: z.ZodArray<z.ZodObject<{
1065
+ readonly url: z.ZodString;
1066
+ readonly path: z.ZodString;
1067
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
1068
+ readonly impressions: z.ZodNullable<z.ZodNumber>;
1069
+ }, z.core.$strip>>;
1070
+ readonly keepPath: z.ZodNullable<z.ZodString>;
1071
+ readonly titles: z.ZodObject<{
1072
+ distinct: z.ZodNumber;
1073
+ sampled: z.ZodNumber;
1074
+ verdict: z.ZodEnum<{
1075
+ distinct: "distinct";
1076
+ mixed: "mixed";
1077
+ shared: "shared";
1078
+ unknown: "unknown";
1079
+ }>;
1080
+ }, z.core.$strict>;
1081
+ }, z.core.$strip>>;
1082
+ readonly total: z.ZodNumber;
1083
+ readonly pagesAffected: z.ZodNumber;
1084
+ }, z.core.$strip>;
1085
+ meta: z.ZodObject<{
1086
+ requestId: z.ZodString;
1087
+ version: z.ZodLiteral<"1.0">;
1088
+ }, z.core.$strict>;
1089
+ }, z.core.$strip>, z.ZodObject<{
1090
+ data: z.ZodObject<{
1091
+ readonly connected: z.ZodBoolean;
1092
+ readonly clusters: z.ZodArray<z.ZodObject<{
1093
+ readonly pathPattern: z.ZodString;
1094
+ readonly size: z.ZodNumber;
1095
+ readonly exactDuplicates: z.ZodNumber;
1096
+ readonly members: z.ZodArray<z.ZodObject<{
1097
+ readonly url: z.ZodString;
1098
+ readonly path: z.ZodString;
1099
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
1100
+ readonly impressions: z.ZodNullable<z.ZodNumber>;
1101
+ }, z.core.$strip>>;
1102
+ readonly keepPath: z.ZodNullable<z.ZodString>;
1103
+ readonly titles: z.ZodObject<{
1104
+ distinct: z.ZodNumber;
1105
+ sampled: z.ZodNumber;
1106
+ verdict: z.ZodEnum<{
1107
+ distinct: "distinct";
1108
+ mixed: "mixed";
1109
+ shared: "shared";
1110
+ unknown: "unknown";
1111
+ }>;
1112
+ }, z.core.$loose>;
1113
+ }, z.core.$strip>>;
1114
+ readonly total: z.ZodNumber;
1115
+ readonly pagesAffected: z.ZodNumber;
1116
+ }, z.core.$strip>;
1117
+ meta: z.ZodObject<{
1118
+ requestId: z.ZodString;
1119
+ version: z.ZodLiteral<"1.0">;
1120
+ }, z.core.$loose>;
1121
+ }, z.core.$strip>>;
1122
+ export declare const linkOpportunityRowSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
1123
+ readonly sourceUrl: z.ZodString;
1124
+ readonly sourcePath: z.ZodString;
1125
+ readonly sourceRank: z.ZodNullable<z.ZodNumber>;
1126
+ readonly targetUrl: z.ZodString;
1127
+ readonly targetPath: z.ZodString;
1128
+ readonly phrase: z.ZodString;
1129
+ readonly snippet: z.ZodString;
1130
+ readonly impressions: z.ZodNumber;
1131
+ readonly clicks: z.ZodNumber;
1132
+ readonly position: z.ZodNumber;
1133
+ }, z.core.$strip>, z.ZodObject<{
1134
+ readonly sourceUrl: z.ZodString;
1135
+ readonly sourcePath: z.ZodString;
1136
+ readonly sourceRank: z.ZodNullable<z.ZodNumber>;
1137
+ readonly targetUrl: z.ZodString;
1138
+ readonly targetPath: z.ZodString;
1139
+ readonly phrase: z.ZodString;
1140
+ readonly snippet: z.ZodString;
1141
+ readonly impressions: z.ZodNumber;
1142
+ readonly clicks: z.ZodNumber;
1143
+ readonly position: z.ZodNumber;
1144
+ }, z.core.$strip>>;
1145
+ export declare const auditLinkOpportunitiesDataSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
1146
+ readonly connected: z.ZodBoolean;
1147
+ readonly textUnavailable: z.ZodBoolean;
1148
+ readonly rows: z.ZodArray<z.ZodObject<{
1149
+ readonly sourceUrl: z.ZodString;
1150
+ readonly sourcePath: z.ZodString;
1151
+ readonly sourceRank: z.ZodNullable<z.ZodNumber>;
1152
+ readonly targetUrl: z.ZodString;
1153
+ readonly targetPath: z.ZodString;
1154
+ readonly phrase: z.ZodString;
1155
+ readonly snippet: z.ZodString;
1156
+ readonly impressions: z.ZodNumber;
1157
+ readonly clicks: z.ZodNumber;
1158
+ readonly position: z.ZodNumber;
1159
+ }, z.core.$strip>>;
1160
+ readonly total: z.ZodNumber;
1161
+ readonly pagesScanned: z.ZodNumber;
1162
+ readonly pagesTotal: z.ZodNumber;
1163
+ }, z.core.$strip>, z.ZodObject<{
1164
+ readonly connected: z.ZodBoolean;
1165
+ readonly textUnavailable: z.ZodBoolean;
1166
+ readonly rows: z.ZodArray<z.ZodObject<{
1167
+ readonly sourceUrl: z.ZodString;
1168
+ readonly sourcePath: z.ZodString;
1169
+ readonly sourceRank: z.ZodNullable<z.ZodNumber>;
1170
+ readonly targetUrl: z.ZodString;
1171
+ readonly targetPath: z.ZodString;
1172
+ readonly phrase: z.ZodString;
1173
+ readonly snippet: z.ZodString;
1174
+ readonly impressions: z.ZodNumber;
1175
+ readonly clicks: z.ZodNumber;
1176
+ readonly position: z.ZodNumber;
1177
+ }, z.core.$strip>>;
1178
+ readonly total: z.ZodNumber;
1179
+ readonly pagesScanned: z.ZodNumber;
1180
+ readonly pagesTotal: z.ZodNumber;
1181
+ }, z.core.$strip>>;
1182
+ export declare const auditLinkOpportunitiesResponseSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
1183
+ data: z.ZodObject<{
1184
+ readonly connected: z.ZodBoolean;
1185
+ readonly textUnavailable: z.ZodBoolean;
1186
+ readonly rows: z.ZodArray<z.ZodObject<{
1187
+ readonly sourceUrl: z.ZodString;
1188
+ readonly sourcePath: z.ZodString;
1189
+ readonly sourceRank: z.ZodNullable<z.ZodNumber>;
1190
+ readonly targetUrl: z.ZodString;
1191
+ readonly targetPath: z.ZodString;
1192
+ readonly phrase: z.ZodString;
1193
+ readonly snippet: z.ZodString;
1194
+ readonly impressions: z.ZodNumber;
1195
+ readonly clicks: z.ZodNumber;
1196
+ readonly position: z.ZodNumber;
1197
+ }, z.core.$strip>>;
1198
+ readonly total: z.ZodNumber;
1199
+ readonly pagesScanned: z.ZodNumber;
1200
+ readonly pagesTotal: z.ZodNumber;
1201
+ }, z.core.$strip>;
1202
+ meta: z.ZodObject<{
1203
+ requestId: z.ZodString;
1204
+ version: z.ZodLiteral<"1.0">;
1205
+ }, z.core.$strict>;
1206
+ }, z.core.$strip>, z.ZodObject<{
1207
+ data: z.ZodObject<{
1208
+ readonly connected: z.ZodBoolean;
1209
+ readonly textUnavailable: z.ZodBoolean;
1210
+ readonly rows: z.ZodArray<z.ZodObject<{
1211
+ readonly sourceUrl: z.ZodString;
1212
+ readonly sourcePath: z.ZodString;
1213
+ readonly sourceRank: z.ZodNullable<z.ZodNumber>;
1214
+ readonly targetUrl: z.ZodString;
1215
+ readonly targetPath: z.ZodString;
1216
+ readonly phrase: z.ZodString;
1217
+ readonly snippet: z.ZodString;
1218
+ readonly impressions: z.ZodNumber;
1219
+ readonly clicks: z.ZodNumber;
1220
+ readonly position: z.ZodNumber;
1221
+ }, z.core.$strip>>;
1222
+ readonly total: z.ZodNumber;
1223
+ readonly pagesScanned: z.ZodNumber;
1224
+ readonly pagesTotal: z.ZodNumber;
1225
+ }, z.core.$strip>;
1226
+ meta: z.ZodObject<{
1227
+ requestId: z.ZodString;
1228
+ version: z.ZodLiteral<"1.0">;
1229
+ }, z.core.$loose>;
1230
+ }, z.core.$strip>>;
1231
+ export declare const templateSlotSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
1232
+ readonly url: z.ZodString;
1233
+ readonly path: z.ZodString;
1234
+ readonly templateLinks: z.ZodNumber;
1235
+ readonly sourcePages: z.ZodNumber;
1236
+ readonly locations: z.ZodArray<z.ZodString>;
1237
+ readonly share: z.ZodNumber;
1238
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
1239
+ }, z.core.$strip>, z.ZodObject<{
1240
+ readonly url: z.ZodString;
1241
+ readonly path: z.ZodString;
1242
+ readonly templateLinks: z.ZodNumber;
1243
+ readonly sourcePages: z.ZodNumber;
1244
+ readonly locations: z.ZodArray<z.ZodString>;
1245
+ readonly share: z.ZodNumber;
1246
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
1247
+ }, z.core.$strip>>;
1248
+ export declare const deadEndGroupSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
1249
+ readonly label: z.ZodString;
1250
+ readonly pages: z.ZodNumber;
1251
+ readonly examples: z.ZodArray<z.ZodString>;
1252
+ readonly topRank: z.ZodNullable<z.ZodNumber>;
1253
+ readonly singleUrl: z.ZodNullable<z.ZodString>;
1254
+ }, z.core.$strip>, z.ZodObject<{
1255
+ readonly label: z.ZodString;
1256
+ readonly pages: z.ZodNumber;
1257
+ readonly examples: z.ZodArray<z.ZodString>;
1258
+ readonly topRank: z.ZodNullable<z.ZodNumber>;
1259
+ readonly singleUrl: z.ZodNullable<z.ZodString>;
1260
+ }, z.core.$strip>>;
1261
+ export declare const genericAnchorSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
1262
+ readonly anchor: z.ZodString;
1263
+ readonly links: z.ZodNumber;
1264
+ readonly targets: z.ZodNumber;
1265
+ readonly exampleTargets: z.ZodArray<z.ZodString>;
1266
+ }, z.core.$strip>, z.ZodObject<{
1267
+ readonly anchor: z.ZodString;
1268
+ readonly links: z.ZodNumber;
1269
+ readonly targets: z.ZodNumber;
1270
+ readonly exampleTargets: z.ZodArray<z.ZodString>;
1271
+ }, z.core.$strip>>;
1272
+ export declare const auditLinkStructureDataSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
1273
+ readonly gscConnected: z.ZodBoolean;
1274
+ readonly internalLinks: z.ZodNumber;
1275
+ readonly templateLinks: z.ZodNumber;
1276
+ readonly templateTargets: z.ZodNumber;
1277
+ readonly editorialLinks: z.ZodNumber;
1278
+ readonly editorialTargets: z.ZodNumber;
1279
+ readonly templateSlots: z.ZodArray<z.ZodObject<{
1280
+ readonly url: z.ZodString;
1281
+ readonly path: z.ZodString;
1282
+ readonly templateLinks: z.ZodNumber;
1283
+ readonly sourcePages: z.ZodNumber;
1284
+ readonly locations: z.ZodArray<z.ZodString>;
1285
+ readonly share: z.ZodNumber;
1286
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
1287
+ }, z.core.$strip>>;
1288
+ readonly templateSlotTotal: z.ZodNumber;
1289
+ readonly deadEnds: z.ZodArray<z.ZodObject<{
1290
+ readonly label: z.ZodString;
1291
+ readonly pages: z.ZodNumber;
1292
+ readonly examples: z.ZodArray<z.ZodString>;
1293
+ readonly topRank: z.ZodNullable<z.ZodNumber>;
1294
+ readonly singleUrl: z.ZodNullable<z.ZodString>;
1295
+ }, z.core.$strip>>;
1296
+ readonly deadEndGroupTotal: z.ZodNumber;
1297
+ readonly deadEndPageTotal: z.ZodNumber;
1298
+ readonly deadEndScanTruncated: z.ZodBoolean;
1299
+ readonly genericAnchors: z.ZodArray<z.ZodObject<{
1300
+ readonly anchor: z.ZodString;
1301
+ readonly links: z.ZodNumber;
1302
+ readonly targets: z.ZodNumber;
1303
+ readonly exampleTargets: z.ZodArray<z.ZodString>;
1304
+ }, z.core.$strip>>;
1305
+ readonly genericAnchorTotal: z.ZodNumber;
1306
+ readonly genericAnchorLinks: z.ZodNumber;
1307
+ }, z.core.$strip>, z.ZodObject<{
1308
+ readonly gscConnected: z.ZodBoolean;
1309
+ readonly internalLinks: z.ZodNumber;
1310
+ readonly templateLinks: z.ZodNumber;
1311
+ readonly templateTargets: z.ZodNumber;
1312
+ readonly editorialLinks: z.ZodNumber;
1313
+ readonly editorialTargets: z.ZodNumber;
1314
+ readonly templateSlots: z.ZodArray<z.ZodObject<{
1315
+ readonly url: z.ZodString;
1316
+ readonly path: z.ZodString;
1317
+ readonly templateLinks: z.ZodNumber;
1318
+ readonly sourcePages: z.ZodNumber;
1319
+ readonly locations: z.ZodArray<z.ZodString>;
1320
+ readonly share: z.ZodNumber;
1321
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
1322
+ }, z.core.$strip>>;
1323
+ readonly templateSlotTotal: z.ZodNumber;
1324
+ readonly deadEnds: z.ZodArray<z.ZodObject<{
1325
+ readonly label: z.ZodString;
1326
+ readonly pages: z.ZodNumber;
1327
+ readonly examples: z.ZodArray<z.ZodString>;
1328
+ readonly topRank: z.ZodNullable<z.ZodNumber>;
1329
+ readonly singleUrl: z.ZodNullable<z.ZodString>;
1330
+ }, z.core.$strip>>;
1331
+ readonly deadEndGroupTotal: z.ZodNumber;
1332
+ readonly deadEndPageTotal: z.ZodNumber;
1333
+ readonly deadEndScanTruncated: z.ZodBoolean;
1334
+ readonly genericAnchors: z.ZodArray<z.ZodObject<{
1335
+ readonly anchor: z.ZodString;
1336
+ readonly links: z.ZodNumber;
1337
+ readonly targets: z.ZodNumber;
1338
+ readonly exampleTargets: z.ZodArray<z.ZodString>;
1339
+ }, z.core.$strip>>;
1340
+ readonly genericAnchorTotal: z.ZodNumber;
1341
+ readonly genericAnchorLinks: z.ZodNumber;
1342
+ }, z.core.$strip>>;
1343
+ export declare const auditLinkStructureResponseSchema: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
1344
+ data: z.ZodObject<{
1345
+ readonly gscConnected: z.ZodBoolean;
1346
+ readonly internalLinks: z.ZodNumber;
1347
+ readonly templateLinks: z.ZodNumber;
1348
+ readonly templateTargets: z.ZodNumber;
1349
+ readonly editorialLinks: z.ZodNumber;
1350
+ readonly editorialTargets: z.ZodNumber;
1351
+ readonly templateSlots: z.ZodArray<z.ZodObject<{
1352
+ readonly url: z.ZodString;
1353
+ readonly path: z.ZodString;
1354
+ readonly templateLinks: z.ZodNumber;
1355
+ readonly sourcePages: z.ZodNumber;
1356
+ readonly locations: z.ZodArray<z.ZodString>;
1357
+ readonly share: z.ZodNumber;
1358
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
1359
+ }, z.core.$strip>>;
1360
+ readonly templateSlotTotal: z.ZodNumber;
1361
+ readonly deadEnds: z.ZodArray<z.ZodObject<{
1362
+ readonly label: z.ZodString;
1363
+ readonly pages: z.ZodNumber;
1364
+ readonly examples: z.ZodArray<z.ZodString>;
1365
+ readonly topRank: z.ZodNullable<z.ZodNumber>;
1366
+ readonly singleUrl: z.ZodNullable<z.ZodString>;
1367
+ }, z.core.$strip>>;
1368
+ readonly deadEndGroupTotal: z.ZodNumber;
1369
+ readonly deadEndPageTotal: z.ZodNumber;
1370
+ readonly deadEndScanTruncated: z.ZodBoolean;
1371
+ readonly genericAnchors: z.ZodArray<z.ZodObject<{
1372
+ readonly anchor: z.ZodString;
1373
+ readonly links: z.ZodNumber;
1374
+ readonly targets: z.ZodNumber;
1375
+ readonly exampleTargets: z.ZodArray<z.ZodString>;
1376
+ }, z.core.$strip>>;
1377
+ readonly genericAnchorTotal: z.ZodNumber;
1378
+ readonly genericAnchorLinks: z.ZodNumber;
1379
+ }, z.core.$strip>;
1380
+ meta: z.ZodObject<{
1381
+ requestId: z.ZodString;
1382
+ version: z.ZodLiteral<"1.0">;
1383
+ }, z.core.$strict>;
1384
+ }, z.core.$strip>, z.ZodObject<{
1385
+ data: z.ZodObject<{
1386
+ readonly gscConnected: z.ZodBoolean;
1387
+ readonly internalLinks: z.ZodNumber;
1388
+ readonly templateLinks: z.ZodNumber;
1389
+ readonly templateTargets: z.ZodNumber;
1390
+ readonly editorialLinks: z.ZodNumber;
1391
+ readonly editorialTargets: z.ZodNumber;
1392
+ readonly templateSlots: z.ZodArray<z.ZodObject<{
1393
+ readonly url: z.ZodString;
1394
+ readonly path: z.ZodString;
1395
+ readonly templateLinks: z.ZodNumber;
1396
+ readonly sourcePages: z.ZodNumber;
1397
+ readonly locations: z.ZodArray<z.ZodString>;
1398
+ readonly share: z.ZodNumber;
1399
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
1400
+ }, z.core.$strip>>;
1401
+ readonly templateSlotTotal: z.ZodNumber;
1402
+ readonly deadEnds: z.ZodArray<z.ZodObject<{
1403
+ readonly label: z.ZodString;
1404
+ readonly pages: z.ZodNumber;
1405
+ readonly examples: z.ZodArray<z.ZodString>;
1406
+ readonly topRank: z.ZodNullable<z.ZodNumber>;
1407
+ readonly singleUrl: z.ZodNullable<z.ZodString>;
1408
+ }, z.core.$strip>>;
1409
+ readonly deadEndGroupTotal: z.ZodNumber;
1410
+ readonly deadEndPageTotal: z.ZodNumber;
1411
+ readonly deadEndScanTruncated: z.ZodBoolean;
1412
+ readonly genericAnchors: z.ZodArray<z.ZodObject<{
1413
+ readonly anchor: z.ZodString;
1414
+ readonly links: z.ZodNumber;
1415
+ readonly targets: z.ZodNumber;
1416
+ readonly exampleTargets: z.ZodArray<z.ZodString>;
1417
+ }, z.core.$strip>>;
1418
+ readonly genericAnchorTotal: z.ZodNumber;
1419
+ readonly genericAnchorLinks: z.ZodNumber;
1420
+ }, z.core.$strip>;
1421
+ meta: z.ZodObject<{
1422
+ requestId: z.ZodString;
1423
+ version: z.ZodLiteral<"1.0">;
1424
+ }, z.core.$loose>;
1425
+ }, z.core.$strip>>;
1426
+ export type AuditSiteParams = z.input<typeof auditSiteParamsSchema>;
1427
+ export type AuditChangesQuery = z.input<typeof auditChangesQuerySchema>;
1428
+ export type AuditChanges = z.output<typeof auditChangesDataSchema.client>;
1429
+ export type AuditChangesResponse = z.output<typeof auditChangesResponseSchema.client>;
1430
+ export type AuditContentDecay = z.output<typeof auditContentDecayDataSchema.client>;
1431
+ export type AuditContentDecayResponse = z.output<typeof auditContentDecayResponseSchema.client>;
1432
+ export type AuditDuplicateMember = z.output<typeof duplicateMemberSchema.producer>;
1433
+ export type AuditDuplicateCluster = z.output<typeof duplicateClusterSchema.producer>;
1434
+ export type AuditDuplicateClusters = z.output<typeof auditDuplicateClustersDataSchema.client>;
1435
+ export type AuditDuplicateClustersResponse = z.output<typeof auditDuplicateClustersResponseSchema.client>;
1436
+ export type AuditLinkOpportunities = z.output<typeof auditLinkOpportunitiesDataSchema.client>;
1437
+ export type AuditLinkOpportunitiesResponse = z.output<typeof auditLinkOpportunitiesResponseSchema.client>;
1438
+ export type AuditLinkStructure = z.output<typeof auditLinkStructureDataSchema.client>;
1439
+ export type AuditLinkStructureResponse = z.output<typeof auditLinkStructureResponseSchema.client>;
1440
+ export declare const auditChangesOperation: {
1441
+ readonly id: 'audit.changes';
1442
+ readonly method: 'GET';
1443
+ readonly path: '/api/v1/sites/{siteId}/audit/changes';
1444
+ readonly visibility: 'public';
1445
+ readonly semantics: {
1446
+ readonly kind: 'query';
1447
+ readonly sideEffects: 'none';
1448
+ readonly retry: 'idempotent';
1449
+ readonly readConsistency: 'primary';
1450
+ };
1451
+ readonly auth: {
1452
+ readonly credentials: readonly ['session', 'api_token'];
1453
+ readonly scopes: readonly ['audit:read'];
1454
+ readonly minimumRole: 'viewer';
1455
+ readonly ownership: 'site';
1456
+ };
1457
+ readonly request: {
1458
+ readonly params: z.ZodObject<{
1459
+ siteId: z.ZodString;
1460
+ }, z.core.$strict>;
1461
+ readonly query: z.ZodObject<{
1462
+ from: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
1463
+ to: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
1464
+ }, z.core.$strict>;
1465
+ readonly headers: null;
1466
+ readonly body: null;
1467
+ };
1468
+ readonly responses: {
1469
+ readonly 200: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
1470
+ data: z.ZodObject<{
1471
+ readonly state: z.ZodEnum<{
1472
+ changes: "changes";
1473
+ "no-baseline": "no-baseline";
1474
+ "no-changes": "no-changes";
1475
+ "no-crawl": "no-crawl";
1476
+ }>;
1477
+ readonly verdict: z.ZodString;
1478
+ readonly window: z.ZodObject<{
1479
+ observedAt: z.ZodNullable<z.ZodString>;
1480
+ comparedTo: z.ZodNullable<z.ZodString>;
1481
+ }, z.core.$strict>;
1482
+ readonly regressions: z.ZodObject<{
1483
+ readonly groups: z.ZodArray<z.ZodObject<{
1484
+ readonly key: z.ZodString;
1485
+ readonly label: z.ZodString;
1486
+ readonly severity: z.ZodEnum<{
1487
+ error: "error";
1488
+ notice: "notice";
1489
+ warning: "warning";
1490
+ }>;
1491
+ readonly subject: z.ZodEnum<{
1492
+ "link-target": "link-target";
1493
+ page: "page";
1494
+ }>;
1495
+ readonly pages: z.ZodNumber;
1496
+ readonly examples: z.ZodArray<z.ZodObject<{
1497
+ readonly url: z.ZodString;
1498
+ readonly path: z.ZodString;
1499
+ }, z.core.$strip>>;
1500
+ readonly checks: z.ZodArray<z.ZodObject<{
1501
+ readonly key: z.ZodString;
1502
+ readonly label: z.ZodString;
1503
+ readonly severity: z.ZodEnum<{
1504
+ error: "error";
1505
+ notice: "notice";
1506
+ warning: "warning";
1507
+ }>;
1508
+ readonly subject: z.ZodEnum<{
1509
+ "link-target": "link-target";
1510
+ page: "page";
1511
+ }>;
1512
+ readonly pages: z.ZodNumber;
1513
+ }, z.core.$strip>>;
1514
+ readonly spike: z.ZodBoolean;
1515
+ }, z.core.$strip>>;
1516
+ readonly pages: z.ZodNumber;
1517
+ readonly groupTotal: z.ZodNumber;
1518
+ readonly checkTotal: z.ZodNumber;
1519
+ }, z.core.$strip>;
1520
+ readonly resolved: z.ZodObject<{
1521
+ readonly groups: z.ZodArray<z.ZodObject<{
1522
+ readonly key: z.ZodString;
1523
+ readonly label: z.ZodString;
1524
+ readonly severity: z.ZodEnum<{
1525
+ error: "error";
1526
+ notice: "notice";
1527
+ warning: "warning";
1528
+ }>;
1529
+ readonly subject: z.ZodEnum<{
1530
+ "link-target": "link-target";
1531
+ page: "page";
1532
+ }>;
1533
+ readonly pages: z.ZodNumber;
1534
+ readonly examples: z.ZodArray<z.ZodObject<{
1535
+ readonly url: z.ZodString;
1536
+ readonly path: z.ZodString;
1537
+ }, z.core.$strip>>;
1538
+ readonly checks: z.ZodArray<z.ZodObject<{
1539
+ readonly key: z.ZodString;
1540
+ readonly label: z.ZodString;
1541
+ readonly severity: z.ZodEnum<{
1542
+ error: "error";
1543
+ notice: "notice";
1544
+ warning: "warning";
1545
+ }>;
1546
+ readonly subject: z.ZodEnum<{
1547
+ "link-target": "link-target";
1548
+ page: "page";
1549
+ }>;
1550
+ readonly pages: z.ZodNumber;
1551
+ }, z.core.$strip>>;
1552
+ readonly spike: z.ZodBoolean;
1553
+ }, z.core.$strip>>;
1554
+ readonly pages: z.ZodNumber;
1555
+ readonly groupTotal: z.ZodNumber;
1556
+ readonly checkTotal: z.ZodNumber;
1557
+ }, z.core.$strip>;
1558
+ readonly pages: z.ZodObject<{
1559
+ readonly groups: z.ZodArray<z.ZodObject<{
1560
+ readonly key: z.ZodString;
1561
+ readonly label: z.ZodString;
1562
+ readonly severity: z.ZodEnum<{
1563
+ error: "error";
1564
+ notice: "notice";
1565
+ warning: "warning";
1566
+ }>;
1567
+ readonly subject: z.ZodEnum<{
1568
+ "link-target": "link-target";
1569
+ page: "page";
1570
+ }>;
1571
+ readonly pages: z.ZodNumber;
1572
+ readonly examples: z.ZodArray<z.ZodObject<{
1573
+ readonly url: z.ZodString;
1574
+ readonly path: z.ZodString;
1575
+ }, z.core.$strip>>;
1576
+ readonly checks: z.ZodArray<z.ZodObject<{
1577
+ readonly key: z.ZodString;
1578
+ readonly label: z.ZodString;
1579
+ readonly severity: z.ZodEnum<{
1580
+ error: "error";
1581
+ notice: "notice";
1582
+ warning: "warning";
1583
+ }>;
1584
+ readonly subject: z.ZodEnum<{
1585
+ "link-target": "link-target";
1586
+ page: "page";
1587
+ }>;
1588
+ readonly pages: z.ZodNumber;
1589
+ }, z.core.$strip>>;
1590
+ readonly spike: z.ZodBoolean;
1591
+ }, z.core.$strip>>;
1592
+ readonly pages: z.ZodNumber;
1593
+ readonly groupTotal: z.ZodNumber;
1594
+ readonly checkTotal: z.ZodNumber;
1595
+ }, z.core.$strip>;
1596
+ readonly sampled: z.ZodBoolean;
1597
+ readonly generations: z.ZodArray<z.ZodObject<{
1598
+ readonly generation: z.ZodNumber;
1599
+ readonly buildId: z.ZodNullable<z.ZodString>;
1600
+ readonly completedAt: z.ZodNullable<z.ZodString>;
1601
+ }, z.core.$strip>>;
1602
+ readonly regressionHistory: z.ZodArray<z.ZodObject<{
1603
+ readonly generation: z.ZodNumber;
1604
+ readonly buildId: z.ZodNullable<z.ZodString>;
1605
+ readonly completedAt: z.ZodNullable<z.ZodString>;
1606
+ readonly regressedUrls: z.ZodNumber;
1607
+ }, z.core.$strip>>;
1608
+ readonly comparison: z.ZodNullable<z.ZodObject<{
1609
+ from: z.ZodObject<{
1610
+ readonly generation: z.ZodNumber;
1611
+ readonly buildId: z.ZodNullable<z.ZodString>;
1612
+ readonly completedAt: z.ZodNullable<z.ZodString>;
1613
+ }, z.core.$strip>;
1614
+ to: z.ZodObject<{
1615
+ readonly generation: z.ZodNumber;
1616
+ readonly buildId: z.ZodNullable<z.ZodString>;
1617
+ readonly completedAt: z.ZodNullable<z.ZodString>;
1618
+ }, z.core.$strip>;
1619
+ }, z.core.$strict>>;
1620
+ readonly clicksAtRisk: z.ZodNullable<z.ZodNumber>;
1621
+ }, z.core.$strip>;
1622
+ meta: z.ZodObject<{
1623
+ requestId: z.ZodString;
1624
+ version: z.ZodLiteral<"1.0">;
1625
+ }, z.core.$strict>;
1626
+ }, z.core.$strip>, z.ZodObject<{
1627
+ data: z.ZodObject<{
1628
+ readonly state: z.ZodEnum<{
1629
+ changes: "changes";
1630
+ "no-baseline": "no-baseline";
1631
+ "no-changes": "no-changes";
1632
+ "no-crawl": "no-crawl";
1633
+ }>;
1634
+ readonly verdict: z.ZodString;
1635
+ readonly window: z.ZodObject<{
1636
+ observedAt: z.ZodNullable<z.ZodString>;
1637
+ comparedTo: z.ZodNullable<z.ZodString>;
1638
+ }, z.core.$loose>;
1639
+ readonly regressions: z.ZodObject<{
1640
+ readonly groups: z.ZodArray<z.ZodObject<{
1641
+ readonly key: z.ZodString;
1642
+ readonly label: z.ZodString;
1643
+ readonly severity: z.ZodEnum<{
1644
+ error: "error";
1645
+ notice: "notice";
1646
+ warning: "warning";
1647
+ }>;
1648
+ readonly subject: z.ZodEnum<{
1649
+ "link-target": "link-target";
1650
+ page: "page";
1651
+ }>;
1652
+ readonly pages: z.ZodNumber;
1653
+ readonly examples: z.ZodArray<z.ZodObject<{
1654
+ readonly url: z.ZodString;
1655
+ readonly path: z.ZodString;
1656
+ }, z.core.$strip>>;
1657
+ readonly checks: z.ZodArray<z.ZodObject<{
1658
+ readonly key: z.ZodString;
1659
+ readonly label: z.ZodString;
1660
+ readonly severity: z.ZodEnum<{
1661
+ error: "error";
1662
+ notice: "notice";
1663
+ warning: "warning";
1664
+ }>;
1665
+ readonly subject: z.ZodEnum<{
1666
+ "link-target": "link-target";
1667
+ page: "page";
1668
+ }>;
1669
+ readonly pages: z.ZodNumber;
1670
+ }, z.core.$strip>>;
1671
+ readonly spike: z.ZodBoolean;
1672
+ }, z.core.$strip>>;
1673
+ readonly pages: z.ZodNumber;
1674
+ readonly groupTotal: z.ZodNumber;
1675
+ readonly checkTotal: z.ZodNumber;
1676
+ }, z.core.$strip>;
1677
+ readonly resolved: z.ZodObject<{
1678
+ readonly groups: z.ZodArray<z.ZodObject<{
1679
+ readonly key: z.ZodString;
1680
+ readonly label: z.ZodString;
1681
+ readonly severity: z.ZodEnum<{
1682
+ error: "error";
1683
+ notice: "notice";
1684
+ warning: "warning";
1685
+ }>;
1686
+ readonly subject: z.ZodEnum<{
1687
+ "link-target": "link-target";
1688
+ page: "page";
1689
+ }>;
1690
+ readonly pages: z.ZodNumber;
1691
+ readonly examples: z.ZodArray<z.ZodObject<{
1692
+ readonly url: z.ZodString;
1693
+ readonly path: z.ZodString;
1694
+ }, z.core.$strip>>;
1695
+ readonly checks: z.ZodArray<z.ZodObject<{
1696
+ readonly key: z.ZodString;
1697
+ readonly label: z.ZodString;
1698
+ readonly severity: z.ZodEnum<{
1699
+ error: "error";
1700
+ notice: "notice";
1701
+ warning: "warning";
1702
+ }>;
1703
+ readonly subject: z.ZodEnum<{
1704
+ "link-target": "link-target";
1705
+ page: "page";
1706
+ }>;
1707
+ readonly pages: z.ZodNumber;
1708
+ }, z.core.$strip>>;
1709
+ readonly spike: z.ZodBoolean;
1710
+ }, z.core.$strip>>;
1711
+ readonly pages: z.ZodNumber;
1712
+ readonly groupTotal: z.ZodNumber;
1713
+ readonly checkTotal: z.ZodNumber;
1714
+ }, z.core.$strip>;
1715
+ readonly pages: z.ZodObject<{
1716
+ readonly groups: z.ZodArray<z.ZodObject<{
1717
+ readonly key: z.ZodString;
1718
+ readonly label: z.ZodString;
1719
+ readonly severity: z.ZodEnum<{
1720
+ error: "error";
1721
+ notice: "notice";
1722
+ warning: "warning";
1723
+ }>;
1724
+ readonly subject: z.ZodEnum<{
1725
+ "link-target": "link-target";
1726
+ page: "page";
1727
+ }>;
1728
+ readonly pages: z.ZodNumber;
1729
+ readonly examples: z.ZodArray<z.ZodObject<{
1730
+ readonly url: z.ZodString;
1731
+ readonly path: z.ZodString;
1732
+ }, z.core.$strip>>;
1733
+ readonly checks: z.ZodArray<z.ZodObject<{
1734
+ readonly key: z.ZodString;
1735
+ readonly label: z.ZodString;
1736
+ readonly severity: z.ZodEnum<{
1737
+ error: "error";
1738
+ notice: "notice";
1739
+ warning: "warning";
1740
+ }>;
1741
+ readonly subject: z.ZodEnum<{
1742
+ "link-target": "link-target";
1743
+ page: "page";
1744
+ }>;
1745
+ readonly pages: z.ZodNumber;
1746
+ }, z.core.$strip>>;
1747
+ readonly spike: z.ZodBoolean;
1748
+ }, z.core.$strip>>;
1749
+ readonly pages: z.ZodNumber;
1750
+ readonly groupTotal: z.ZodNumber;
1751
+ readonly checkTotal: z.ZodNumber;
1752
+ }, z.core.$strip>;
1753
+ readonly sampled: z.ZodBoolean;
1754
+ readonly generations: z.ZodArray<z.ZodObject<{
1755
+ readonly generation: z.ZodNumber;
1756
+ readonly buildId: z.ZodNullable<z.ZodString>;
1757
+ readonly completedAt: z.ZodNullable<z.ZodString>;
1758
+ }, z.core.$strip>>;
1759
+ readonly regressionHistory: z.ZodArray<z.ZodObject<{
1760
+ readonly generation: z.ZodNumber;
1761
+ readonly buildId: z.ZodNullable<z.ZodString>;
1762
+ readonly completedAt: z.ZodNullable<z.ZodString>;
1763
+ readonly regressedUrls: z.ZodNumber;
1764
+ }, z.core.$strip>>;
1765
+ readonly comparison: z.ZodNullable<z.ZodObject<{
1766
+ from: z.ZodObject<{
1767
+ readonly generation: z.ZodNumber;
1768
+ readonly buildId: z.ZodNullable<z.ZodString>;
1769
+ readonly completedAt: z.ZodNullable<z.ZodString>;
1770
+ }, z.core.$strip>;
1771
+ to: z.ZodObject<{
1772
+ readonly generation: z.ZodNumber;
1773
+ readonly buildId: z.ZodNullable<z.ZodString>;
1774
+ readonly completedAt: z.ZodNullable<z.ZodString>;
1775
+ }, z.core.$strip>;
1776
+ }, z.core.$loose>>;
1777
+ readonly clicksAtRisk: z.ZodNullable<z.ZodNumber>;
1778
+ }, z.core.$strip>;
1779
+ meta: z.ZodObject<{
1780
+ requestId: z.ZodString;
1781
+ version: z.ZodLiteral<"1.0">;
1782
+ }, z.core.$loose>;
1783
+ }, z.core.$strip>>;
1784
+ };
1785
+ readonly errors: readonly ["invalid_request", "unauthorized", "auth_expired", "forbidden", "not_found", "rate_limited", "provider_unavailable", "contract_violation", "internal_error"];
1786
+ readonly errorResponse: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
1787
+ readonly error: z.ZodObject<{
1788
+ code: z.ZodEnum<{
1789
+ auth_expired: "auth_expired";
1790
+ conflict: "conflict";
1791
+ contract_violation: "contract_violation";
1792
+ entitlement_required: "entitlement_required";
1793
+ forbidden: "forbidden";
1794
+ internal_error: "internal_error";
1795
+ invalid_request: "invalid_request";
1796
+ not_found: "not_found";
1797
+ provider_unavailable: "provider_unavailable";
1798
+ quota_exhausted: "quota_exhausted";
1799
+ rate_limited: "rate_limited";
1800
+ site_ambiguous: "site_ambiguous";
1801
+ stale_evidence: "stale_evidence";
1802
+ unauthorized: "unauthorized";
1803
+ }>;
1804
+ message: z.ZodString;
1805
+ requestId: z.ZodString;
1806
+ retryable: z.ZodBoolean;
1807
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1808
+ }, z.core.$strict>;
1809
+ }, z.core.$strip>, z.ZodObject<{
1810
+ readonly error: z.ZodObject<{
1811
+ code: z.ZodEnum<{
1812
+ auth_expired: "auth_expired";
1813
+ conflict: "conflict";
1814
+ contract_violation: "contract_violation";
1815
+ entitlement_required: "entitlement_required";
1816
+ forbidden: "forbidden";
1817
+ internal_error: "internal_error";
1818
+ invalid_request: "invalid_request";
1819
+ not_found: "not_found";
1820
+ provider_unavailable: "provider_unavailable";
1821
+ quota_exhausted: "quota_exhausted";
1822
+ rate_limited: "rate_limited";
1823
+ site_ambiguous: "site_ambiguous";
1824
+ stale_evidence: "stale_evidence";
1825
+ unauthorized: "unauthorized";
1826
+ }>;
1827
+ message: z.ZodString;
1828
+ requestId: z.ZodString;
1829
+ retryable: z.ZodBoolean;
1830
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1831
+ }, z.core.$loose>;
1832
+ }, z.core.$strip>>;
1833
+ readonly resources: {
1834
+ readonly reads: readonly [{
1835
+ readonly type: 'site.audit';
1836
+ readonly idFrom: 'params.siteId';
1837
+ }];
1838
+ readonly changes: readonly [];
1839
+ };
1840
+ readonly policy: {
1841
+ readonly rate: {
1842
+ readonly name: 'public-v1-fixed-window';
1843
+ readonly limit: 50;
1844
+ readonly windowSeconds: 60;
1845
+ };
1846
+ readonly idempotency: {
1847
+ readonly _tag: 'none';
1848
+ };
1849
+ readonly entitlement: null;
1850
+ readonly meter: null;
1851
+ };
1852
+ readonly lifecycle: {
1853
+ readonly introduced: '1.0.0';
1854
+ };
1855
+ readonly docs: {
1856
+ readonly summary: 'Read audit changes';
1857
+ readonly description: 'Compares published crawl generations and keeps no crawl, no baseline, no changes and observed changes as distinct states.';
1858
+ readonly tags: readonly ["Audit"];
1859
+ readonly examples: readonly [{
1860
+ readonly request: {
1861
+ readonly params: {
1862
+ readonly siteId: 'site_01JXYZ';
1863
+ };
1864
+ readonly query: {};
1865
+ };
1866
+ readonly response: {
1867
+ readonly status: 200;
1868
+ readonly body: {
1869
+ readonly data: {
1870
+ readonly state: 'no-baseline';
1871
+ readonly verdict: '';
1872
+ readonly window: {
1873
+ readonly observedAt: '2026-08-10T01:30:00.000Z';
1874
+ readonly comparedTo: null;
1875
+ };
1876
+ readonly regressions: {
1877
+ readonly groups: readonly [];
1878
+ readonly pages: 0;
1879
+ readonly groupTotal: 0;
1880
+ readonly checkTotal: 0;
1881
+ };
1882
+ readonly resolved: {
1883
+ readonly groups: readonly [];
1884
+ readonly pages: 0;
1885
+ readonly groupTotal: 0;
1886
+ readonly checkTotal: 0;
1887
+ };
1888
+ readonly pages: {
1889
+ readonly groups: readonly [];
1890
+ readonly pages: 0;
1891
+ readonly groupTotal: 0;
1892
+ readonly checkTotal: 0;
1893
+ };
1894
+ readonly sampled: false;
1895
+ readonly generations: readonly [{
1896
+ readonly generation: 4;
1897
+ readonly buildId: 'build_01JXYZ';
1898
+ readonly completedAt: '2026-08-10T01:30:00.000Z';
1899
+ }];
1900
+ readonly regressionHistory: readonly [];
1901
+ readonly comparison: null;
1902
+ readonly clicksAtRisk: null;
1903
+ };
1904
+ readonly meta: {
1905
+ readonly requestId: 'req_01JXYZ';
1906
+ readonly version: '1.0';
1907
+ };
1908
+ };
1909
+ };
1910
+ }];
1911
+ };
1912
+ };
1913
+ export declare const auditContentDecayOperation: {
1914
+ readonly id: 'audit.content.decay';
1915
+ readonly method: 'GET';
1916
+ readonly path: '/api/v1/sites/{siteId}/audit/content-decay';
1917
+ readonly visibility: 'public';
1918
+ readonly semantics: {
1919
+ readonly kind: 'query';
1920
+ readonly sideEffects: 'none';
1921
+ readonly retry: 'idempotent';
1922
+ readonly readConsistency: 'primary';
1923
+ };
1924
+ readonly auth: {
1925
+ readonly credentials: readonly ['session', 'api_token'];
1926
+ readonly scopes: readonly ['audit:read'];
1927
+ readonly minimumRole: 'viewer';
1928
+ readonly ownership: 'site';
1929
+ };
1930
+ readonly request: {
1931
+ readonly params: z.ZodObject<{
1932
+ siteId: z.ZodString;
1933
+ }, z.core.$strict>;
1934
+ readonly query: null;
1935
+ readonly headers: null;
1936
+ readonly body: null;
1937
+ };
1938
+ readonly responses: {
1939
+ readonly 200: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
1940
+ data: z.ZodObject<{
1941
+ readonly connected: z.ZodBoolean;
1942
+ readonly rows: z.ZodArray<z.ZodObject<{
1943
+ readonly url: z.ZodString;
1944
+ readonly path: z.ZodString;
1945
+ readonly clicks: z.ZodNumber;
1946
+ readonly prevClicks: z.ZodNumber;
1947
+ readonly clicksDelta: z.ZodNumber;
1948
+ readonly clicksChangePct: z.ZodNumber;
1949
+ readonly impressions: z.ZodNumber;
1950
+ readonly prevImpressions: z.ZodNumber;
1951
+ readonly position: z.ZodNullable<z.ZodNumber>;
1952
+ readonly prevPosition: z.ZodNullable<z.ZodNumber>;
1953
+ }, z.core.$strip>>;
1954
+ readonly total: z.ZodNumber;
1955
+ readonly clicksLost: z.ZodNumber;
1956
+ readonly window: z.ZodNullable<z.ZodObject<{
1957
+ startDate: z.ZodString;
1958
+ endDate: z.ZodString;
1959
+ prevStartDate: z.ZodString;
1960
+ prevEndDate: z.ZodString;
1961
+ }, z.core.$strict>>;
1962
+ readonly truncated: z.ZodBoolean;
1963
+ }, z.core.$strip>;
1964
+ meta: z.ZodObject<{
1965
+ requestId: z.ZodString;
1966
+ version: z.ZodLiteral<"1.0">;
1967
+ }, z.core.$strict>;
1968
+ }, z.core.$strip>, z.ZodObject<{
1969
+ data: z.ZodObject<{
1970
+ readonly connected: z.ZodBoolean;
1971
+ readonly rows: z.ZodArray<z.ZodObject<{
1972
+ readonly url: z.ZodString;
1973
+ readonly path: z.ZodString;
1974
+ readonly clicks: z.ZodNumber;
1975
+ readonly prevClicks: z.ZodNumber;
1976
+ readonly clicksDelta: z.ZodNumber;
1977
+ readonly clicksChangePct: z.ZodNumber;
1978
+ readonly impressions: z.ZodNumber;
1979
+ readonly prevImpressions: z.ZodNumber;
1980
+ readonly position: z.ZodNullable<z.ZodNumber>;
1981
+ readonly prevPosition: z.ZodNullable<z.ZodNumber>;
1982
+ }, z.core.$strip>>;
1983
+ readonly total: z.ZodNumber;
1984
+ readonly clicksLost: z.ZodNumber;
1985
+ readonly window: z.ZodNullable<z.ZodObject<{
1986
+ startDate: z.ZodString;
1987
+ endDate: z.ZodString;
1988
+ prevStartDate: z.ZodString;
1989
+ prevEndDate: z.ZodString;
1990
+ }, z.core.$loose>>;
1991
+ readonly truncated: z.ZodBoolean;
1992
+ }, z.core.$strip>;
1993
+ meta: z.ZodObject<{
1994
+ requestId: z.ZodString;
1995
+ version: z.ZodLiteral<"1.0">;
1996
+ }, z.core.$loose>;
1997
+ }, z.core.$strip>>;
1998
+ };
1999
+ readonly errors: readonly ["invalid_request", "unauthorized", "auth_expired", "forbidden", "not_found", "rate_limited", "provider_unavailable", "contract_violation", "internal_error"];
2000
+ readonly errorResponse: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
2001
+ readonly error: z.ZodObject<{
2002
+ code: z.ZodEnum<{
2003
+ auth_expired: "auth_expired";
2004
+ conflict: "conflict";
2005
+ contract_violation: "contract_violation";
2006
+ entitlement_required: "entitlement_required";
2007
+ forbidden: "forbidden";
2008
+ internal_error: "internal_error";
2009
+ invalid_request: "invalid_request";
2010
+ not_found: "not_found";
2011
+ provider_unavailable: "provider_unavailable";
2012
+ quota_exhausted: "quota_exhausted";
2013
+ rate_limited: "rate_limited";
2014
+ site_ambiguous: "site_ambiguous";
2015
+ stale_evidence: "stale_evidence";
2016
+ unauthorized: "unauthorized";
2017
+ }>;
2018
+ message: z.ZodString;
2019
+ requestId: z.ZodString;
2020
+ retryable: z.ZodBoolean;
2021
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
2022
+ }, z.core.$strict>;
2023
+ }, z.core.$strip>, z.ZodObject<{
2024
+ readonly error: z.ZodObject<{
2025
+ code: z.ZodEnum<{
2026
+ auth_expired: "auth_expired";
2027
+ conflict: "conflict";
2028
+ contract_violation: "contract_violation";
2029
+ entitlement_required: "entitlement_required";
2030
+ forbidden: "forbidden";
2031
+ internal_error: "internal_error";
2032
+ invalid_request: "invalid_request";
2033
+ not_found: "not_found";
2034
+ provider_unavailable: "provider_unavailable";
2035
+ quota_exhausted: "quota_exhausted";
2036
+ rate_limited: "rate_limited";
2037
+ site_ambiguous: "site_ambiguous";
2038
+ stale_evidence: "stale_evidence";
2039
+ unauthorized: "unauthorized";
2040
+ }>;
2041
+ message: z.ZodString;
2042
+ requestId: z.ZodString;
2043
+ retryable: z.ZodBoolean;
2044
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
2045
+ }, z.core.$loose>;
2046
+ }, z.core.$strip>>;
2047
+ readonly resources: {
2048
+ readonly reads: readonly [{
2049
+ readonly type: 'site.audit';
2050
+ readonly idFrom: 'params.siteId';
2051
+ }];
2052
+ readonly changes: readonly [];
2053
+ };
2054
+ readonly policy: {
2055
+ readonly rate: {
2056
+ readonly name: 'public-v1-fixed-window';
2057
+ readonly limit: 50;
2058
+ readonly windowSeconds: 60;
2059
+ };
2060
+ readonly idempotency: {
2061
+ readonly _tag: 'none';
2062
+ };
2063
+ readonly entitlement: null;
2064
+ readonly meter: null;
2065
+ };
2066
+ readonly lifecycle: {
2067
+ readonly introduced: '1.0.0';
2068
+ };
2069
+ readonly docs: {
2070
+ readonly summary: 'Read content decay';
2071
+ readonly description: 'Lists crawled pages losing Search Console clicks against the prior equal-length window, including coverage state and aggregate loss.';
2072
+ readonly tags: readonly ["Audit"];
2073
+ readonly examples: readonly [{
2074
+ readonly request: {
2075
+ readonly params: {
2076
+ readonly siteId: 'site_01JXYZ';
2077
+ };
2078
+ };
2079
+ readonly response: {
2080
+ readonly status: 200;
2081
+ readonly body: {
2082
+ readonly data: {
2083
+ readonly connected: true;
2084
+ readonly rows: readonly [{
2085
+ readonly url: 'https://example.com/guide';
2086
+ readonly path: '/guide';
2087
+ readonly clicks: 12;
2088
+ readonly prevClicks: 30;
2089
+ readonly clicksDelta: -18;
2090
+ readonly clicksChangePct: -60;
2091
+ readonly impressions: 400;
2092
+ readonly prevImpressions: 620;
2093
+ readonly position: 8.4;
2094
+ readonly prevPosition: 5.1;
2095
+ }];
2096
+ readonly total: 1;
2097
+ readonly clicksLost: 18;
2098
+ readonly window: {
2099
+ readonly startDate: '2026-07-13';
2100
+ readonly endDate: '2026-08-09';
2101
+ readonly prevStartDate: '2026-06-15';
2102
+ readonly prevEndDate: '2026-07-12';
2103
+ };
2104
+ readonly truncated: false;
2105
+ };
2106
+ readonly meta: {
2107
+ readonly requestId: 'req_01JXYZ';
2108
+ readonly version: '1.0';
2109
+ };
2110
+ };
2111
+ };
2112
+ }];
2113
+ };
2114
+ };
2115
+ export declare const auditDuplicateClustersOperation: {
2116
+ readonly id: 'audit.duplicate.clusters';
2117
+ readonly method: 'GET';
2118
+ readonly path: '/api/v1/sites/{siteId}/audit/duplicates';
2119
+ readonly visibility: 'public';
2120
+ readonly semantics: {
2121
+ readonly kind: 'query';
2122
+ readonly sideEffects: 'none';
2123
+ readonly retry: 'idempotent';
2124
+ readonly readConsistency: 'primary';
2125
+ };
2126
+ readonly auth: {
2127
+ readonly credentials: readonly ['session', 'api_token'];
2128
+ readonly scopes: readonly ['audit:read'];
2129
+ readonly minimumRole: 'viewer';
2130
+ readonly ownership: 'site';
2131
+ };
2132
+ readonly request: {
2133
+ readonly params: z.ZodObject<{
2134
+ siteId: z.ZodString;
2135
+ }, z.core.$strict>;
2136
+ readonly query: null;
2137
+ readonly headers: null;
2138
+ readonly body: null;
2139
+ };
2140
+ readonly responses: {
2141
+ readonly 200: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
2142
+ data: z.ZodObject<{
2143
+ readonly connected: z.ZodBoolean;
2144
+ readonly clusters: z.ZodArray<z.ZodObject<{
2145
+ readonly pathPattern: z.ZodString;
2146
+ readonly size: z.ZodNumber;
2147
+ readonly exactDuplicates: z.ZodNumber;
2148
+ readonly members: z.ZodArray<z.ZodObject<{
2149
+ readonly url: z.ZodString;
2150
+ readonly path: z.ZodString;
2151
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
2152
+ readonly impressions: z.ZodNullable<z.ZodNumber>;
2153
+ }, z.core.$strip>>;
2154
+ readonly keepPath: z.ZodNullable<z.ZodString>;
2155
+ readonly titles: z.ZodObject<{
2156
+ distinct: z.ZodNumber;
2157
+ sampled: z.ZodNumber;
2158
+ verdict: z.ZodEnum<{
2159
+ distinct: "distinct";
2160
+ mixed: "mixed";
2161
+ shared: "shared";
2162
+ unknown: "unknown";
2163
+ }>;
2164
+ }, z.core.$strict>;
2165
+ }, z.core.$strip>>;
2166
+ readonly total: z.ZodNumber;
2167
+ readonly pagesAffected: z.ZodNumber;
2168
+ }, z.core.$strip>;
2169
+ meta: z.ZodObject<{
2170
+ requestId: z.ZodString;
2171
+ version: z.ZodLiteral<"1.0">;
2172
+ }, z.core.$strict>;
2173
+ }, z.core.$strip>, z.ZodObject<{
2174
+ data: z.ZodObject<{
2175
+ readonly connected: z.ZodBoolean;
2176
+ readonly clusters: z.ZodArray<z.ZodObject<{
2177
+ readonly pathPattern: z.ZodString;
2178
+ readonly size: z.ZodNumber;
2179
+ readonly exactDuplicates: z.ZodNumber;
2180
+ readonly members: z.ZodArray<z.ZodObject<{
2181
+ readonly url: z.ZodString;
2182
+ readonly path: z.ZodString;
2183
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
2184
+ readonly impressions: z.ZodNullable<z.ZodNumber>;
2185
+ }, z.core.$strip>>;
2186
+ readonly keepPath: z.ZodNullable<z.ZodString>;
2187
+ readonly titles: z.ZodObject<{
2188
+ distinct: z.ZodNumber;
2189
+ sampled: z.ZodNumber;
2190
+ verdict: z.ZodEnum<{
2191
+ distinct: "distinct";
2192
+ mixed: "mixed";
2193
+ shared: "shared";
2194
+ unknown: "unknown";
2195
+ }>;
2196
+ }, z.core.$loose>;
2197
+ }, z.core.$strip>>;
2198
+ readonly total: z.ZodNumber;
2199
+ readonly pagesAffected: z.ZodNumber;
2200
+ }, z.core.$strip>;
2201
+ meta: z.ZodObject<{
2202
+ requestId: z.ZodString;
2203
+ version: z.ZodLiteral<"1.0">;
2204
+ }, z.core.$loose>;
2205
+ }, z.core.$strip>>;
2206
+ };
2207
+ readonly errors: readonly ["invalid_request", "unauthorized", "auth_expired", "forbidden", "not_found", "rate_limited", "provider_unavailable", "contract_violation", "internal_error"];
2208
+ readonly errorResponse: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
2209
+ readonly error: z.ZodObject<{
2210
+ code: z.ZodEnum<{
2211
+ auth_expired: "auth_expired";
2212
+ conflict: "conflict";
2213
+ contract_violation: "contract_violation";
2214
+ entitlement_required: "entitlement_required";
2215
+ forbidden: "forbidden";
2216
+ internal_error: "internal_error";
2217
+ invalid_request: "invalid_request";
2218
+ not_found: "not_found";
2219
+ provider_unavailable: "provider_unavailable";
2220
+ quota_exhausted: "quota_exhausted";
2221
+ rate_limited: "rate_limited";
2222
+ site_ambiguous: "site_ambiguous";
2223
+ stale_evidence: "stale_evidence";
2224
+ unauthorized: "unauthorized";
2225
+ }>;
2226
+ message: z.ZodString;
2227
+ requestId: z.ZodString;
2228
+ retryable: z.ZodBoolean;
2229
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
2230
+ }, z.core.$strict>;
2231
+ }, z.core.$strip>, z.ZodObject<{
2232
+ readonly error: z.ZodObject<{
2233
+ code: z.ZodEnum<{
2234
+ auth_expired: "auth_expired";
2235
+ conflict: "conflict";
2236
+ contract_violation: "contract_violation";
2237
+ entitlement_required: "entitlement_required";
2238
+ forbidden: "forbidden";
2239
+ internal_error: "internal_error";
2240
+ invalid_request: "invalid_request";
2241
+ not_found: "not_found";
2242
+ provider_unavailable: "provider_unavailable";
2243
+ quota_exhausted: "quota_exhausted";
2244
+ rate_limited: "rate_limited";
2245
+ site_ambiguous: "site_ambiguous";
2246
+ stale_evidence: "stale_evidence";
2247
+ unauthorized: "unauthorized";
2248
+ }>;
2249
+ message: z.ZodString;
2250
+ requestId: z.ZodString;
2251
+ retryable: z.ZodBoolean;
2252
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
2253
+ }, z.core.$loose>;
2254
+ }, z.core.$strip>>;
2255
+ readonly resources: {
2256
+ readonly reads: readonly [{
2257
+ readonly type: 'site.audit';
2258
+ readonly idFrom: 'params.siteId';
2259
+ }];
2260
+ readonly changes: readonly [];
2261
+ };
2262
+ readonly policy: {
2263
+ readonly rate: {
2264
+ readonly name: 'public-v1-fixed-window';
2265
+ readonly limit: 50;
2266
+ readonly windowSeconds: 60;
2267
+ };
2268
+ readonly idempotency: {
2269
+ readonly _tag: 'none';
2270
+ };
2271
+ readonly entitlement: null;
2272
+ readonly meter: null;
2273
+ };
2274
+ readonly lifecycle: {
2275
+ readonly introduced: '1.0.0';
2276
+ };
2277
+ readonly docs: {
2278
+ readonly summary: 'Read duplicate clusters';
2279
+ readonly description: 'Returns unresolved near-duplicate route families, member evidence, title distinctness and an optional traffic-backed keep candidate.';
2280
+ readonly tags: readonly ["Audit"];
2281
+ readonly examples: readonly [{
2282
+ readonly request: {
2283
+ readonly params: {
2284
+ readonly siteId: 'site_01JXYZ';
2285
+ };
2286
+ };
2287
+ readonly response: {
2288
+ readonly status: 200;
2289
+ readonly body: {
2290
+ readonly data: {
2291
+ readonly connected: true;
2292
+ readonly clusters: readonly [{
2293
+ readonly pathPattern: '/guides/*';
2294
+ readonly size: 3;
2295
+ readonly exactDuplicates: 2;
2296
+ readonly members: readonly [{
2297
+ readonly url: 'https://example.com/guides/alpha';
2298
+ readonly path: '/guides/alpha';
2299
+ readonly clicks: 14;
2300
+ readonly impressions: 200;
2301
+ }];
2302
+ readonly keepPath: '/guides/alpha';
2303
+ readonly titles: {
2304
+ readonly distinct: 1;
2305
+ readonly sampled: 3;
2306
+ readonly verdict: 'shared';
2307
+ };
2308
+ }];
2309
+ readonly total: 1;
2310
+ readonly pagesAffected: 3;
2311
+ };
2312
+ readonly meta: {
2313
+ readonly requestId: 'req_01JXYZ';
2314
+ readonly version: '1.0';
2315
+ };
2316
+ };
2317
+ };
2318
+ }];
2319
+ };
2320
+ };
2321
+ export declare const auditLinkOpportunitiesOperation: {
2322
+ readonly id: 'audit.link.opportunities';
2323
+ readonly method: 'GET';
2324
+ readonly path: '/api/v1/sites/{siteId}/audit/link-opportunities';
2325
+ readonly visibility: 'public';
2326
+ readonly semantics: {
2327
+ readonly kind: 'query';
2328
+ readonly sideEffects: 'none';
2329
+ readonly retry: 'idempotent';
2330
+ readonly readConsistency: 'primary';
2331
+ };
2332
+ readonly auth: {
2333
+ readonly credentials: readonly ['session', 'api_token'];
2334
+ readonly scopes: readonly ['audit:read'];
2335
+ readonly minimumRole: 'viewer';
2336
+ readonly ownership: 'site';
2337
+ };
2338
+ readonly request: {
2339
+ readonly params: z.ZodObject<{
2340
+ siteId: z.ZodString;
2341
+ }, z.core.$strict>;
2342
+ readonly query: null;
2343
+ readonly headers: null;
2344
+ readonly body: null;
2345
+ };
2346
+ readonly responses: {
2347
+ readonly 200: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
2348
+ data: z.ZodObject<{
2349
+ readonly connected: z.ZodBoolean;
2350
+ readonly textUnavailable: z.ZodBoolean;
2351
+ readonly rows: z.ZodArray<z.ZodObject<{
2352
+ readonly sourceUrl: z.ZodString;
2353
+ readonly sourcePath: z.ZodString;
2354
+ readonly sourceRank: z.ZodNullable<z.ZodNumber>;
2355
+ readonly targetUrl: z.ZodString;
2356
+ readonly targetPath: z.ZodString;
2357
+ readonly phrase: z.ZodString;
2358
+ readonly snippet: z.ZodString;
2359
+ readonly impressions: z.ZodNumber;
2360
+ readonly clicks: z.ZodNumber;
2361
+ readonly position: z.ZodNumber;
2362
+ }, z.core.$strip>>;
2363
+ readonly total: z.ZodNumber;
2364
+ readonly pagesScanned: z.ZodNumber;
2365
+ readonly pagesTotal: z.ZodNumber;
2366
+ }, z.core.$strip>;
2367
+ meta: z.ZodObject<{
2368
+ requestId: z.ZodString;
2369
+ version: z.ZodLiteral<"1.0">;
2370
+ }, z.core.$strict>;
2371
+ }, z.core.$strip>, z.ZodObject<{
2372
+ data: z.ZodObject<{
2373
+ readonly connected: z.ZodBoolean;
2374
+ readonly textUnavailable: z.ZodBoolean;
2375
+ readonly rows: z.ZodArray<z.ZodObject<{
2376
+ readonly sourceUrl: z.ZodString;
2377
+ readonly sourcePath: z.ZodString;
2378
+ readonly sourceRank: z.ZodNullable<z.ZodNumber>;
2379
+ readonly targetUrl: z.ZodString;
2380
+ readonly targetPath: z.ZodString;
2381
+ readonly phrase: z.ZodString;
2382
+ readonly snippet: z.ZodString;
2383
+ readonly impressions: z.ZodNumber;
2384
+ readonly clicks: z.ZodNumber;
2385
+ readonly position: z.ZodNumber;
2386
+ }, z.core.$strip>>;
2387
+ readonly total: z.ZodNumber;
2388
+ readonly pagesScanned: z.ZodNumber;
2389
+ readonly pagesTotal: z.ZodNumber;
2390
+ }, z.core.$strip>;
2391
+ meta: z.ZodObject<{
2392
+ requestId: z.ZodString;
2393
+ version: z.ZodLiteral<"1.0">;
2394
+ }, z.core.$loose>;
2395
+ }, z.core.$strip>>;
2396
+ };
2397
+ readonly errors: readonly ["invalid_request", "unauthorized", "auth_expired", "forbidden", "not_found", "rate_limited", "provider_unavailable", "contract_violation", "internal_error"];
2398
+ readonly errorResponse: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
2399
+ readonly error: z.ZodObject<{
2400
+ code: z.ZodEnum<{
2401
+ auth_expired: "auth_expired";
2402
+ conflict: "conflict";
2403
+ contract_violation: "contract_violation";
2404
+ entitlement_required: "entitlement_required";
2405
+ forbidden: "forbidden";
2406
+ internal_error: "internal_error";
2407
+ invalid_request: "invalid_request";
2408
+ not_found: "not_found";
2409
+ provider_unavailable: "provider_unavailable";
2410
+ quota_exhausted: "quota_exhausted";
2411
+ rate_limited: "rate_limited";
2412
+ site_ambiguous: "site_ambiguous";
2413
+ stale_evidence: "stale_evidence";
2414
+ unauthorized: "unauthorized";
2415
+ }>;
2416
+ message: z.ZodString;
2417
+ requestId: z.ZodString;
2418
+ retryable: z.ZodBoolean;
2419
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
2420
+ }, z.core.$strict>;
2421
+ }, z.core.$strip>, z.ZodObject<{
2422
+ readonly error: z.ZodObject<{
2423
+ code: z.ZodEnum<{
2424
+ auth_expired: "auth_expired";
2425
+ conflict: "conflict";
2426
+ contract_violation: "contract_violation";
2427
+ entitlement_required: "entitlement_required";
2428
+ forbidden: "forbidden";
2429
+ internal_error: "internal_error";
2430
+ invalid_request: "invalid_request";
2431
+ not_found: "not_found";
2432
+ provider_unavailable: "provider_unavailable";
2433
+ quota_exhausted: "quota_exhausted";
2434
+ rate_limited: "rate_limited";
2435
+ site_ambiguous: "site_ambiguous";
2436
+ stale_evidence: "stale_evidence";
2437
+ unauthorized: "unauthorized";
2438
+ }>;
2439
+ message: z.ZodString;
2440
+ requestId: z.ZodString;
2441
+ retryable: z.ZodBoolean;
2442
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
2443
+ }, z.core.$loose>;
2444
+ }, z.core.$strip>>;
2445
+ readonly resources: {
2446
+ readonly reads: readonly [{
2447
+ readonly type: 'site.audit';
2448
+ readonly idFrom: 'params.siteId';
2449
+ }];
2450
+ readonly changes: readonly [];
2451
+ };
2452
+ readonly policy: {
2453
+ readonly rate: {
2454
+ readonly name: 'public-v1-fixed-window';
2455
+ readonly limit: 50;
2456
+ readonly windowSeconds: 60;
2457
+ };
2458
+ readonly idempotency: {
2459
+ readonly _tag: 'none';
2460
+ };
2461
+ readonly entitlement: null;
2462
+ readonly meter: null;
2463
+ };
2464
+ readonly lifecycle: {
2465
+ readonly introduced: '1.0.0';
2466
+ };
2467
+ readonly docs: {
2468
+ readonly summary: 'Read link opportunities';
2469
+ readonly description: 'Returns source pages that mention a target query without linking to its ranking page, with crawl coverage disclosed.';
2470
+ readonly tags: readonly ["Audit"];
2471
+ readonly examples: readonly [{
2472
+ readonly request: {
2473
+ readonly params: {
2474
+ readonly siteId: 'site_01JXYZ';
2475
+ };
2476
+ };
2477
+ readonly response: {
2478
+ readonly status: 200;
2479
+ readonly body: {
2480
+ readonly data: {
2481
+ readonly connected: true;
2482
+ readonly textUnavailable: false;
2483
+ readonly rows: readonly [{
2484
+ readonly sourceUrl: 'https://example.com/handbook';
2485
+ readonly sourcePath: '/handbook';
2486
+ readonly sourceRank: 72;
2487
+ readonly targetUrl: 'https://example.com/guide';
2488
+ readonly targetPath: '/guide';
2489
+ readonly phrase: 'technical SEO guide';
2490
+ readonly snippet: 'Read our technical SEO guide before launch.';
2491
+ readonly impressions: 900;
2492
+ readonly clicks: 18;
2493
+ readonly position: 8.2;
2494
+ }];
2495
+ readonly total: 1;
2496
+ readonly pagesScanned: 152;
2497
+ readonly pagesTotal: 154;
2498
+ };
2499
+ readonly meta: {
2500
+ readonly requestId: 'req_01JXYZ';
2501
+ readonly version: '1.0';
2502
+ };
2503
+ };
2504
+ };
2505
+ }];
2506
+ };
2507
+ };
2508
+ export declare const auditLinkStructureOperation: {
2509
+ readonly id: 'audit.link.structure';
2510
+ readonly method: 'GET';
2511
+ readonly path: '/api/v1/sites/{siteId}/audit/link-structure';
2512
+ readonly visibility: 'public';
2513
+ readonly semantics: {
2514
+ readonly kind: 'query';
2515
+ readonly sideEffects: 'none';
2516
+ readonly retry: 'idempotent';
2517
+ readonly readConsistency: 'primary';
2518
+ };
2519
+ readonly auth: {
2520
+ readonly credentials: readonly ['session', 'api_token'];
2521
+ readonly scopes: readonly ['audit:read'];
2522
+ readonly minimumRole: 'viewer';
2523
+ readonly ownership: 'site';
2524
+ };
2525
+ readonly request: {
2526
+ readonly params: z.ZodObject<{
2527
+ siteId: z.ZodString;
2528
+ }, z.core.$strict>;
2529
+ readonly query: null;
2530
+ readonly headers: null;
2531
+ readonly body: null;
2532
+ };
2533
+ readonly responses: {
2534
+ readonly 200: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
2535
+ data: z.ZodObject<{
2536
+ readonly gscConnected: z.ZodBoolean;
2537
+ readonly internalLinks: z.ZodNumber;
2538
+ readonly templateLinks: z.ZodNumber;
2539
+ readonly templateTargets: z.ZodNumber;
2540
+ readonly editorialLinks: z.ZodNumber;
2541
+ readonly editorialTargets: z.ZodNumber;
2542
+ readonly templateSlots: z.ZodArray<z.ZodObject<{
2543
+ readonly url: z.ZodString;
2544
+ readonly path: z.ZodString;
2545
+ readonly templateLinks: z.ZodNumber;
2546
+ readonly sourcePages: z.ZodNumber;
2547
+ readonly locations: z.ZodArray<z.ZodString>;
2548
+ readonly share: z.ZodNumber;
2549
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
2550
+ }, z.core.$strip>>;
2551
+ readonly templateSlotTotal: z.ZodNumber;
2552
+ readonly deadEnds: z.ZodArray<z.ZodObject<{
2553
+ readonly label: z.ZodString;
2554
+ readonly pages: z.ZodNumber;
2555
+ readonly examples: z.ZodArray<z.ZodString>;
2556
+ readonly topRank: z.ZodNullable<z.ZodNumber>;
2557
+ readonly singleUrl: z.ZodNullable<z.ZodString>;
2558
+ }, z.core.$strip>>;
2559
+ readonly deadEndGroupTotal: z.ZodNumber;
2560
+ readonly deadEndPageTotal: z.ZodNumber;
2561
+ readonly deadEndScanTruncated: z.ZodBoolean;
2562
+ readonly genericAnchors: z.ZodArray<z.ZodObject<{
2563
+ readonly anchor: z.ZodString;
2564
+ readonly links: z.ZodNumber;
2565
+ readonly targets: z.ZodNumber;
2566
+ readonly exampleTargets: z.ZodArray<z.ZodString>;
2567
+ }, z.core.$strip>>;
2568
+ readonly genericAnchorTotal: z.ZodNumber;
2569
+ readonly genericAnchorLinks: z.ZodNumber;
2570
+ }, z.core.$strip>;
2571
+ meta: z.ZodObject<{
2572
+ requestId: z.ZodString;
2573
+ version: z.ZodLiteral<"1.0">;
2574
+ }, z.core.$strict>;
2575
+ }, z.core.$strip>, z.ZodObject<{
2576
+ data: z.ZodObject<{
2577
+ readonly gscConnected: z.ZodBoolean;
2578
+ readonly internalLinks: z.ZodNumber;
2579
+ readonly templateLinks: z.ZodNumber;
2580
+ readonly templateTargets: z.ZodNumber;
2581
+ readonly editorialLinks: z.ZodNumber;
2582
+ readonly editorialTargets: z.ZodNumber;
2583
+ readonly templateSlots: z.ZodArray<z.ZodObject<{
2584
+ readonly url: z.ZodString;
2585
+ readonly path: z.ZodString;
2586
+ readonly templateLinks: z.ZodNumber;
2587
+ readonly sourcePages: z.ZodNumber;
2588
+ readonly locations: z.ZodArray<z.ZodString>;
2589
+ readonly share: z.ZodNumber;
2590
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
2591
+ }, z.core.$strip>>;
2592
+ readonly templateSlotTotal: z.ZodNumber;
2593
+ readonly deadEnds: z.ZodArray<z.ZodObject<{
2594
+ readonly label: z.ZodString;
2595
+ readonly pages: z.ZodNumber;
2596
+ readonly examples: z.ZodArray<z.ZodString>;
2597
+ readonly topRank: z.ZodNullable<z.ZodNumber>;
2598
+ readonly singleUrl: z.ZodNullable<z.ZodString>;
2599
+ }, z.core.$strip>>;
2600
+ readonly deadEndGroupTotal: z.ZodNumber;
2601
+ readonly deadEndPageTotal: z.ZodNumber;
2602
+ readonly deadEndScanTruncated: z.ZodBoolean;
2603
+ readonly genericAnchors: z.ZodArray<z.ZodObject<{
2604
+ readonly anchor: z.ZodString;
2605
+ readonly links: z.ZodNumber;
2606
+ readonly targets: z.ZodNumber;
2607
+ readonly exampleTargets: z.ZodArray<z.ZodString>;
2608
+ }, z.core.$strip>>;
2609
+ readonly genericAnchorTotal: z.ZodNumber;
2610
+ readonly genericAnchorLinks: z.ZodNumber;
2611
+ }, z.core.$strip>;
2612
+ meta: z.ZodObject<{
2613
+ requestId: z.ZodString;
2614
+ version: z.ZodLiteral<"1.0">;
2615
+ }, z.core.$loose>;
2616
+ }, z.core.$strip>>;
2617
+ };
2618
+ readonly errors: readonly ["invalid_request", "unauthorized", "auth_expired", "forbidden", "not_found", "rate_limited", "provider_unavailable", "contract_violation", "internal_error"];
2619
+ readonly errorResponse: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
2620
+ readonly error: z.ZodObject<{
2621
+ code: z.ZodEnum<{
2622
+ auth_expired: "auth_expired";
2623
+ conflict: "conflict";
2624
+ contract_violation: "contract_violation";
2625
+ entitlement_required: "entitlement_required";
2626
+ forbidden: "forbidden";
2627
+ internal_error: "internal_error";
2628
+ invalid_request: "invalid_request";
2629
+ not_found: "not_found";
2630
+ provider_unavailable: "provider_unavailable";
2631
+ quota_exhausted: "quota_exhausted";
2632
+ rate_limited: "rate_limited";
2633
+ site_ambiguous: "site_ambiguous";
2634
+ stale_evidence: "stale_evidence";
2635
+ unauthorized: "unauthorized";
2636
+ }>;
2637
+ message: z.ZodString;
2638
+ requestId: z.ZodString;
2639
+ retryable: z.ZodBoolean;
2640
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
2641
+ }, z.core.$strict>;
2642
+ }, z.core.$strip>, z.ZodObject<{
2643
+ readonly error: z.ZodObject<{
2644
+ code: z.ZodEnum<{
2645
+ auth_expired: "auth_expired";
2646
+ conflict: "conflict";
2647
+ contract_violation: "contract_violation";
2648
+ entitlement_required: "entitlement_required";
2649
+ forbidden: "forbidden";
2650
+ internal_error: "internal_error";
2651
+ invalid_request: "invalid_request";
2652
+ not_found: "not_found";
2653
+ provider_unavailable: "provider_unavailable";
2654
+ quota_exhausted: "quota_exhausted";
2655
+ rate_limited: "rate_limited";
2656
+ site_ambiguous: "site_ambiguous";
2657
+ stale_evidence: "stale_evidence";
2658
+ unauthorized: "unauthorized";
2659
+ }>;
2660
+ message: z.ZodString;
2661
+ requestId: z.ZodString;
2662
+ retryable: z.ZodBoolean;
2663
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
2664
+ }, z.core.$loose>;
2665
+ }, z.core.$strip>>;
2666
+ readonly resources: {
2667
+ readonly reads: readonly [{
2668
+ readonly type: 'site.audit';
2669
+ readonly idFrom: 'params.siteId';
2670
+ }];
2671
+ readonly changes: readonly [];
2672
+ };
2673
+ readonly policy: {
2674
+ readonly rate: {
2675
+ readonly name: 'public-v1-fixed-window';
2676
+ readonly limit: 50;
2677
+ readonly windowSeconds: 60;
2678
+ };
2679
+ readonly idempotency: {
2680
+ readonly _tag: 'none';
2681
+ };
2682
+ readonly entitlement: null;
2683
+ readonly meter: null;
2684
+ };
2685
+ readonly lifecycle: {
2686
+ readonly introduced: '1.0.0';
2687
+ };
2688
+ readonly docs: {
2689
+ readonly summary: 'Read link structure';
2690
+ readonly description: 'Summarizes internal link allocation across template slots, dead-end route families and generic editorial anchors.';
2691
+ readonly tags: readonly ["Audit"];
2692
+ readonly examples: readonly [{
2693
+ readonly request: {
2694
+ readonly params: {
2695
+ readonly siteId: 'site_01JXYZ';
2696
+ };
2697
+ };
2698
+ readonly response: {
2699
+ readonly status: 200;
2700
+ readonly body: {
2701
+ readonly data: {
2702
+ readonly gscConnected: true;
2703
+ readonly internalLinks: 1400;
2704
+ readonly templateLinks: 900;
2705
+ readonly templateTargets: 12;
2706
+ readonly editorialLinks: 500;
2707
+ readonly editorialTargets: 120;
2708
+ readonly templateSlots: readonly [{
2709
+ readonly url: 'https://example.com/pricing';
2710
+ readonly path: '/pricing';
2711
+ readonly templateLinks: 120;
2712
+ readonly sourcePages: 118;
2713
+ readonly locations: readonly ["nav", "footer"];
2714
+ readonly share: 0.13;
2715
+ readonly clicks: 40;
2716
+ }];
2717
+ readonly templateSlotTotal: 12;
2718
+ readonly deadEnds: readonly [{
2719
+ readonly label: '/archive/*';
2720
+ readonly pages: 5;
2721
+ readonly examples: readonly ["/archive/2024"];
2722
+ readonly topRank: 18;
2723
+ readonly singleUrl: null;
2724
+ }];
2725
+ readonly deadEndGroupTotal: 1;
2726
+ readonly deadEndPageTotal: 5;
2727
+ readonly deadEndScanTruncated: false;
2728
+ readonly genericAnchors: readonly [{
2729
+ readonly anchor: 'click here';
2730
+ readonly links: 9;
2731
+ readonly targets: 4;
2732
+ readonly exampleTargets: readonly ["/guide"];
2733
+ }];
2734
+ readonly genericAnchorTotal: 1;
2735
+ readonly genericAnchorLinks: 9;
2736
+ };
2737
+ readonly meta: {
2738
+ readonly requestId: 'req_01JXYZ';
2739
+ readonly version: '1.0';
2740
+ };
2741
+ };
2742
+ };
2743
+ }];
2744
+ };
2745
+ };
2746
+ export declare const auditV1Registry: import("./core.js").PublicV1Registry<{
2747
+ readonly changes: {
2748
+ readonly id: 'audit.changes';
2749
+ readonly method: 'GET';
2750
+ readonly path: '/api/v1/sites/{siteId}/audit/changes';
2751
+ readonly visibility: 'public';
2752
+ readonly semantics: {
2753
+ readonly kind: 'query';
2754
+ readonly sideEffects: 'none';
2755
+ readonly retry: 'idempotent';
2756
+ readonly readConsistency: 'primary';
2757
+ };
2758
+ readonly auth: {
2759
+ readonly credentials: readonly ['session', 'api_token'];
2760
+ readonly scopes: readonly ['audit:read'];
2761
+ readonly minimumRole: 'viewer';
2762
+ readonly ownership: 'site';
2763
+ };
2764
+ readonly request: {
2765
+ readonly params: z.ZodObject<{
2766
+ siteId: z.ZodString;
2767
+ }, z.core.$strict>;
2768
+ readonly query: z.ZodObject<{
2769
+ from: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
2770
+ to: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
2771
+ }, z.core.$strict>;
2772
+ readonly headers: null;
2773
+ readonly body: null;
2774
+ };
2775
+ readonly responses: {
2776
+ readonly 200: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
2777
+ data: z.ZodObject<{
2778
+ readonly state: z.ZodEnum<{
2779
+ changes: "changes";
2780
+ "no-baseline": "no-baseline";
2781
+ "no-changes": "no-changes";
2782
+ "no-crawl": "no-crawl";
2783
+ }>;
2784
+ readonly verdict: z.ZodString;
2785
+ readonly window: z.ZodObject<{
2786
+ observedAt: z.ZodNullable<z.ZodString>;
2787
+ comparedTo: z.ZodNullable<z.ZodString>;
2788
+ }, z.core.$strict>;
2789
+ readonly regressions: z.ZodObject<{
2790
+ readonly groups: z.ZodArray<z.ZodObject<{
2791
+ readonly key: z.ZodString;
2792
+ readonly label: z.ZodString;
2793
+ readonly severity: z.ZodEnum<{
2794
+ error: "error";
2795
+ notice: "notice";
2796
+ warning: "warning";
2797
+ }>;
2798
+ readonly subject: z.ZodEnum<{
2799
+ "link-target": "link-target";
2800
+ page: "page";
2801
+ }>;
2802
+ readonly pages: z.ZodNumber;
2803
+ readonly examples: z.ZodArray<z.ZodObject<{
2804
+ readonly url: z.ZodString;
2805
+ readonly path: z.ZodString;
2806
+ }, z.core.$strip>>;
2807
+ readonly checks: z.ZodArray<z.ZodObject<{
2808
+ readonly key: z.ZodString;
2809
+ readonly label: z.ZodString;
2810
+ readonly severity: z.ZodEnum<{
2811
+ error: "error";
2812
+ notice: "notice";
2813
+ warning: "warning";
2814
+ }>;
2815
+ readonly subject: z.ZodEnum<{
2816
+ "link-target": "link-target";
2817
+ page: "page";
2818
+ }>;
2819
+ readonly pages: z.ZodNumber;
2820
+ }, z.core.$strip>>;
2821
+ readonly spike: z.ZodBoolean;
2822
+ }, z.core.$strip>>;
2823
+ readonly pages: z.ZodNumber;
2824
+ readonly groupTotal: z.ZodNumber;
2825
+ readonly checkTotal: z.ZodNumber;
2826
+ }, z.core.$strip>;
2827
+ readonly resolved: z.ZodObject<{
2828
+ readonly groups: z.ZodArray<z.ZodObject<{
2829
+ readonly key: z.ZodString;
2830
+ readonly label: z.ZodString;
2831
+ readonly severity: z.ZodEnum<{
2832
+ error: "error";
2833
+ notice: "notice";
2834
+ warning: "warning";
2835
+ }>;
2836
+ readonly subject: z.ZodEnum<{
2837
+ "link-target": "link-target";
2838
+ page: "page";
2839
+ }>;
2840
+ readonly pages: z.ZodNumber;
2841
+ readonly examples: z.ZodArray<z.ZodObject<{
2842
+ readonly url: z.ZodString;
2843
+ readonly path: z.ZodString;
2844
+ }, z.core.$strip>>;
2845
+ readonly checks: z.ZodArray<z.ZodObject<{
2846
+ readonly key: z.ZodString;
2847
+ readonly label: z.ZodString;
2848
+ readonly severity: z.ZodEnum<{
2849
+ error: "error";
2850
+ notice: "notice";
2851
+ warning: "warning";
2852
+ }>;
2853
+ readonly subject: z.ZodEnum<{
2854
+ "link-target": "link-target";
2855
+ page: "page";
2856
+ }>;
2857
+ readonly pages: z.ZodNumber;
2858
+ }, z.core.$strip>>;
2859
+ readonly spike: z.ZodBoolean;
2860
+ }, z.core.$strip>>;
2861
+ readonly pages: z.ZodNumber;
2862
+ readonly groupTotal: z.ZodNumber;
2863
+ readonly checkTotal: z.ZodNumber;
2864
+ }, z.core.$strip>;
2865
+ readonly pages: z.ZodObject<{
2866
+ readonly groups: z.ZodArray<z.ZodObject<{
2867
+ readonly key: z.ZodString;
2868
+ readonly label: z.ZodString;
2869
+ readonly severity: z.ZodEnum<{
2870
+ error: "error";
2871
+ notice: "notice";
2872
+ warning: "warning";
2873
+ }>;
2874
+ readonly subject: z.ZodEnum<{
2875
+ "link-target": "link-target";
2876
+ page: "page";
2877
+ }>;
2878
+ readonly pages: z.ZodNumber;
2879
+ readonly examples: z.ZodArray<z.ZodObject<{
2880
+ readonly url: z.ZodString;
2881
+ readonly path: z.ZodString;
2882
+ }, z.core.$strip>>;
2883
+ readonly checks: z.ZodArray<z.ZodObject<{
2884
+ readonly key: z.ZodString;
2885
+ readonly label: z.ZodString;
2886
+ readonly severity: z.ZodEnum<{
2887
+ error: "error";
2888
+ notice: "notice";
2889
+ warning: "warning";
2890
+ }>;
2891
+ readonly subject: z.ZodEnum<{
2892
+ "link-target": "link-target";
2893
+ page: "page";
2894
+ }>;
2895
+ readonly pages: z.ZodNumber;
2896
+ }, z.core.$strip>>;
2897
+ readonly spike: z.ZodBoolean;
2898
+ }, z.core.$strip>>;
2899
+ readonly pages: z.ZodNumber;
2900
+ readonly groupTotal: z.ZodNumber;
2901
+ readonly checkTotal: z.ZodNumber;
2902
+ }, z.core.$strip>;
2903
+ readonly sampled: z.ZodBoolean;
2904
+ readonly generations: z.ZodArray<z.ZodObject<{
2905
+ readonly generation: z.ZodNumber;
2906
+ readonly buildId: z.ZodNullable<z.ZodString>;
2907
+ readonly completedAt: z.ZodNullable<z.ZodString>;
2908
+ }, z.core.$strip>>;
2909
+ readonly regressionHistory: z.ZodArray<z.ZodObject<{
2910
+ readonly generation: z.ZodNumber;
2911
+ readonly buildId: z.ZodNullable<z.ZodString>;
2912
+ readonly completedAt: z.ZodNullable<z.ZodString>;
2913
+ readonly regressedUrls: z.ZodNumber;
2914
+ }, z.core.$strip>>;
2915
+ readonly comparison: z.ZodNullable<z.ZodObject<{
2916
+ from: z.ZodObject<{
2917
+ readonly generation: z.ZodNumber;
2918
+ readonly buildId: z.ZodNullable<z.ZodString>;
2919
+ readonly completedAt: z.ZodNullable<z.ZodString>;
2920
+ }, z.core.$strip>;
2921
+ to: z.ZodObject<{
2922
+ readonly generation: z.ZodNumber;
2923
+ readonly buildId: z.ZodNullable<z.ZodString>;
2924
+ readonly completedAt: z.ZodNullable<z.ZodString>;
2925
+ }, z.core.$strip>;
2926
+ }, z.core.$strict>>;
2927
+ readonly clicksAtRisk: z.ZodNullable<z.ZodNumber>;
2928
+ }, z.core.$strip>;
2929
+ meta: z.ZodObject<{
2930
+ requestId: z.ZodString;
2931
+ version: z.ZodLiteral<"1.0">;
2932
+ }, z.core.$strict>;
2933
+ }, z.core.$strip>, z.ZodObject<{
2934
+ data: z.ZodObject<{
2935
+ readonly state: z.ZodEnum<{
2936
+ changes: "changes";
2937
+ "no-baseline": "no-baseline";
2938
+ "no-changes": "no-changes";
2939
+ "no-crawl": "no-crawl";
2940
+ }>;
2941
+ readonly verdict: z.ZodString;
2942
+ readonly window: z.ZodObject<{
2943
+ observedAt: z.ZodNullable<z.ZodString>;
2944
+ comparedTo: z.ZodNullable<z.ZodString>;
2945
+ }, z.core.$loose>;
2946
+ readonly regressions: z.ZodObject<{
2947
+ readonly groups: z.ZodArray<z.ZodObject<{
2948
+ readonly key: z.ZodString;
2949
+ readonly label: z.ZodString;
2950
+ readonly severity: z.ZodEnum<{
2951
+ error: "error";
2952
+ notice: "notice";
2953
+ warning: "warning";
2954
+ }>;
2955
+ readonly subject: z.ZodEnum<{
2956
+ "link-target": "link-target";
2957
+ page: "page";
2958
+ }>;
2959
+ readonly pages: z.ZodNumber;
2960
+ readonly examples: z.ZodArray<z.ZodObject<{
2961
+ readonly url: z.ZodString;
2962
+ readonly path: z.ZodString;
2963
+ }, z.core.$strip>>;
2964
+ readonly checks: z.ZodArray<z.ZodObject<{
2965
+ readonly key: z.ZodString;
2966
+ readonly label: z.ZodString;
2967
+ readonly severity: z.ZodEnum<{
2968
+ error: "error";
2969
+ notice: "notice";
2970
+ warning: "warning";
2971
+ }>;
2972
+ readonly subject: z.ZodEnum<{
2973
+ "link-target": "link-target";
2974
+ page: "page";
2975
+ }>;
2976
+ readonly pages: z.ZodNumber;
2977
+ }, z.core.$strip>>;
2978
+ readonly spike: z.ZodBoolean;
2979
+ }, z.core.$strip>>;
2980
+ readonly pages: z.ZodNumber;
2981
+ readonly groupTotal: z.ZodNumber;
2982
+ readonly checkTotal: z.ZodNumber;
2983
+ }, z.core.$strip>;
2984
+ readonly resolved: z.ZodObject<{
2985
+ readonly groups: z.ZodArray<z.ZodObject<{
2986
+ readonly key: z.ZodString;
2987
+ readonly label: z.ZodString;
2988
+ readonly severity: z.ZodEnum<{
2989
+ error: "error";
2990
+ notice: "notice";
2991
+ warning: "warning";
2992
+ }>;
2993
+ readonly subject: z.ZodEnum<{
2994
+ "link-target": "link-target";
2995
+ page: "page";
2996
+ }>;
2997
+ readonly pages: z.ZodNumber;
2998
+ readonly examples: z.ZodArray<z.ZodObject<{
2999
+ readonly url: z.ZodString;
3000
+ readonly path: z.ZodString;
3001
+ }, z.core.$strip>>;
3002
+ readonly checks: z.ZodArray<z.ZodObject<{
3003
+ readonly key: z.ZodString;
3004
+ readonly label: z.ZodString;
3005
+ readonly severity: z.ZodEnum<{
3006
+ error: "error";
3007
+ notice: "notice";
3008
+ warning: "warning";
3009
+ }>;
3010
+ readonly subject: z.ZodEnum<{
3011
+ "link-target": "link-target";
3012
+ page: "page";
3013
+ }>;
3014
+ readonly pages: z.ZodNumber;
3015
+ }, z.core.$strip>>;
3016
+ readonly spike: z.ZodBoolean;
3017
+ }, z.core.$strip>>;
3018
+ readonly pages: z.ZodNumber;
3019
+ readonly groupTotal: z.ZodNumber;
3020
+ readonly checkTotal: z.ZodNumber;
3021
+ }, z.core.$strip>;
3022
+ readonly pages: z.ZodObject<{
3023
+ readonly groups: z.ZodArray<z.ZodObject<{
3024
+ readonly key: z.ZodString;
3025
+ readonly label: z.ZodString;
3026
+ readonly severity: z.ZodEnum<{
3027
+ error: "error";
3028
+ notice: "notice";
3029
+ warning: "warning";
3030
+ }>;
3031
+ readonly subject: z.ZodEnum<{
3032
+ "link-target": "link-target";
3033
+ page: "page";
3034
+ }>;
3035
+ readonly pages: z.ZodNumber;
3036
+ readonly examples: z.ZodArray<z.ZodObject<{
3037
+ readonly url: z.ZodString;
3038
+ readonly path: z.ZodString;
3039
+ }, z.core.$strip>>;
3040
+ readonly checks: z.ZodArray<z.ZodObject<{
3041
+ readonly key: z.ZodString;
3042
+ readonly label: z.ZodString;
3043
+ readonly severity: z.ZodEnum<{
3044
+ error: "error";
3045
+ notice: "notice";
3046
+ warning: "warning";
3047
+ }>;
3048
+ readonly subject: z.ZodEnum<{
3049
+ "link-target": "link-target";
3050
+ page: "page";
3051
+ }>;
3052
+ readonly pages: z.ZodNumber;
3053
+ }, z.core.$strip>>;
3054
+ readonly spike: z.ZodBoolean;
3055
+ }, z.core.$strip>>;
3056
+ readonly pages: z.ZodNumber;
3057
+ readonly groupTotal: z.ZodNumber;
3058
+ readonly checkTotal: z.ZodNumber;
3059
+ }, z.core.$strip>;
3060
+ readonly sampled: z.ZodBoolean;
3061
+ readonly generations: z.ZodArray<z.ZodObject<{
3062
+ readonly generation: z.ZodNumber;
3063
+ readonly buildId: z.ZodNullable<z.ZodString>;
3064
+ readonly completedAt: z.ZodNullable<z.ZodString>;
3065
+ }, z.core.$strip>>;
3066
+ readonly regressionHistory: z.ZodArray<z.ZodObject<{
3067
+ readonly generation: z.ZodNumber;
3068
+ readonly buildId: z.ZodNullable<z.ZodString>;
3069
+ readonly completedAt: z.ZodNullable<z.ZodString>;
3070
+ readonly regressedUrls: z.ZodNumber;
3071
+ }, z.core.$strip>>;
3072
+ readonly comparison: z.ZodNullable<z.ZodObject<{
3073
+ from: z.ZodObject<{
3074
+ readonly generation: z.ZodNumber;
3075
+ readonly buildId: z.ZodNullable<z.ZodString>;
3076
+ readonly completedAt: z.ZodNullable<z.ZodString>;
3077
+ }, z.core.$strip>;
3078
+ to: z.ZodObject<{
3079
+ readonly generation: z.ZodNumber;
3080
+ readonly buildId: z.ZodNullable<z.ZodString>;
3081
+ readonly completedAt: z.ZodNullable<z.ZodString>;
3082
+ }, z.core.$strip>;
3083
+ }, z.core.$loose>>;
3084
+ readonly clicksAtRisk: z.ZodNullable<z.ZodNumber>;
3085
+ }, z.core.$strip>;
3086
+ meta: z.ZodObject<{
3087
+ requestId: z.ZodString;
3088
+ version: z.ZodLiteral<"1.0">;
3089
+ }, z.core.$loose>;
3090
+ }, z.core.$strip>>;
3091
+ };
3092
+ readonly errors: readonly ["invalid_request", "unauthorized", "auth_expired", "forbidden", "not_found", "rate_limited", "provider_unavailable", "contract_violation", "internal_error"];
3093
+ readonly errorResponse: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
3094
+ readonly error: z.ZodObject<{
3095
+ code: z.ZodEnum<{
3096
+ auth_expired: "auth_expired";
3097
+ conflict: "conflict";
3098
+ contract_violation: "contract_violation";
3099
+ entitlement_required: "entitlement_required";
3100
+ forbidden: "forbidden";
3101
+ internal_error: "internal_error";
3102
+ invalid_request: "invalid_request";
3103
+ not_found: "not_found";
3104
+ provider_unavailable: "provider_unavailable";
3105
+ quota_exhausted: "quota_exhausted";
3106
+ rate_limited: "rate_limited";
3107
+ site_ambiguous: "site_ambiguous";
3108
+ stale_evidence: "stale_evidence";
3109
+ unauthorized: "unauthorized";
3110
+ }>;
3111
+ message: z.ZodString;
3112
+ requestId: z.ZodString;
3113
+ retryable: z.ZodBoolean;
3114
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3115
+ }, z.core.$strict>;
3116
+ }, z.core.$strip>, z.ZodObject<{
3117
+ readonly error: z.ZodObject<{
3118
+ code: z.ZodEnum<{
3119
+ auth_expired: "auth_expired";
3120
+ conflict: "conflict";
3121
+ contract_violation: "contract_violation";
3122
+ entitlement_required: "entitlement_required";
3123
+ forbidden: "forbidden";
3124
+ internal_error: "internal_error";
3125
+ invalid_request: "invalid_request";
3126
+ not_found: "not_found";
3127
+ provider_unavailable: "provider_unavailable";
3128
+ quota_exhausted: "quota_exhausted";
3129
+ rate_limited: "rate_limited";
3130
+ site_ambiguous: "site_ambiguous";
3131
+ stale_evidence: "stale_evidence";
3132
+ unauthorized: "unauthorized";
3133
+ }>;
3134
+ message: z.ZodString;
3135
+ requestId: z.ZodString;
3136
+ retryable: z.ZodBoolean;
3137
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3138
+ }, z.core.$loose>;
3139
+ }, z.core.$strip>>;
3140
+ readonly resources: {
3141
+ readonly reads: readonly [{
3142
+ readonly type: 'site.audit';
3143
+ readonly idFrom: 'params.siteId';
3144
+ }];
3145
+ readonly changes: readonly [];
3146
+ };
3147
+ readonly policy: {
3148
+ readonly rate: {
3149
+ readonly name: 'public-v1-fixed-window';
3150
+ readonly limit: 50;
3151
+ readonly windowSeconds: 60;
3152
+ };
3153
+ readonly idempotency: {
3154
+ readonly _tag: 'none';
3155
+ };
3156
+ readonly entitlement: null;
3157
+ readonly meter: null;
3158
+ };
3159
+ readonly lifecycle: {
3160
+ readonly introduced: '1.0.0';
3161
+ };
3162
+ readonly docs: {
3163
+ readonly summary: 'Read audit changes';
3164
+ readonly description: 'Compares published crawl generations and keeps no crawl, no baseline, no changes and observed changes as distinct states.';
3165
+ readonly tags: readonly ["Audit"];
3166
+ readonly examples: readonly [{
3167
+ readonly request: {
3168
+ readonly params: {
3169
+ readonly siteId: 'site_01JXYZ';
3170
+ };
3171
+ readonly query: {};
3172
+ };
3173
+ readonly response: {
3174
+ readonly status: 200;
3175
+ readonly body: {
3176
+ readonly data: {
3177
+ readonly state: 'no-baseline';
3178
+ readonly verdict: '';
3179
+ readonly window: {
3180
+ readonly observedAt: '2026-08-10T01:30:00.000Z';
3181
+ readonly comparedTo: null;
3182
+ };
3183
+ readonly regressions: {
3184
+ readonly groups: readonly [];
3185
+ readonly pages: 0;
3186
+ readonly groupTotal: 0;
3187
+ readonly checkTotal: 0;
3188
+ };
3189
+ readonly resolved: {
3190
+ readonly groups: readonly [];
3191
+ readonly pages: 0;
3192
+ readonly groupTotal: 0;
3193
+ readonly checkTotal: 0;
3194
+ };
3195
+ readonly pages: {
3196
+ readonly groups: readonly [];
3197
+ readonly pages: 0;
3198
+ readonly groupTotal: 0;
3199
+ readonly checkTotal: 0;
3200
+ };
3201
+ readonly sampled: false;
3202
+ readonly generations: readonly [{
3203
+ readonly generation: 4;
3204
+ readonly buildId: 'build_01JXYZ';
3205
+ readonly completedAt: '2026-08-10T01:30:00.000Z';
3206
+ }];
3207
+ readonly regressionHistory: readonly [];
3208
+ readonly comparison: null;
3209
+ readonly clicksAtRisk: null;
3210
+ };
3211
+ readonly meta: {
3212
+ readonly requestId: 'req_01JXYZ';
3213
+ readonly version: '1.0';
3214
+ };
3215
+ };
3216
+ };
3217
+ }];
3218
+ };
3219
+ };
3220
+ readonly contentDecay: {
3221
+ readonly id: 'audit.content.decay';
3222
+ readonly method: 'GET';
3223
+ readonly path: '/api/v1/sites/{siteId}/audit/content-decay';
3224
+ readonly visibility: 'public';
3225
+ readonly semantics: {
3226
+ readonly kind: 'query';
3227
+ readonly sideEffects: 'none';
3228
+ readonly retry: 'idempotent';
3229
+ readonly readConsistency: 'primary';
3230
+ };
3231
+ readonly auth: {
3232
+ readonly credentials: readonly ['session', 'api_token'];
3233
+ readonly scopes: readonly ['audit:read'];
3234
+ readonly minimumRole: 'viewer';
3235
+ readonly ownership: 'site';
3236
+ };
3237
+ readonly request: {
3238
+ readonly params: z.ZodObject<{
3239
+ siteId: z.ZodString;
3240
+ }, z.core.$strict>;
3241
+ readonly query: null;
3242
+ readonly headers: null;
3243
+ readonly body: null;
3244
+ };
3245
+ readonly responses: {
3246
+ readonly 200: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
3247
+ data: z.ZodObject<{
3248
+ readonly connected: z.ZodBoolean;
3249
+ readonly rows: z.ZodArray<z.ZodObject<{
3250
+ readonly url: z.ZodString;
3251
+ readonly path: z.ZodString;
3252
+ readonly clicks: z.ZodNumber;
3253
+ readonly prevClicks: z.ZodNumber;
3254
+ readonly clicksDelta: z.ZodNumber;
3255
+ readonly clicksChangePct: z.ZodNumber;
3256
+ readonly impressions: z.ZodNumber;
3257
+ readonly prevImpressions: z.ZodNumber;
3258
+ readonly position: z.ZodNullable<z.ZodNumber>;
3259
+ readonly prevPosition: z.ZodNullable<z.ZodNumber>;
3260
+ }, z.core.$strip>>;
3261
+ readonly total: z.ZodNumber;
3262
+ readonly clicksLost: z.ZodNumber;
3263
+ readonly window: z.ZodNullable<z.ZodObject<{
3264
+ startDate: z.ZodString;
3265
+ endDate: z.ZodString;
3266
+ prevStartDate: z.ZodString;
3267
+ prevEndDate: z.ZodString;
3268
+ }, z.core.$strict>>;
3269
+ readonly truncated: z.ZodBoolean;
3270
+ }, z.core.$strip>;
3271
+ meta: z.ZodObject<{
3272
+ requestId: z.ZodString;
3273
+ version: z.ZodLiteral<"1.0">;
3274
+ }, z.core.$strict>;
3275
+ }, z.core.$strip>, z.ZodObject<{
3276
+ data: z.ZodObject<{
3277
+ readonly connected: z.ZodBoolean;
3278
+ readonly rows: z.ZodArray<z.ZodObject<{
3279
+ readonly url: z.ZodString;
3280
+ readonly path: z.ZodString;
3281
+ readonly clicks: z.ZodNumber;
3282
+ readonly prevClicks: z.ZodNumber;
3283
+ readonly clicksDelta: z.ZodNumber;
3284
+ readonly clicksChangePct: z.ZodNumber;
3285
+ readonly impressions: z.ZodNumber;
3286
+ readonly prevImpressions: z.ZodNumber;
3287
+ readonly position: z.ZodNullable<z.ZodNumber>;
3288
+ readonly prevPosition: z.ZodNullable<z.ZodNumber>;
3289
+ }, z.core.$strip>>;
3290
+ readonly total: z.ZodNumber;
3291
+ readonly clicksLost: z.ZodNumber;
3292
+ readonly window: z.ZodNullable<z.ZodObject<{
3293
+ startDate: z.ZodString;
3294
+ endDate: z.ZodString;
3295
+ prevStartDate: z.ZodString;
3296
+ prevEndDate: z.ZodString;
3297
+ }, z.core.$loose>>;
3298
+ readonly truncated: z.ZodBoolean;
3299
+ }, z.core.$strip>;
3300
+ meta: z.ZodObject<{
3301
+ requestId: z.ZodString;
3302
+ version: z.ZodLiteral<"1.0">;
3303
+ }, z.core.$loose>;
3304
+ }, z.core.$strip>>;
3305
+ };
3306
+ readonly errors: readonly ["invalid_request", "unauthorized", "auth_expired", "forbidden", "not_found", "rate_limited", "provider_unavailable", "contract_violation", "internal_error"];
3307
+ readonly errorResponse: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
3308
+ readonly error: z.ZodObject<{
3309
+ code: z.ZodEnum<{
3310
+ auth_expired: "auth_expired";
3311
+ conflict: "conflict";
3312
+ contract_violation: "contract_violation";
3313
+ entitlement_required: "entitlement_required";
3314
+ forbidden: "forbidden";
3315
+ internal_error: "internal_error";
3316
+ invalid_request: "invalid_request";
3317
+ not_found: "not_found";
3318
+ provider_unavailable: "provider_unavailable";
3319
+ quota_exhausted: "quota_exhausted";
3320
+ rate_limited: "rate_limited";
3321
+ site_ambiguous: "site_ambiguous";
3322
+ stale_evidence: "stale_evidence";
3323
+ unauthorized: "unauthorized";
3324
+ }>;
3325
+ message: z.ZodString;
3326
+ requestId: z.ZodString;
3327
+ retryable: z.ZodBoolean;
3328
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3329
+ }, z.core.$strict>;
3330
+ }, z.core.$strip>, z.ZodObject<{
3331
+ readonly error: z.ZodObject<{
3332
+ code: z.ZodEnum<{
3333
+ auth_expired: "auth_expired";
3334
+ conflict: "conflict";
3335
+ contract_violation: "contract_violation";
3336
+ entitlement_required: "entitlement_required";
3337
+ forbidden: "forbidden";
3338
+ internal_error: "internal_error";
3339
+ invalid_request: "invalid_request";
3340
+ not_found: "not_found";
3341
+ provider_unavailable: "provider_unavailable";
3342
+ quota_exhausted: "quota_exhausted";
3343
+ rate_limited: "rate_limited";
3344
+ site_ambiguous: "site_ambiguous";
3345
+ stale_evidence: "stale_evidence";
3346
+ unauthorized: "unauthorized";
3347
+ }>;
3348
+ message: z.ZodString;
3349
+ requestId: z.ZodString;
3350
+ retryable: z.ZodBoolean;
3351
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3352
+ }, z.core.$loose>;
3353
+ }, z.core.$strip>>;
3354
+ readonly resources: {
3355
+ readonly reads: readonly [{
3356
+ readonly type: 'site.audit';
3357
+ readonly idFrom: 'params.siteId';
3358
+ }];
3359
+ readonly changes: readonly [];
3360
+ };
3361
+ readonly policy: {
3362
+ readonly rate: {
3363
+ readonly name: 'public-v1-fixed-window';
3364
+ readonly limit: 50;
3365
+ readonly windowSeconds: 60;
3366
+ };
3367
+ readonly idempotency: {
3368
+ readonly _tag: 'none';
3369
+ };
3370
+ readonly entitlement: null;
3371
+ readonly meter: null;
3372
+ };
3373
+ readonly lifecycle: {
3374
+ readonly introduced: '1.0.0';
3375
+ };
3376
+ readonly docs: {
3377
+ readonly summary: 'Read content decay';
3378
+ readonly description: 'Lists crawled pages losing Search Console clicks against the prior equal-length window, including coverage state and aggregate loss.';
3379
+ readonly tags: readonly ["Audit"];
3380
+ readonly examples: readonly [{
3381
+ readonly request: {
3382
+ readonly params: {
3383
+ readonly siteId: 'site_01JXYZ';
3384
+ };
3385
+ };
3386
+ readonly response: {
3387
+ readonly status: 200;
3388
+ readonly body: {
3389
+ readonly data: {
3390
+ readonly connected: true;
3391
+ readonly rows: readonly [{
3392
+ readonly url: 'https://example.com/guide';
3393
+ readonly path: '/guide';
3394
+ readonly clicks: 12;
3395
+ readonly prevClicks: 30;
3396
+ readonly clicksDelta: -18;
3397
+ readonly clicksChangePct: -60;
3398
+ readonly impressions: 400;
3399
+ readonly prevImpressions: 620;
3400
+ readonly position: 8.4;
3401
+ readonly prevPosition: 5.1;
3402
+ }];
3403
+ readonly total: 1;
3404
+ readonly clicksLost: 18;
3405
+ readonly window: {
3406
+ readonly startDate: '2026-07-13';
3407
+ readonly endDate: '2026-08-09';
3408
+ readonly prevStartDate: '2026-06-15';
3409
+ readonly prevEndDate: '2026-07-12';
3410
+ };
3411
+ readonly truncated: false;
3412
+ };
3413
+ readonly meta: {
3414
+ readonly requestId: 'req_01JXYZ';
3415
+ readonly version: '1.0';
3416
+ };
3417
+ };
3418
+ };
3419
+ }];
3420
+ };
3421
+ };
3422
+ readonly duplicateClusters: {
3423
+ readonly id: 'audit.duplicate.clusters';
3424
+ readonly method: 'GET';
3425
+ readonly path: '/api/v1/sites/{siteId}/audit/duplicates';
3426
+ readonly visibility: 'public';
3427
+ readonly semantics: {
3428
+ readonly kind: 'query';
3429
+ readonly sideEffects: 'none';
3430
+ readonly retry: 'idempotent';
3431
+ readonly readConsistency: 'primary';
3432
+ };
3433
+ readonly auth: {
3434
+ readonly credentials: readonly ['session', 'api_token'];
3435
+ readonly scopes: readonly ['audit:read'];
3436
+ readonly minimumRole: 'viewer';
3437
+ readonly ownership: 'site';
3438
+ };
3439
+ readonly request: {
3440
+ readonly params: z.ZodObject<{
3441
+ siteId: z.ZodString;
3442
+ }, z.core.$strict>;
3443
+ readonly query: null;
3444
+ readonly headers: null;
3445
+ readonly body: null;
3446
+ };
3447
+ readonly responses: {
3448
+ readonly 200: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
3449
+ data: z.ZodObject<{
3450
+ readonly connected: z.ZodBoolean;
3451
+ readonly clusters: z.ZodArray<z.ZodObject<{
3452
+ readonly pathPattern: z.ZodString;
3453
+ readonly size: z.ZodNumber;
3454
+ readonly exactDuplicates: z.ZodNumber;
3455
+ readonly members: z.ZodArray<z.ZodObject<{
3456
+ readonly url: z.ZodString;
3457
+ readonly path: z.ZodString;
3458
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
3459
+ readonly impressions: z.ZodNullable<z.ZodNumber>;
3460
+ }, z.core.$strip>>;
3461
+ readonly keepPath: z.ZodNullable<z.ZodString>;
3462
+ readonly titles: z.ZodObject<{
3463
+ distinct: z.ZodNumber;
3464
+ sampled: z.ZodNumber;
3465
+ verdict: z.ZodEnum<{
3466
+ distinct: "distinct";
3467
+ mixed: "mixed";
3468
+ shared: "shared";
3469
+ unknown: "unknown";
3470
+ }>;
3471
+ }, z.core.$strict>;
3472
+ }, z.core.$strip>>;
3473
+ readonly total: z.ZodNumber;
3474
+ readonly pagesAffected: z.ZodNumber;
3475
+ }, z.core.$strip>;
3476
+ meta: z.ZodObject<{
3477
+ requestId: z.ZodString;
3478
+ version: z.ZodLiteral<"1.0">;
3479
+ }, z.core.$strict>;
3480
+ }, z.core.$strip>, z.ZodObject<{
3481
+ data: z.ZodObject<{
3482
+ readonly connected: z.ZodBoolean;
3483
+ readonly clusters: z.ZodArray<z.ZodObject<{
3484
+ readonly pathPattern: z.ZodString;
3485
+ readonly size: z.ZodNumber;
3486
+ readonly exactDuplicates: z.ZodNumber;
3487
+ readonly members: z.ZodArray<z.ZodObject<{
3488
+ readonly url: z.ZodString;
3489
+ readonly path: z.ZodString;
3490
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
3491
+ readonly impressions: z.ZodNullable<z.ZodNumber>;
3492
+ }, z.core.$strip>>;
3493
+ readonly keepPath: z.ZodNullable<z.ZodString>;
3494
+ readonly titles: z.ZodObject<{
3495
+ distinct: z.ZodNumber;
3496
+ sampled: z.ZodNumber;
3497
+ verdict: z.ZodEnum<{
3498
+ distinct: "distinct";
3499
+ mixed: "mixed";
3500
+ shared: "shared";
3501
+ unknown: "unknown";
3502
+ }>;
3503
+ }, z.core.$loose>;
3504
+ }, z.core.$strip>>;
3505
+ readonly total: z.ZodNumber;
3506
+ readonly pagesAffected: z.ZodNumber;
3507
+ }, z.core.$strip>;
3508
+ meta: z.ZodObject<{
3509
+ requestId: z.ZodString;
3510
+ version: z.ZodLiteral<"1.0">;
3511
+ }, z.core.$loose>;
3512
+ }, z.core.$strip>>;
3513
+ };
3514
+ readonly errors: readonly ["invalid_request", "unauthorized", "auth_expired", "forbidden", "not_found", "rate_limited", "provider_unavailable", "contract_violation", "internal_error"];
3515
+ readonly errorResponse: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
3516
+ readonly error: z.ZodObject<{
3517
+ code: z.ZodEnum<{
3518
+ auth_expired: "auth_expired";
3519
+ conflict: "conflict";
3520
+ contract_violation: "contract_violation";
3521
+ entitlement_required: "entitlement_required";
3522
+ forbidden: "forbidden";
3523
+ internal_error: "internal_error";
3524
+ invalid_request: "invalid_request";
3525
+ not_found: "not_found";
3526
+ provider_unavailable: "provider_unavailable";
3527
+ quota_exhausted: "quota_exhausted";
3528
+ rate_limited: "rate_limited";
3529
+ site_ambiguous: "site_ambiguous";
3530
+ stale_evidence: "stale_evidence";
3531
+ unauthorized: "unauthorized";
3532
+ }>;
3533
+ message: z.ZodString;
3534
+ requestId: z.ZodString;
3535
+ retryable: z.ZodBoolean;
3536
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3537
+ }, z.core.$strict>;
3538
+ }, z.core.$strip>, z.ZodObject<{
3539
+ readonly error: z.ZodObject<{
3540
+ code: z.ZodEnum<{
3541
+ auth_expired: "auth_expired";
3542
+ conflict: "conflict";
3543
+ contract_violation: "contract_violation";
3544
+ entitlement_required: "entitlement_required";
3545
+ forbidden: "forbidden";
3546
+ internal_error: "internal_error";
3547
+ invalid_request: "invalid_request";
3548
+ not_found: "not_found";
3549
+ provider_unavailable: "provider_unavailable";
3550
+ quota_exhausted: "quota_exhausted";
3551
+ rate_limited: "rate_limited";
3552
+ site_ambiguous: "site_ambiguous";
3553
+ stale_evidence: "stale_evidence";
3554
+ unauthorized: "unauthorized";
3555
+ }>;
3556
+ message: z.ZodString;
3557
+ requestId: z.ZodString;
3558
+ retryable: z.ZodBoolean;
3559
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3560
+ }, z.core.$loose>;
3561
+ }, z.core.$strip>>;
3562
+ readonly resources: {
3563
+ readonly reads: readonly [{
3564
+ readonly type: 'site.audit';
3565
+ readonly idFrom: 'params.siteId';
3566
+ }];
3567
+ readonly changes: readonly [];
3568
+ };
3569
+ readonly policy: {
3570
+ readonly rate: {
3571
+ readonly name: 'public-v1-fixed-window';
3572
+ readonly limit: 50;
3573
+ readonly windowSeconds: 60;
3574
+ };
3575
+ readonly idempotency: {
3576
+ readonly _tag: 'none';
3577
+ };
3578
+ readonly entitlement: null;
3579
+ readonly meter: null;
3580
+ };
3581
+ readonly lifecycle: {
3582
+ readonly introduced: '1.0.0';
3583
+ };
3584
+ readonly docs: {
3585
+ readonly summary: 'Read duplicate clusters';
3586
+ readonly description: 'Returns unresolved near-duplicate route families, member evidence, title distinctness and an optional traffic-backed keep candidate.';
3587
+ readonly tags: readonly ["Audit"];
3588
+ readonly examples: readonly [{
3589
+ readonly request: {
3590
+ readonly params: {
3591
+ readonly siteId: 'site_01JXYZ';
3592
+ };
3593
+ };
3594
+ readonly response: {
3595
+ readonly status: 200;
3596
+ readonly body: {
3597
+ readonly data: {
3598
+ readonly connected: true;
3599
+ readonly clusters: readonly [{
3600
+ readonly pathPattern: '/guides/*';
3601
+ readonly size: 3;
3602
+ readonly exactDuplicates: 2;
3603
+ readonly members: readonly [{
3604
+ readonly url: 'https://example.com/guides/alpha';
3605
+ readonly path: '/guides/alpha';
3606
+ readonly clicks: 14;
3607
+ readonly impressions: 200;
3608
+ }];
3609
+ readonly keepPath: '/guides/alpha';
3610
+ readonly titles: {
3611
+ readonly distinct: 1;
3612
+ readonly sampled: 3;
3613
+ readonly verdict: 'shared';
3614
+ };
3615
+ }];
3616
+ readonly total: 1;
3617
+ readonly pagesAffected: 3;
3618
+ };
3619
+ readonly meta: {
3620
+ readonly requestId: 'req_01JXYZ';
3621
+ readonly version: '1.0';
3622
+ };
3623
+ };
3624
+ };
3625
+ }];
3626
+ };
3627
+ };
3628
+ readonly linkOpportunities: {
3629
+ readonly id: 'audit.link.opportunities';
3630
+ readonly method: 'GET';
3631
+ readonly path: '/api/v1/sites/{siteId}/audit/link-opportunities';
3632
+ readonly visibility: 'public';
3633
+ readonly semantics: {
3634
+ readonly kind: 'query';
3635
+ readonly sideEffects: 'none';
3636
+ readonly retry: 'idempotent';
3637
+ readonly readConsistency: 'primary';
3638
+ };
3639
+ readonly auth: {
3640
+ readonly credentials: readonly ['session', 'api_token'];
3641
+ readonly scopes: readonly ['audit:read'];
3642
+ readonly minimumRole: 'viewer';
3643
+ readonly ownership: 'site';
3644
+ };
3645
+ readonly request: {
3646
+ readonly params: z.ZodObject<{
3647
+ siteId: z.ZodString;
3648
+ }, z.core.$strict>;
3649
+ readonly query: null;
3650
+ readonly headers: null;
3651
+ readonly body: null;
3652
+ };
3653
+ readonly responses: {
3654
+ readonly 200: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
3655
+ data: z.ZodObject<{
3656
+ readonly connected: z.ZodBoolean;
3657
+ readonly textUnavailable: z.ZodBoolean;
3658
+ readonly rows: z.ZodArray<z.ZodObject<{
3659
+ readonly sourceUrl: z.ZodString;
3660
+ readonly sourcePath: z.ZodString;
3661
+ readonly sourceRank: z.ZodNullable<z.ZodNumber>;
3662
+ readonly targetUrl: z.ZodString;
3663
+ readonly targetPath: z.ZodString;
3664
+ readonly phrase: z.ZodString;
3665
+ readonly snippet: z.ZodString;
3666
+ readonly impressions: z.ZodNumber;
3667
+ readonly clicks: z.ZodNumber;
3668
+ readonly position: z.ZodNumber;
3669
+ }, z.core.$strip>>;
3670
+ readonly total: z.ZodNumber;
3671
+ readonly pagesScanned: z.ZodNumber;
3672
+ readonly pagesTotal: z.ZodNumber;
3673
+ }, z.core.$strip>;
3674
+ meta: z.ZodObject<{
3675
+ requestId: z.ZodString;
3676
+ version: z.ZodLiteral<"1.0">;
3677
+ }, z.core.$strict>;
3678
+ }, z.core.$strip>, z.ZodObject<{
3679
+ data: z.ZodObject<{
3680
+ readonly connected: z.ZodBoolean;
3681
+ readonly textUnavailable: z.ZodBoolean;
3682
+ readonly rows: z.ZodArray<z.ZodObject<{
3683
+ readonly sourceUrl: z.ZodString;
3684
+ readonly sourcePath: z.ZodString;
3685
+ readonly sourceRank: z.ZodNullable<z.ZodNumber>;
3686
+ readonly targetUrl: z.ZodString;
3687
+ readonly targetPath: z.ZodString;
3688
+ readonly phrase: z.ZodString;
3689
+ readonly snippet: z.ZodString;
3690
+ readonly impressions: z.ZodNumber;
3691
+ readonly clicks: z.ZodNumber;
3692
+ readonly position: z.ZodNumber;
3693
+ }, z.core.$strip>>;
3694
+ readonly total: z.ZodNumber;
3695
+ readonly pagesScanned: z.ZodNumber;
3696
+ readonly pagesTotal: z.ZodNumber;
3697
+ }, z.core.$strip>;
3698
+ meta: z.ZodObject<{
3699
+ requestId: z.ZodString;
3700
+ version: z.ZodLiteral<"1.0">;
3701
+ }, z.core.$loose>;
3702
+ }, z.core.$strip>>;
3703
+ };
3704
+ readonly errors: readonly ["invalid_request", "unauthorized", "auth_expired", "forbidden", "not_found", "rate_limited", "provider_unavailable", "contract_violation", "internal_error"];
3705
+ readonly errorResponse: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
3706
+ readonly error: z.ZodObject<{
3707
+ code: z.ZodEnum<{
3708
+ auth_expired: "auth_expired";
3709
+ conflict: "conflict";
3710
+ contract_violation: "contract_violation";
3711
+ entitlement_required: "entitlement_required";
3712
+ forbidden: "forbidden";
3713
+ internal_error: "internal_error";
3714
+ invalid_request: "invalid_request";
3715
+ not_found: "not_found";
3716
+ provider_unavailable: "provider_unavailable";
3717
+ quota_exhausted: "quota_exhausted";
3718
+ rate_limited: "rate_limited";
3719
+ site_ambiguous: "site_ambiguous";
3720
+ stale_evidence: "stale_evidence";
3721
+ unauthorized: "unauthorized";
3722
+ }>;
3723
+ message: z.ZodString;
3724
+ requestId: z.ZodString;
3725
+ retryable: z.ZodBoolean;
3726
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3727
+ }, z.core.$strict>;
3728
+ }, z.core.$strip>, z.ZodObject<{
3729
+ readonly error: z.ZodObject<{
3730
+ code: z.ZodEnum<{
3731
+ auth_expired: "auth_expired";
3732
+ conflict: "conflict";
3733
+ contract_violation: "contract_violation";
3734
+ entitlement_required: "entitlement_required";
3735
+ forbidden: "forbidden";
3736
+ internal_error: "internal_error";
3737
+ invalid_request: "invalid_request";
3738
+ not_found: "not_found";
3739
+ provider_unavailable: "provider_unavailable";
3740
+ quota_exhausted: "quota_exhausted";
3741
+ rate_limited: "rate_limited";
3742
+ site_ambiguous: "site_ambiguous";
3743
+ stale_evidence: "stale_evidence";
3744
+ unauthorized: "unauthorized";
3745
+ }>;
3746
+ message: z.ZodString;
3747
+ requestId: z.ZodString;
3748
+ retryable: z.ZodBoolean;
3749
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3750
+ }, z.core.$loose>;
3751
+ }, z.core.$strip>>;
3752
+ readonly resources: {
3753
+ readonly reads: readonly [{
3754
+ readonly type: 'site.audit';
3755
+ readonly idFrom: 'params.siteId';
3756
+ }];
3757
+ readonly changes: readonly [];
3758
+ };
3759
+ readonly policy: {
3760
+ readonly rate: {
3761
+ readonly name: 'public-v1-fixed-window';
3762
+ readonly limit: 50;
3763
+ readonly windowSeconds: 60;
3764
+ };
3765
+ readonly idempotency: {
3766
+ readonly _tag: 'none';
3767
+ };
3768
+ readonly entitlement: null;
3769
+ readonly meter: null;
3770
+ };
3771
+ readonly lifecycle: {
3772
+ readonly introduced: '1.0.0';
3773
+ };
3774
+ readonly docs: {
3775
+ readonly summary: 'Read link opportunities';
3776
+ readonly description: 'Returns source pages that mention a target query without linking to its ranking page, with crawl coverage disclosed.';
3777
+ readonly tags: readonly ["Audit"];
3778
+ readonly examples: readonly [{
3779
+ readonly request: {
3780
+ readonly params: {
3781
+ readonly siteId: 'site_01JXYZ';
3782
+ };
3783
+ };
3784
+ readonly response: {
3785
+ readonly status: 200;
3786
+ readonly body: {
3787
+ readonly data: {
3788
+ readonly connected: true;
3789
+ readonly textUnavailable: false;
3790
+ readonly rows: readonly [{
3791
+ readonly sourceUrl: 'https://example.com/handbook';
3792
+ readonly sourcePath: '/handbook';
3793
+ readonly sourceRank: 72;
3794
+ readonly targetUrl: 'https://example.com/guide';
3795
+ readonly targetPath: '/guide';
3796
+ readonly phrase: 'technical SEO guide';
3797
+ readonly snippet: 'Read our technical SEO guide before launch.';
3798
+ readonly impressions: 900;
3799
+ readonly clicks: 18;
3800
+ readonly position: 8.2;
3801
+ }];
3802
+ readonly total: 1;
3803
+ readonly pagesScanned: 152;
3804
+ readonly pagesTotal: 154;
3805
+ };
3806
+ readonly meta: {
3807
+ readonly requestId: 'req_01JXYZ';
3808
+ readonly version: '1.0';
3809
+ };
3810
+ };
3811
+ };
3812
+ }];
3813
+ };
3814
+ };
3815
+ readonly linkStructure: {
3816
+ readonly id: 'audit.link.structure';
3817
+ readonly method: 'GET';
3818
+ readonly path: '/api/v1/sites/{siteId}/audit/link-structure';
3819
+ readonly visibility: 'public';
3820
+ readonly semantics: {
3821
+ readonly kind: 'query';
3822
+ readonly sideEffects: 'none';
3823
+ readonly retry: 'idempotent';
3824
+ readonly readConsistency: 'primary';
3825
+ };
3826
+ readonly auth: {
3827
+ readonly credentials: readonly ['session', 'api_token'];
3828
+ readonly scopes: readonly ['audit:read'];
3829
+ readonly minimumRole: 'viewer';
3830
+ readonly ownership: 'site';
3831
+ };
3832
+ readonly request: {
3833
+ readonly params: z.ZodObject<{
3834
+ siteId: z.ZodString;
3835
+ }, z.core.$strict>;
3836
+ readonly query: null;
3837
+ readonly headers: null;
3838
+ readonly body: null;
3839
+ };
3840
+ readonly responses: {
3841
+ readonly 200: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
3842
+ data: z.ZodObject<{
3843
+ readonly gscConnected: z.ZodBoolean;
3844
+ readonly internalLinks: z.ZodNumber;
3845
+ readonly templateLinks: z.ZodNumber;
3846
+ readonly templateTargets: z.ZodNumber;
3847
+ readonly editorialLinks: z.ZodNumber;
3848
+ readonly editorialTargets: z.ZodNumber;
3849
+ readonly templateSlots: z.ZodArray<z.ZodObject<{
3850
+ readonly url: z.ZodString;
3851
+ readonly path: z.ZodString;
3852
+ readonly templateLinks: z.ZodNumber;
3853
+ readonly sourcePages: z.ZodNumber;
3854
+ readonly locations: z.ZodArray<z.ZodString>;
3855
+ readonly share: z.ZodNumber;
3856
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
3857
+ }, z.core.$strip>>;
3858
+ readonly templateSlotTotal: z.ZodNumber;
3859
+ readonly deadEnds: z.ZodArray<z.ZodObject<{
3860
+ readonly label: z.ZodString;
3861
+ readonly pages: z.ZodNumber;
3862
+ readonly examples: z.ZodArray<z.ZodString>;
3863
+ readonly topRank: z.ZodNullable<z.ZodNumber>;
3864
+ readonly singleUrl: z.ZodNullable<z.ZodString>;
3865
+ }, z.core.$strip>>;
3866
+ readonly deadEndGroupTotal: z.ZodNumber;
3867
+ readonly deadEndPageTotal: z.ZodNumber;
3868
+ readonly deadEndScanTruncated: z.ZodBoolean;
3869
+ readonly genericAnchors: z.ZodArray<z.ZodObject<{
3870
+ readonly anchor: z.ZodString;
3871
+ readonly links: z.ZodNumber;
3872
+ readonly targets: z.ZodNumber;
3873
+ readonly exampleTargets: z.ZodArray<z.ZodString>;
3874
+ }, z.core.$strip>>;
3875
+ readonly genericAnchorTotal: z.ZodNumber;
3876
+ readonly genericAnchorLinks: z.ZodNumber;
3877
+ }, z.core.$strip>;
3878
+ meta: z.ZodObject<{
3879
+ requestId: z.ZodString;
3880
+ version: z.ZodLiteral<"1.0">;
3881
+ }, z.core.$strict>;
3882
+ }, z.core.$strip>, z.ZodObject<{
3883
+ data: z.ZodObject<{
3884
+ readonly gscConnected: z.ZodBoolean;
3885
+ readonly internalLinks: z.ZodNumber;
3886
+ readonly templateLinks: z.ZodNumber;
3887
+ readonly templateTargets: z.ZodNumber;
3888
+ readonly editorialLinks: z.ZodNumber;
3889
+ readonly editorialTargets: z.ZodNumber;
3890
+ readonly templateSlots: z.ZodArray<z.ZodObject<{
3891
+ readonly url: z.ZodString;
3892
+ readonly path: z.ZodString;
3893
+ readonly templateLinks: z.ZodNumber;
3894
+ readonly sourcePages: z.ZodNumber;
3895
+ readonly locations: z.ZodArray<z.ZodString>;
3896
+ readonly share: z.ZodNumber;
3897
+ readonly clicks: z.ZodNullable<z.ZodNumber>;
3898
+ }, z.core.$strip>>;
3899
+ readonly templateSlotTotal: z.ZodNumber;
3900
+ readonly deadEnds: z.ZodArray<z.ZodObject<{
3901
+ readonly label: z.ZodString;
3902
+ readonly pages: z.ZodNumber;
3903
+ readonly examples: z.ZodArray<z.ZodString>;
3904
+ readonly topRank: z.ZodNullable<z.ZodNumber>;
3905
+ readonly singleUrl: z.ZodNullable<z.ZodString>;
3906
+ }, z.core.$strip>>;
3907
+ readonly deadEndGroupTotal: z.ZodNumber;
3908
+ readonly deadEndPageTotal: z.ZodNumber;
3909
+ readonly deadEndScanTruncated: z.ZodBoolean;
3910
+ readonly genericAnchors: z.ZodArray<z.ZodObject<{
3911
+ readonly anchor: z.ZodString;
3912
+ readonly links: z.ZodNumber;
3913
+ readonly targets: z.ZodNumber;
3914
+ readonly exampleTargets: z.ZodArray<z.ZodString>;
3915
+ }, z.core.$strip>>;
3916
+ readonly genericAnchorTotal: z.ZodNumber;
3917
+ readonly genericAnchorLinks: z.ZodNumber;
3918
+ }, z.core.$strip>;
3919
+ meta: z.ZodObject<{
3920
+ requestId: z.ZodString;
3921
+ version: z.ZodLiteral<"1.0">;
3922
+ }, z.core.$loose>;
3923
+ }, z.core.$strip>>;
3924
+ };
3925
+ readonly errors: readonly ["invalid_request", "unauthorized", "auth_expired", "forbidden", "not_found", "rate_limited", "provider_unavailable", "contract_violation", "internal_error"];
3926
+ readonly errorResponse: import("./core.js").CompatibleResponseSchema<z.ZodObject<{
3927
+ readonly error: z.ZodObject<{
3928
+ code: z.ZodEnum<{
3929
+ auth_expired: "auth_expired";
3930
+ conflict: "conflict";
3931
+ contract_violation: "contract_violation";
3932
+ entitlement_required: "entitlement_required";
3933
+ forbidden: "forbidden";
3934
+ internal_error: "internal_error";
3935
+ invalid_request: "invalid_request";
3936
+ not_found: "not_found";
3937
+ provider_unavailable: "provider_unavailable";
3938
+ quota_exhausted: "quota_exhausted";
3939
+ rate_limited: "rate_limited";
3940
+ site_ambiguous: "site_ambiguous";
3941
+ stale_evidence: "stale_evidence";
3942
+ unauthorized: "unauthorized";
3943
+ }>;
3944
+ message: z.ZodString;
3945
+ requestId: z.ZodString;
3946
+ retryable: z.ZodBoolean;
3947
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3948
+ }, z.core.$strict>;
3949
+ }, z.core.$strip>, z.ZodObject<{
3950
+ readonly error: z.ZodObject<{
3951
+ code: z.ZodEnum<{
3952
+ auth_expired: "auth_expired";
3953
+ conflict: "conflict";
3954
+ contract_violation: "contract_violation";
3955
+ entitlement_required: "entitlement_required";
3956
+ forbidden: "forbidden";
3957
+ internal_error: "internal_error";
3958
+ invalid_request: "invalid_request";
3959
+ not_found: "not_found";
3960
+ provider_unavailable: "provider_unavailable";
3961
+ quota_exhausted: "quota_exhausted";
3962
+ rate_limited: "rate_limited";
3963
+ site_ambiguous: "site_ambiguous";
3964
+ stale_evidence: "stale_evidence";
3965
+ unauthorized: "unauthorized";
3966
+ }>;
3967
+ message: z.ZodString;
3968
+ requestId: z.ZodString;
3969
+ retryable: z.ZodBoolean;
3970
+ details: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3971
+ }, z.core.$loose>;
3972
+ }, z.core.$strip>>;
3973
+ readonly resources: {
3974
+ readonly reads: readonly [{
3975
+ readonly type: 'site.audit';
3976
+ readonly idFrom: 'params.siteId';
3977
+ }];
3978
+ readonly changes: readonly [];
3979
+ };
3980
+ readonly policy: {
3981
+ readonly rate: {
3982
+ readonly name: 'public-v1-fixed-window';
3983
+ readonly limit: 50;
3984
+ readonly windowSeconds: 60;
3985
+ };
3986
+ readonly idempotency: {
3987
+ readonly _tag: 'none';
3988
+ };
3989
+ readonly entitlement: null;
3990
+ readonly meter: null;
3991
+ };
3992
+ readonly lifecycle: {
3993
+ readonly introduced: '1.0.0';
3994
+ };
3995
+ readonly docs: {
3996
+ readonly summary: 'Read link structure';
3997
+ readonly description: 'Summarizes internal link allocation across template slots, dead-end route families and generic editorial anchors.';
3998
+ readonly tags: readonly ["Audit"];
3999
+ readonly examples: readonly [{
4000
+ readonly request: {
4001
+ readonly params: {
4002
+ readonly siteId: 'site_01JXYZ';
4003
+ };
4004
+ };
4005
+ readonly response: {
4006
+ readonly status: 200;
4007
+ readonly body: {
4008
+ readonly data: {
4009
+ readonly gscConnected: true;
4010
+ readonly internalLinks: 1400;
4011
+ readonly templateLinks: 900;
4012
+ readonly templateTargets: 12;
4013
+ readonly editorialLinks: 500;
4014
+ readonly editorialTargets: 120;
4015
+ readonly templateSlots: readonly [{
4016
+ readonly url: 'https://example.com/pricing';
4017
+ readonly path: '/pricing';
4018
+ readonly templateLinks: 120;
4019
+ readonly sourcePages: 118;
4020
+ readonly locations: readonly ["nav", "footer"];
4021
+ readonly share: 0.13;
4022
+ readonly clicks: 40;
4023
+ }];
4024
+ readonly templateSlotTotal: 12;
4025
+ readonly deadEnds: readonly [{
4026
+ readonly label: '/archive/*';
4027
+ readonly pages: 5;
4028
+ readonly examples: readonly ["/archive/2024"];
4029
+ readonly topRank: 18;
4030
+ readonly singleUrl: null;
4031
+ }];
4032
+ readonly deadEndGroupTotal: 1;
4033
+ readonly deadEndPageTotal: 5;
4034
+ readonly deadEndScanTruncated: false;
4035
+ readonly genericAnchors: readonly [{
4036
+ readonly anchor: 'click here';
4037
+ readonly links: 9;
4038
+ readonly targets: 4;
4039
+ readonly exampleTargets: readonly ["/guide"];
4040
+ }];
4041
+ readonly genericAnchorTotal: 1;
4042
+ readonly genericAnchorLinks: 9;
4043
+ };
4044
+ readonly meta: {
4045
+ readonly requestId: 'req_01JXYZ';
4046
+ readonly version: '1.0';
4047
+ };
4048
+ };
4049
+ };
4050
+ }];
4051
+ };
4052
+ };
4053
+ }>;