@redocly/openapi-core 1.0.0-beta.99 → 1.0.0-rc.1

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 (382) hide show
  1. package/README.md +6 -6
  2. package/lib/benchmark/benches/lint-with-top-level-rule-report.bench.js +0 -1
  3. package/lib/benchmark/benches/recommended-oas3.bench.js +1 -1
  4. package/lib/benchmark/benches/resolve-with-no-external.bench.js +1 -1
  5. package/lib/benchmark/utils.d.ts +2 -2
  6. package/lib/benchmark/utils.js +2 -2
  7. package/lib/bundle.d.ts +10 -15
  8. package/lib/bundle.js +32 -12
  9. package/lib/config/all.d.ts +2 -2
  10. package/lib/config/all.js +16 -6
  11. package/lib/config/builtIn.d.ts +2 -2
  12. package/lib/config/builtIn.js +2 -2
  13. package/lib/config/config-resolvers.d.ts +5 -5
  14. package/lib/config/config-resolvers.js +121 -66
  15. package/lib/config/config.d.ts +12 -18
  16. package/lib/config/config.js +42 -26
  17. package/lib/config/load.d.ts +16 -3
  18. package/lib/config/load.js +36 -14
  19. package/lib/config/minimal.d.ts +2 -2
  20. package/lib/config/minimal.js +10 -6
  21. package/lib/config/recommended.d.ts +2 -2
  22. package/lib/config/recommended.js +10 -6
  23. package/lib/config/rules.d.ts +7 -4
  24. package/lib/config/rules.js +5 -4
  25. package/lib/config/types.d.ts +72 -23
  26. package/lib/config/types.js +13 -0
  27. package/lib/config/utils.d.ts +6 -5
  28. package/lib/config/utils.js +110 -32
  29. package/lib/decorators/common/filters/filter-helper.d.ts +3 -0
  30. package/lib/decorators/common/filters/filter-helper.js +67 -0
  31. package/lib/decorators/common/filters/filter-in.d.ts +2 -0
  32. package/lib/decorators/common/filters/filter-in.js +17 -0
  33. package/lib/decorators/common/filters/filter-out.d.ts +2 -0
  34. package/lib/decorators/common/filters/filter-out.js +17 -0
  35. package/lib/decorators/common/info-override.d.ts +2 -0
  36. package/lib/decorators/common/info-override.js +28 -0
  37. package/lib/decorators/common/media-type-examples-override.d.ts +2 -0
  38. package/lib/decorators/common/media-type-examples-override.js +53 -0
  39. package/lib/decorators/common/registry-dependencies.js +2 -2
  40. package/lib/decorators/common/remove-x-internal.js +2 -2
  41. package/lib/decorators/oas2/index.d.ts +3 -0
  42. package/lib/decorators/oas2/index.js +7 -1
  43. package/lib/decorators/oas3/index.d.ts +4 -0
  44. package/lib/decorators/oas3/index.js +9 -1
  45. package/lib/env.d.ts +3 -0
  46. package/lib/env.js +8 -0
  47. package/lib/format/codeframes.js +16 -10
  48. package/lib/format/format.d.ts +1 -1
  49. package/lib/format/format.js +64 -32
  50. package/lib/index.d.ts +6 -6
  51. package/lib/index.js +7 -2
  52. package/lib/js-yaml/index.js +2 -6
  53. package/lib/lint.d.ts +4 -2
  54. package/lib/lint.js +36 -11
  55. package/lib/logger.d.ts +10 -0
  56. package/lib/logger.js +31 -0
  57. package/lib/output.d.ts +3 -0
  58. package/lib/output.js +9 -0
  59. package/lib/redocly/index.js +10 -9
  60. package/lib/redocly/registry-api-types.d.ts +28 -28
  61. package/lib/redocly/registry-api.d.ts +3 -3
  62. package/lib/redocly/registry-api.js +10 -2
  63. package/lib/ref-utils.d.ts +1 -0
  64. package/lib/ref-utils.js +7 -2
  65. package/lib/resolve.d.ts +1 -1
  66. package/lib/resolve.js +33 -3
  67. package/lib/rules/ajv.d.ts +2 -2
  68. package/lib/rules/ajv.js +12 -12
  69. package/lib/rules/common/assertions/asserts.d.ts +29 -4
  70. package/lib/rules/common/assertions/asserts.js +227 -97
  71. package/lib/rules/common/assertions/index.d.ts +27 -2
  72. package/lib/rules/common/assertions/index.js +9 -37
  73. package/lib/rules/common/assertions/utils.d.ts +16 -8
  74. package/lib/rules/common/assertions/utils.js +160 -76
  75. package/lib/rules/common/info-license-url.d.ts +1 -1
  76. package/lib/rules/common/info-license-url.js +5 -10
  77. package/lib/rules/common/info-license.d.ts +2 -0
  78. package/lib/rules/common/info-license.js +17 -0
  79. package/lib/rules/common/no-ambiguous-paths.js +1 -1
  80. package/lib/rules/common/no-enum-type-mismatch.js +1 -3
  81. package/lib/rules/common/no-identical-paths.js +4 -4
  82. package/lib/rules/common/no-invalid-parameter-examples.js +3 -3
  83. package/lib/rules/common/no-invalid-schema-examples.js +3 -3
  84. package/lib/rules/common/operation-2xx-response.js +15 -9
  85. package/lib/rules/common/operation-4xx-response.js +15 -9
  86. package/lib/rules/common/operation-operationId.js +2 -2
  87. package/lib/rules/common/operation-tag-defined.js +1 -1
  88. package/lib/rules/common/path-not-include-query.js +2 -2
  89. package/lib/rules/common/path-params-defined.js +7 -2
  90. package/lib/rules/common/paths-kebab-case.js +4 -1
  91. package/lib/rules/common/required-string-property-missing-min-length.d.ts +2 -0
  92. package/lib/rules/common/required-string-property-missing-min-length.js +37 -0
  93. package/lib/rules/common/response-contains-header.js +2 -2
  94. package/lib/rules/common/scalar-property-missing-example.js +2 -1
  95. package/lib/rules/common/security-defined.d.ts +2 -0
  96. package/lib/rules/common/{operation-security-defined.js → security-defined.js} +25 -6
  97. package/lib/rules/common/spec-strict-refs.d.ts +2 -0
  98. package/lib/rules/common/spec-strict-refs.js +30 -0
  99. package/lib/rules/common/spec.js +41 -18
  100. package/lib/rules/common/tags-alphabetical.js +1 -1
  101. package/lib/rules/oas2/index.d.ts +3 -2
  102. package/lib/rules/oas2/index.js +10 -8
  103. package/lib/rules/oas2/remove-unused-components.js +6 -6
  104. package/lib/rules/oas2/request-mime-type.d.ts +1 -1
  105. package/lib/rules/oas2/request-mime-type.js +1 -1
  106. package/lib/rules/oas2/response-mime-type.d.ts +1 -1
  107. package/lib/rules/oas2/response-mime-type.js +1 -1
  108. package/lib/rules/oas3/component-name-unique.d.ts +2 -0
  109. package/lib/rules/oas3/component-name-unique.js +124 -0
  110. package/lib/rules/oas3/index.js +18 -10
  111. package/lib/rules/oas3/no-empty-servers.js +2 -2
  112. package/lib/rules/oas3/no-invalid-media-type-examples.js +2 -2
  113. package/lib/rules/oas3/no-server-variables-empty-enum.d.ts +2 -0
  114. package/lib/rules/oas3/{no-servers-empty-enum.js → no-server-variables-empty-enum.js} +5 -5
  115. package/lib/rules/oas3/no-unused-components.js +2 -2
  116. package/lib/rules/oas3/operation-4xx-problem-details-rfc7807.d.ts +5 -0
  117. package/lib/rules/oas3/operation-4xx-problem-details-rfc7807.js +36 -0
  118. package/lib/rules/oas3/remove-unused-components.js +6 -6
  119. package/lib/rules/oas3/request-mime-type.d.ts +1 -1
  120. package/lib/rules/oas3/request-mime-type.js +1 -1
  121. package/lib/rules/oas3/response-mime-type.d.ts +1 -1
  122. package/lib/rules/oas3/response-mime-type.js +1 -1
  123. package/lib/rules/oas3/spec-components-invalid-map-name.d.ts +2 -0
  124. package/lib/rules/oas3/spec-components-invalid-map-name.js +62 -0
  125. package/lib/rules/other/stats.d.ts +2 -2
  126. package/lib/rules/other/stats.js +45 -16
  127. package/lib/rules/utils.d.ts +5 -2
  128. package/lib/rules/utils.js +54 -6
  129. package/lib/types/config-external-schemas.d.ts +2193 -0
  130. package/lib/types/config-external-schemas.js +805 -0
  131. package/lib/types/index.d.ts +3 -2
  132. package/lib/types/index.js +9 -1
  133. package/lib/types/oas2.js +91 -15
  134. package/lib/types/oas3.js +125 -46
  135. package/lib/types/oas3_1.js +23 -19
  136. package/lib/types/redocly-yaml.js +406 -60
  137. package/lib/utils.d.ts +15 -4
  138. package/lib/utils.js +72 -8
  139. package/lib/visitors.d.ts +20 -16
  140. package/lib/visitors.js +28 -3
  141. package/lib/walk.d.ts +11 -19
  142. package/lib/walk.js +74 -53
  143. package/package.json +5 -6
  144. package/__tests__/utils.ts +0 -86
  145. package/lib/rules/common/info-description.d.ts +0 -2
  146. package/lib/rules/common/info-description.js +0 -12
  147. package/lib/rules/common/license-url.d.ts +0 -2
  148. package/lib/rules/common/license-url.js +0 -12
  149. package/lib/rules/common/operation-security-defined.d.ts +0 -2
  150. package/lib/rules/oas3/no-servers-empty-enum.d.ts +0 -2
  151. package/src/__tests__/__snapshots__/bundle.test.ts.snap +0 -255
  152. package/src/__tests__/bundle.test.ts +0 -156
  153. package/src/__tests__/codeframes.test.ts +0 -531
  154. package/src/__tests__/fixtures/extension.js +0 -24
  155. package/src/__tests__/fixtures/refs/definitions.yaml +0 -3
  156. package/src/__tests__/fixtures/refs/examples.yaml +0 -8
  157. package/src/__tests__/fixtures/refs/external-request-body.yaml +0 -13
  158. package/src/__tests__/fixtures/refs/externalref.yaml +0 -35
  159. package/src/__tests__/fixtures/refs/hosted.yaml +0 -35
  160. package/src/__tests__/fixtures/refs/openapi-with-external-refs-conflicting-names.yaml +0 -21
  161. package/src/__tests__/fixtures/refs/openapi-with-external-refs.yaml +0 -33
  162. package/src/__tests__/fixtures/refs/openapi-with-url-refs.yaml +0 -18
  163. package/src/__tests__/fixtures/refs/param-b.yaml +0 -1
  164. package/src/__tests__/fixtures/refs/param-c.yaml +0 -1
  165. package/src/__tests__/fixtures/refs/rename.yaml +0 -1
  166. package/src/__tests__/fixtures/refs/requestBody.yaml +0 -9
  167. package/src/__tests__/fixtures/refs/schema-a.yaml +0 -1
  168. package/src/__tests__/fixtures/refs/simple.yaml +0 -1
  169. package/src/__tests__/fixtures/refs/vendor.schema.yaml +0 -20
  170. package/src/__tests__/fixtures/resolve/External.yaml +0 -10
  171. package/src/__tests__/fixtures/resolve/External2.yaml +0 -4
  172. package/src/__tests__/fixtures/resolve/description.md +0 -3
  173. package/src/__tests__/fixtures/resolve/externalInfo.yaml +0 -4
  174. package/src/__tests__/fixtures/resolve/externalLicense.yaml +0 -1
  175. package/src/__tests__/fixtures/resolve/openapi-with-back.yaml +0 -13
  176. package/src/__tests__/fixtures/resolve/openapi-with-md-description.yaml +0 -5
  177. package/src/__tests__/fixtures/resolve/openapi.yaml +0 -28
  178. package/src/__tests__/fixtures/resolve/schemas/type-a.yaml +0 -10
  179. package/src/__tests__/fixtures/resolve/schemas/type-b.yaml +0 -6
  180. package/src/__tests__/fixtures/resolve/transitive/a.yaml +0 -1
  181. package/src/__tests__/fixtures/resolve/transitive/components.yaml +0 -5
  182. package/src/__tests__/fixtures/resolve/transitive/schemas.yaml +0 -3
  183. package/src/__tests__/js-yaml.test.ts +0 -71
  184. package/src/__tests__/lint.test.ts +0 -195
  185. package/src/__tests__/login.test.ts +0 -17
  186. package/src/__tests__/normalizeVisitors.test.ts +0 -151
  187. package/src/__tests__/ref-utils.test.ts +0 -120
  188. package/src/__tests__/resolve-http.test.ts +0 -77
  189. package/src/__tests__/resolve.test.ts +0 -405
  190. package/src/__tests__/utils.test.ts +0 -85
  191. package/src/__tests__/walk.test.ts +0 -1485
  192. package/src/benchmark/benches/lint-with-many-rules.bench.ts +0 -35
  193. package/src/benchmark/benches/lint-with-nested-rule.bench.ts +0 -39
  194. package/src/benchmark/benches/lint-with-no-rules.bench.ts +0 -20
  195. package/src/benchmark/benches/lint-with-top-level-rule-report.bench.ts +0 -36
  196. package/src/benchmark/benches/lint-with-top-level-rule.bench.ts +0 -32
  197. package/src/benchmark/benches/rebilly.yaml +0 -32267
  198. package/src/benchmark/benches/recommended-oas3.bench.ts +0 -22
  199. package/src/benchmark/benches/resolve-with-no-external.bench.ts +0 -23
  200. package/src/benchmark/benchmark.js +0 -307
  201. package/src/benchmark/colors.js +0 -29
  202. package/src/benchmark/fork.js +0 -83
  203. package/src/benchmark/utils.ts +0 -36
  204. package/src/bundle.ts +0 -386
  205. package/src/config/__tests__/__snapshots__/config-resolvers.test.ts.snap +0 -157
  206. package/src/config/__tests__/config-resolvers.test.ts +0 -429
  207. package/src/config/__tests__/config.test.ts +0 -244
  208. package/src/config/__tests__/fixtures/plugin-config.yaml +0 -3
  209. package/src/config/__tests__/fixtures/plugin.js +0 -56
  210. package/src/config/__tests__/fixtures/resolve-config/api/nested-config.yaml +0 -12
  211. package/src/config/__tests__/fixtures/resolve-config/api/plugin.js +0 -67
  212. package/src/config/__tests__/fixtures/resolve-config/local-config-with-circular.yaml +0 -8
  213. package/src/config/__tests__/fixtures/resolve-config/local-config-with-file.yaml +0 -19
  214. package/src/config/__tests__/fixtures/resolve-config/local-config.yaml +0 -10
  215. package/src/config/__tests__/fixtures/resolve-config/plugin.js +0 -66
  216. package/src/config/__tests__/fixtures/resolve-remote-configs/nested-remote-config.yaml +0 -4
  217. package/src/config/__tests__/fixtures/resolve-remote-configs/remote-config.yaml +0 -5
  218. package/src/config/__tests__/load.test.ts +0 -83
  219. package/src/config/__tests__/resolve-plugins.test.ts +0 -27
  220. package/src/config/all.ts +0 -66
  221. package/src/config/builtIn.ts +0 -37
  222. package/src/config/config-resolvers.ts +0 -359
  223. package/src/config/config.ts +0 -312
  224. package/src/config/index.ts +0 -7
  225. package/src/config/load.ts +0 -84
  226. package/src/config/minimal.ts +0 -58
  227. package/src/config/recommended.ts +0 -58
  228. package/src/config/rules.ts +0 -46
  229. package/src/config/types.ts +0 -168
  230. package/src/config/utils.ts +0 -208
  231. package/src/decorators/__tests__/remove-x-internal.test.ts +0 -316
  232. package/src/decorators/common/info-description-override.ts +0 -24
  233. package/src/decorators/common/operation-description-override.ts +0 -30
  234. package/src/decorators/common/registry-dependencies.ts +0 -25
  235. package/src/decorators/common/remove-x-internal.ts +0 -59
  236. package/src/decorators/common/tag-description-override.ts +0 -25
  237. package/src/decorators/oas2/index.ts +0 -14
  238. package/src/decorators/oas3/index.ts +0 -14
  239. package/src/format/codeframes.ts +0 -210
  240. package/src/format/format.ts +0 -339
  241. package/src/index.ts +0 -68
  242. package/src/js-yaml/index.ts +0 -18
  243. package/src/lint.ts +0 -125
  244. package/src/oas-types.ts +0 -62
  245. package/src/redocly/__tests__/redocly-client.test.ts +0 -140
  246. package/src/redocly/index.ts +0 -182
  247. package/src/redocly/redocly-client-types.ts +0 -10
  248. package/src/redocly/registry-api-types.ts +0 -32
  249. package/src/redocly/registry-api.ts +0 -134
  250. package/src/ref-utils.ts +0 -80
  251. package/src/resolve.ts +0 -378
  252. package/src/rules/__tests__/fixtures/invalid-yaml.yaml +0 -1
  253. package/src/rules/__tests__/fixtures/ref.yaml +0 -1
  254. package/src/rules/__tests__/no-unresolved-refs.test.ts +0 -168
  255. package/src/rules/ajv.ts +0 -103
  256. package/src/rules/common/__tests__/info-description.test.ts +0 -102
  257. package/src/rules/common/__tests__/info-license.test.ts +0 -62
  258. package/src/rules/common/__tests__/license-url.test.ts +0 -63
  259. package/src/rules/common/__tests__/no-ambiguous-paths.test.ts +0 -96
  260. package/src/rules/common/__tests__/no-enum-type-mismatch.test.ts +0 -209
  261. package/src/rules/common/__tests__/no-identical-paths.test.ts +0 -58
  262. package/src/rules/common/__tests__/no-path-trailing-slash.test.ts +0 -85
  263. package/src/rules/common/__tests__/operation-2xx-response.test.ts +0 -91
  264. package/src/rules/common/__tests__/operation-4xx-response.test.ts +0 -107
  265. package/src/rules/common/__tests__/operation-operationId-unique.test.ts +0 -76
  266. package/src/rules/common/__tests__/operation-operationId-url-safe.test.ts +0 -45
  267. package/src/rules/common/__tests__/operation-parameters-unique.test.ts +0 -167
  268. package/src/rules/common/__tests__/operation-security-defined.test.ts +0 -69
  269. package/src/rules/common/__tests__/operation-singular-tag.test.ts +0 -72
  270. package/src/rules/common/__tests__/path-http-verbs-order.test.ts +0 -95
  271. package/src/rules/common/__tests__/path-not-include-query.test.ts +0 -64
  272. package/src/rules/common/__tests__/path-params-defined.test.ts +0 -133
  273. package/src/rules/common/__tests__/paths-kebab-case.test.ts +0 -108
  274. package/src/rules/common/__tests__/scalar-property-missing-example.test.ts +0 -207
  275. package/src/rules/common/__tests__/spec.test.ts +0 -62
  276. package/src/rules/common/__tests__/tag-description.test.ts +0 -65
  277. package/src/rules/common/__tests__/tags-alphabetical.test.ts +0 -64
  278. package/src/rules/common/assertions/__tests__/asserts.test.ts +0 -231
  279. package/src/rules/common/assertions/__tests__/index.test.ts +0 -65
  280. package/src/rules/common/assertions/__tests__/utils.test.ts +0 -89
  281. package/src/rules/common/assertions/asserts.ts +0 -137
  282. package/src/rules/common/assertions/index.ts +0 -75
  283. package/src/rules/common/assertions/utils.ts +0 -167
  284. package/src/rules/common/info-contact.ts +0 -15
  285. package/src/rules/common/info-description.ts +0 -10
  286. package/src/rules/common/info-license-url.ts +0 -15
  287. package/src/rules/common/license-url.ts +0 -10
  288. package/src/rules/common/no-ambiguous-paths.ts +0 -50
  289. package/src/rules/common/no-enum-type-mismatch.ts +0 -49
  290. package/src/rules/common/no-http-verbs-in-paths.ts +0 -36
  291. package/src/rules/common/no-identical-paths.ts +0 -24
  292. package/src/rules/common/no-invalid-parameter-examples.ts +0 -36
  293. package/src/rules/common/no-invalid-schema-examples.ts +0 -27
  294. package/src/rules/common/no-path-trailing-slash.ts +0 -15
  295. package/src/rules/common/operation-2xx-response.ts +0 -16
  296. package/src/rules/common/operation-4xx-response.ts +0 -17
  297. package/src/rules/common/operation-description.ts +0 -13
  298. package/src/rules/common/operation-operationId-unique.ts +0 -21
  299. package/src/rules/common/operation-operationId-url-safe.ts +0 -19
  300. package/src/rules/common/operation-operationId.ts +0 -17
  301. package/src/rules/common/operation-parameters-unique.ts +0 -48
  302. package/src/rules/common/operation-security-defined.ts +0 -45
  303. package/src/rules/common/operation-singular-tag.ts +0 -17
  304. package/src/rules/common/operation-summary.ts +0 -13
  305. package/src/rules/common/operation-tag-defined.ts +0 -26
  306. package/src/rules/common/parameter-description.ts +0 -22
  307. package/src/rules/common/path-declaration-must-exist.ts +0 -15
  308. package/src/rules/common/path-excludes-patterns.ts +0 -23
  309. package/src/rules/common/path-http-verbs-order.ts +0 -30
  310. package/src/rules/common/path-not-include-query.ts +0 -17
  311. package/src/rules/common/path-params-defined.ts +0 -58
  312. package/src/rules/common/path-segment-plural.ts +0 -31
  313. package/src/rules/common/paths-kebab-case.ts +0 -16
  314. package/src/rules/common/response-contains-header.ts +0 -30
  315. package/src/rules/common/scalar-property-missing-example.ts +0 -55
  316. package/src/rules/common/spec.ts +0 -143
  317. package/src/rules/common/tag-description.ts +0 -10
  318. package/src/rules/common/tags-alphabetical.ts +0 -20
  319. package/src/rules/no-unresolved-refs.ts +0 -51
  320. package/src/rules/oas2/__tests__/boolean-parameter-prefixes.test.ts +0 -110
  321. package/src/rules/oas2/__tests__/response-contains-header.test.ts +0 -174
  322. package/src/rules/oas2/__tests__/response-contains-property.test.ts +0 -155
  323. package/src/rules/oas2/__tests__/spec/fixtures/description.md +0 -1
  324. package/src/rules/oas2/__tests__/spec/info.test.ts +0 -355
  325. package/src/rules/oas2/__tests__/spec/operation.test.ts +0 -123
  326. package/src/rules/oas2/__tests__/spec/paths.test.ts +0 -245
  327. package/src/rules/oas2/__tests__/spec/referenceableScalars.test.ts +0 -31
  328. package/src/rules/oas2/__tests__/spec/utils.ts +0 -32
  329. package/src/rules/oas2/boolean-parameter-prefixes.ts +0 -26
  330. package/src/rules/oas2/index.ts +0 -89
  331. package/src/rules/oas2/remove-unused-components.ts +0 -76
  332. package/src/rules/oas2/request-mime-type.ts +0 -17
  333. package/src/rules/oas2/response-contains-property.ts +0 -36
  334. package/src/rules/oas2/response-mime-type.ts +0 -17
  335. package/src/rules/oas3/__tests__/boolean-parameter-prefixes.test.ts +0 -111
  336. package/src/rules/oas3/__tests__/fixtures/common.yaml +0 -11
  337. package/src/rules/oas3/__tests__/no-empty-enum-servers.com.test.ts +0 -205
  338. package/src/rules/oas3/__tests__/no-example-value-and-externalValue.test.ts +0 -65
  339. package/src/rules/oas3/__tests__/no-invalid-media-type-examples.test.ts +0 -392
  340. package/src/rules/oas3/__tests__/no-server-example.com.test.ts +0 -60
  341. package/src/rules/oas3/__tests__/no-server-trailing-slash.test.ts +0 -79
  342. package/src/rules/oas3/__tests__/no-unused-components.test.ts +0 -131
  343. package/src/rules/oas3/__tests__/response-contains-header.test.ts +0 -273
  344. package/src/rules/oas3/__tests__/response-contains-property.test.ts +0 -403
  345. package/src/rules/oas3/__tests__/spec/callbacks.test.ts +0 -41
  346. package/src/rules/oas3/__tests__/spec/fixtures/description.md +0 -1
  347. package/src/rules/oas3/__tests__/spec/info.test.ts +0 -391
  348. package/src/rules/oas3/__tests__/spec/operation.test.ts +0 -253
  349. package/src/rules/oas3/__tests__/spec/paths.test.ts +0 -284
  350. package/src/rules/oas3/__tests__/spec/referenceableScalars.test.ts +0 -77
  351. package/src/rules/oas3/__tests__/spec/servers.test.ts +0 -499
  352. package/src/rules/oas3/__tests__/spec/spec.test.ts +0 -288
  353. package/src/rules/oas3/__tests__/spec/utils.ts +0 -32
  354. package/src/rules/oas3/boolean-parameter-prefixes.ts +0 -28
  355. package/src/rules/oas3/index.ts +0 -105
  356. package/src/rules/oas3/no-empty-servers.ts +0 -22
  357. package/src/rules/oas3/no-example-value-and-externalValue.ts +0 -14
  358. package/src/rules/oas3/no-invalid-media-type-examples.ts +0 -41
  359. package/src/rules/oas3/no-server-example.com.ts +0 -14
  360. package/src/rules/oas3/no-server-trailing-slash.ts +0 -15
  361. package/src/rules/oas3/no-servers-empty-enum.ts +0 -67
  362. package/src/rules/oas3/no-undefined-server-variable.ts +0 -30
  363. package/src/rules/oas3/no-unused-components.ts +0 -75
  364. package/src/rules/oas3/remove-unused-components.ts +0 -84
  365. package/src/rules/oas3/request-mime-type.ts +0 -31
  366. package/src/rules/oas3/response-contains-property.ts +0 -38
  367. package/src/rules/oas3/response-mime-type.ts +0 -31
  368. package/src/rules/other/stats.ts +0 -44
  369. package/src/rules/utils.ts +0 -123
  370. package/src/types/index.ts +0 -138
  371. package/src/types/oas2.ts +0 -397
  372. package/src/types/oas3.ts +0 -515
  373. package/src/types/oas3_1.ts +0 -253
  374. package/src/types/redocly-yaml.ts +0 -647
  375. package/src/typings/common.ts +0 -9
  376. package/src/typings/openapi.ts +0 -298
  377. package/src/typings/swagger.ts +0 -236
  378. package/src/utils.ts +0 -193
  379. package/src/visitors.ts +0 -448
  380. package/src/walk.ts +0 -416
  381. package/tsconfig.json +0 -8
  382. package/tsconfig.tsbuildinfo +0 -1
@@ -0,0 +1,2193 @@
1
+ import { ApigeeDevOnboardingIntegrationAuthType, AuthProviderType } from '../config';
2
+ export declare const rbacConfigSchema: {
3
+ readonly type: "object";
4
+ readonly properties: {
5
+ readonly defaults: {
6
+ readonly type: "object";
7
+ readonly additionalProperties: {
8
+ readonly type: "string";
9
+ };
10
+ };
11
+ };
12
+ readonly additionalProperties: {
13
+ readonly type: "object";
14
+ readonly additionalProperties: {
15
+ readonly type: "string";
16
+ };
17
+ };
18
+ };
19
+ export declare const ssoConfigSchema: {
20
+ readonly type: "object";
21
+ readonly additionalProperties: {
22
+ readonly oneOf: readonly [{
23
+ readonly type: "object";
24
+ readonly properties: {
25
+ readonly type: {
26
+ readonly type: "string";
27
+ readonly const: AuthProviderType.OIDC;
28
+ };
29
+ readonly title: {
30
+ readonly type: "string";
31
+ };
32
+ readonly configurationUrl: {
33
+ readonly type: "string";
34
+ readonly minLength: 1;
35
+ };
36
+ readonly configuration: {
37
+ readonly type: "object";
38
+ readonly properties: {
39
+ readonly end_session_endpoint: {
40
+ readonly type: "string";
41
+ };
42
+ readonly token_endpoint: {
43
+ readonly type: "string";
44
+ };
45
+ readonly authorization_endpoint: {
46
+ readonly type: "string";
47
+ };
48
+ };
49
+ readonly required: readonly ["token_endpoint", "authorization_endpoint"];
50
+ readonly additionalProperties: true;
51
+ };
52
+ readonly clientId: {
53
+ readonly type: "string";
54
+ readonly minLength: 1;
55
+ };
56
+ readonly clientSecret: {
57
+ readonly type: "string";
58
+ readonly minLength: 1;
59
+ };
60
+ readonly teamsClaimName: {
61
+ readonly type: "string";
62
+ };
63
+ readonly defaultTeams: {
64
+ readonly type: "array";
65
+ readonly items: {
66
+ readonly type: "string";
67
+ };
68
+ };
69
+ readonly scopes: {
70
+ readonly type: "array";
71
+ readonly items: {
72
+ readonly type: "string";
73
+ };
74
+ };
75
+ readonly tokenExpirationTime: {
76
+ readonly type: "number";
77
+ };
78
+ readonly authorizationRequestCustomParams: {
79
+ readonly type: "object";
80
+ readonly additionalProperties: {
81
+ readonly type: "string";
82
+ };
83
+ };
84
+ readonly tokenRequestCustomParams: {
85
+ readonly type: "object";
86
+ readonly additionalProperties: {
87
+ readonly type: "string";
88
+ };
89
+ };
90
+ };
91
+ readonly required: readonly ["type", "clientId", "clientSecret"];
92
+ readonly oneOf: readonly [{
93
+ readonly required: readonly ["configurationUrl"];
94
+ }, {
95
+ readonly required: readonly ["configuration"];
96
+ }];
97
+ readonly additionalProperties: false;
98
+ }, {
99
+ readonly type: "object";
100
+ readonly properties: {
101
+ readonly type: {
102
+ readonly type: "string";
103
+ readonly const: AuthProviderType.SAML2;
104
+ };
105
+ readonly title: {
106
+ readonly type: "string";
107
+ };
108
+ readonly issuerId: {
109
+ readonly type: "string";
110
+ };
111
+ readonly entityId: {
112
+ readonly type: "string";
113
+ };
114
+ readonly ssoUrl: {
115
+ readonly type: "string";
116
+ };
117
+ readonly x509PublicCert: {
118
+ readonly type: "string";
119
+ };
120
+ readonly teamsAttributeName: {
121
+ readonly type: "string";
122
+ readonly default: "https://redocly.com/sso/teams";
123
+ };
124
+ readonly teamsAttributeMap: {
125
+ readonly type: "object";
126
+ readonly additionalProperties: {
127
+ readonly type: "string";
128
+ };
129
+ };
130
+ readonly defaultTeams: {
131
+ readonly type: "array";
132
+ readonly items: {
133
+ readonly type: "string";
134
+ };
135
+ };
136
+ };
137
+ readonly additionalProperties: false;
138
+ readonly required: readonly ["type", "issuerId", "ssoUrl", "x509PublicCert"];
139
+ }, {
140
+ readonly type: "object";
141
+ readonly properties: {
142
+ readonly type: {
143
+ readonly type: "string";
144
+ readonly const: AuthProviderType.BASIC;
145
+ };
146
+ readonly title: {
147
+ readonly type: "string";
148
+ };
149
+ readonly credentials: {
150
+ readonly type: "array";
151
+ readonly items: {
152
+ readonly type: "object";
153
+ readonly properties: {
154
+ readonly username: {
155
+ readonly type: "string";
156
+ };
157
+ readonly password: {
158
+ readonly type: "string";
159
+ };
160
+ readonly passwordHash: {
161
+ readonly type: "string";
162
+ };
163
+ readonly teams: {
164
+ readonly type: "array";
165
+ readonly items: {
166
+ readonly type: "string";
167
+ };
168
+ };
169
+ };
170
+ readonly required: readonly ["username"];
171
+ readonly additionalProperties: false;
172
+ };
173
+ };
174
+ };
175
+ readonly required: readonly ["type", "credentials"];
176
+ readonly additionalProperties: false;
177
+ }];
178
+ readonly discriminator: {
179
+ readonly propertyName: "type";
180
+ };
181
+ };
182
+ };
183
+ export declare const redirectConfigSchema: {
184
+ readonly type: "object";
185
+ readonly properties: {
186
+ readonly to: {
187
+ readonly type: "string";
188
+ };
189
+ readonly type: {
190
+ readonly type: "number";
191
+ readonly default: 301;
192
+ };
193
+ };
194
+ readonly required: readonly ["to"];
195
+ readonly additionalProperties: false;
196
+ };
197
+ export declare const seoConfigSchema: {
198
+ readonly type: "object";
199
+ readonly properties: {
200
+ readonly title: {
201
+ readonly type: "string";
202
+ };
203
+ readonly description: {
204
+ readonly type: "string";
205
+ };
206
+ readonly siteUrl: {
207
+ readonly type: "string";
208
+ };
209
+ readonly image: {
210
+ readonly type: "string";
211
+ };
212
+ readonly keywords: {
213
+ readonly type: "array";
214
+ readonly items: {
215
+ readonly type: "string";
216
+ };
217
+ };
218
+ readonly lang: {
219
+ readonly type: "string";
220
+ };
221
+ readonly jsonLd: {
222
+ readonly type: "object";
223
+ };
224
+ readonly meta: {
225
+ readonly type: "array";
226
+ readonly items: {
227
+ readonly type: "object";
228
+ readonly properties: {
229
+ readonly name: {
230
+ readonly type: "string";
231
+ };
232
+ readonly content: {
233
+ readonly type: "string";
234
+ };
235
+ };
236
+ readonly required: readonly ["name", "content"];
237
+ readonly additionalProperties: false;
238
+ };
239
+ };
240
+ };
241
+ readonly additionalProperties: false;
242
+ };
243
+ export declare const devOnboardingConfigSchema: {
244
+ readonly type: "object";
245
+ readonly required: readonly ["adapters"];
246
+ readonly additionalProperties: false;
247
+ readonly properties: {
248
+ readonly adapters: {
249
+ readonly type: "array";
250
+ readonly items: {
251
+ readonly type: "object";
252
+ readonly oneOf: readonly [{
253
+ readonly type: "object";
254
+ readonly properties: {
255
+ readonly type: {
256
+ readonly type: "string";
257
+ readonly const: "APIGEE_X";
258
+ };
259
+ readonly apiUrl: {
260
+ readonly type: "string";
261
+ };
262
+ readonly stage: {
263
+ readonly type: "string";
264
+ readonly default: "non-production";
265
+ };
266
+ readonly organizationName: {
267
+ readonly type: "string";
268
+ };
269
+ readonly ignoreApiProducts: {
270
+ readonly type: "array";
271
+ readonly items: {
272
+ readonly type: "string";
273
+ };
274
+ };
275
+ readonly allowApiProductsOutsideCatalog: {
276
+ readonly type: "boolean";
277
+ readonly default: false;
278
+ };
279
+ readonly auth: {
280
+ readonly type: "object";
281
+ readonly oneOf: readonly [{
282
+ readonly type: "object";
283
+ readonly properties: {
284
+ readonly type: {
285
+ readonly type: "string";
286
+ readonly const: ApigeeDevOnboardingIntegrationAuthType.OAUTH2;
287
+ };
288
+ readonly tokenEndpoint: {
289
+ readonly type: "string";
290
+ };
291
+ readonly clientId: {
292
+ readonly type: "string";
293
+ };
294
+ readonly clientSecret: {
295
+ readonly type: "string";
296
+ };
297
+ };
298
+ readonly additionalProperties: false;
299
+ readonly required: readonly ["type", "tokenEndpoint", "clientId", "clientSecret"];
300
+ }, {
301
+ readonly type: "object";
302
+ readonly properties: {
303
+ readonly type: {
304
+ readonly type: "string";
305
+ readonly const: ApigeeDevOnboardingIntegrationAuthType.SERVICE_ACCOUNT;
306
+ };
307
+ readonly serviceAccountEmail: {
308
+ readonly type: "string";
309
+ };
310
+ readonly serviceAccountPrivateKey: {
311
+ readonly type: "string";
312
+ };
313
+ };
314
+ readonly additionalProperties: false;
315
+ readonly required: readonly ["type", "serviceAccountEmail", "serviceAccountPrivateKey"];
316
+ }];
317
+ readonly discriminator: {
318
+ readonly propertyName: "type";
319
+ };
320
+ };
321
+ };
322
+ readonly additionalProperties: false;
323
+ readonly required: readonly ["type", "organizationName", "auth"];
324
+ }, {
325
+ readonly properties: {
326
+ readonly type: {
327
+ readonly type: "string";
328
+ readonly const: "APIGEE_EDGE";
329
+ };
330
+ readonly apiUrl: {
331
+ readonly type: "string";
332
+ };
333
+ readonly stage: {
334
+ readonly type: "string";
335
+ readonly default: "non-production";
336
+ };
337
+ readonly organizationName: {
338
+ readonly type: "string";
339
+ };
340
+ readonly ignoreApiProducts: {
341
+ readonly type: "array";
342
+ readonly items: {
343
+ readonly type: "string";
344
+ };
345
+ };
346
+ readonly allowApiProductsOutsideCatalog: {
347
+ readonly type: "boolean";
348
+ readonly default: false;
349
+ };
350
+ readonly auth: {
351
+ readonly type: "object";
352
+ readonly oneOf: readonly [{
353
+ readonly type: "object";
354
+ readonly properties: {
355
+ readonly type: {
356
+ readonly type: "string";
357
+ readonly const: ApigeeDevOnboardingIntegrationAuthType.OAUTH2;
358
+ };
359
+ readonly tokenEndpoint: {
360
+ readonly type: "string";
361
+ };
362
+ readonly clientId: {
363
+ readonly type: "string";
364
+ };
365
+ readonly clientSecret: {
366
+ readonly type: "string";
367
+ };
368
+ };
369
+ readonly additionalProperties: false;
370
+ readonly required: readonly ["type", "tokenEndpoint", "clientId", "clientSecret"];
371
+ }, {
372
+ readonly type: "object";
373
+ readonly properties: {
374
+ readonly type: {
375
+ readonly type: "string";
376
+ readonly const: ApigeeDevOnboardingIntegrationAuthType.SERVICE_ACCOUNT;
377
+ };
378
+ readonly serviceAccountEmail: {
379
+ readonly type: "string";
380
+ };
381
+ readonly serviceAccountPrivateKey: {
382
+ readonly type: "string";
383
+ };
384
+ };
385
+ readonly additionalProperties: false;
386
+ readonly required: readonly ["type", "serviceAccountEmail", "serviceAccountPrivateKey"];
387
+ }];
388
+ readonly discriminator: {
389
+ readonly propertyName: "type";
390
+ };
391
+ };
392
+ };
393
+ readonly type: "object";
394
+ readonly additionalProperties: false;
395
+ readonly required: readonly ["type", "organizationName", "auth"];
396
+ }, {
397
+ readonly type: "object";
398
+ readonly properties: {
399
+ readonly type: {
400
+ readonly type: "string";
401
+ readonly const: "GRAVITEE";
402
+ };
403
+ readonly apiBaseUrl: {
404
+ readonly type: "string";
405
+ };
406
+ readonly env: {
407
+ readonly type: "string";
408
+ };
409
+ readonly allowApiProductsOutsideCatalog: {
410
+ readonly type: "boolean";
411
+ readonly default: false;
412
+ };
413
+ readonly stage: {
414
+ readonly type: "string";
415
+ readonly default: "non-production";
416
+ };
417
+ readonly auth: {
418
+ readonly type: "object";
419
+ readonly properties: {
420
+ readonly static: {
421
+ readonly type: "string";
422
+ };
423
+ };
424
+ };
425
+ };
426
+ readonly additionalProperties: false;
427
+ readonly required: readonly ["type", "apiBaseUrl"];
428
+ }];
429
+ readonly discriminator: {
430
+ readonly propertyName: "type";
431
+ };
432
+ };
433
+ };
434
+ };
435
+ };
436
+ export declare const responseHeaderSchema: {
437
+ readonly type: "object";
438
+ readonly properties: {
439
+ readonly name: {
440
+ readonly type: "string";
441
+ };
442
+ readonly value: {
443
+ readonly type: "string";
444
+ };
445
+ };
446
+ readonly additionalProperties: false;
447
+ readonly required: readonly ["name", "value"];
448
+ };
449
+ export declare const i18nConfigSchema: {
450
+ readonly type: "object";
451
+ readonly properties: {
452
+ readonly defaultLocale: {
453
+ readonly type: "string";
454
+ };
455
+ readonly locales: {
456
+ readonly type: "array";
457
+ readonly items: {
458
+ readonly type: "object";
459
+ readonly properties: {
460
+ readonly code: {
461
+ readonly type: "string";
462
+ };
463
+ readonly name: {
464
+ readonly type: "string";
465
+ };
466
+ };
467
+ readonly required: readonly ["code"];
468
+ };
469
+ };
470
+ };
471
+ readonly required: readonly ["defaultLocale", "locales"];
472
+ };
473
+ export declare const mockServerConfigSchema: {
474
+ readonly type: "object";
475
+ readonly properties: {
476
+ readonly off: {
477
+ readonly type: "boolean";
478
+ readonly default: false;
479
+ };
480
+ readonly position: {
481
+ readonly type: "string";
482
+ readonly enum: readonly ["first", "last", "replace", "off"];
483
+ readonly default: "first";
484
+ };
485
+ readonly strictExamples: {
486
+ readonly type: "boolean";
487
+ readonly default: false;
488
+ };
489
+ readonly errorIfForcedExampleNotFound: {
490
+ readonly type: "boolean";
491
+ readonly default: false;
492
+ };
493
+ readonly description: {
494
+ readonly type: "string";
495
+ };
496
+ };
497
+ };
498
+ export declare const themeConfigSchema: {
499
+ readonly type: "object";
500
+ readonly properties: {
501
+ readonly imports: {
502
+ readonly type: "array";
503
+ readonly items: {
504
+ readonly type: "string";
505
+ };
506
+ readonly default: readonly [];
507
+ };
508
+ readonly logo: {
509
+ readonly type: "object";
510
+ readonly properties: {
511
+ readonly image: {
512
+ readonly type: "string";
513
+ };
514
+ readonly altText: {
515
+ readonly type: "string";
516
+ };
517
+ readonly link: {
518
+ readonly type: "string";
519
+ };
520
+ readonly favicon: {
521
+ readonly type: "string";
522
+ };
523
+ };
524
+ readonly additionalProperties: false;
525
+ };
526
+ readonly navbar: {
527
+ readonly type: "object";
528
+ readonly properties: {
529
+ readonly hide: {
530
+ readonly type: "boolean";
531
+ };
532
+ readonly items: {
533
+ readonly type: "array";
534
+ readonly items: {
535
+ readonly properties: {
536
+ readonly items: {
537
+ readonly type: "array";
538
+ readonly items: {
539
+ readonly type: "object";
540
+ readonly properties: {
541
+ readonly page: {
542
+ readonly type: "string";
543
+ };
544
+ readonly directory: {
545
+ readonly type: "string";
546
+ };
547
+ readonly group: {
548
+ readonly type: "string";
549
+ };
550
+ readonly label: {
551
+ readonly type: "string";
552
+ };
553
+ readonly separator: {
554
+ readonly type: "string";
555
+ };
556
+ readonly separatorLine: {
557
+ readonly type: "boolean";
558
+ };
559
+ readonly version: {
560
+ readonly type: "string";
561
+ };
562
+ readonly menuStyle: {
563
+ readonly type: "string";
564
+ readonly enum: readonly ["drilldown"];
565
+ };
566
+ readonly expanded: {
567
+ readonly type: "string";
568
+ readonly const: "always";
569
+ };
570
+ readonly selectFirstItemOnExpand: {
571
+ readonly type: "boolean";
572
+ };
573
+ readonly flatten: {
574
+ readonly type: "boolean";
575
+ };
576
+ readonly linkedSidebars: {
577
+ readonly type: "array";
578
+ readonly items: {
579
+ readonly type: "string";
580
+ };
581
+ };
582
+ };
583
+ };
584
+ };
585
+ readonly page: {
586
+ readonly type: "string";
587
+ };
588
+ readonly directory: {
589
+ readonly type: "string";
590
+ };
591
+ readonly group: {
592
+ readonly type: "string";
593
+ };
594
+ readonly label: {
595
+ readonly type: "string";
596
+ };
597
+ readonly separator: {
598
+ readonly type: "string";
599
+ };
600
+ readonly separatorLine: {
601
+ readonly type: "boolean";
602
+ };
603
+ readonly version: {
604
+ readonly type: "string";
605
+ };
606
+ readonly menuStyle: {
607
+ readonly type: "string";
608
+ readonly enum: readonly ["drilldown"];
609
+ };
610
+ readonly expanded: {
611
+ readonly type: "string";
612
+ readonly const: "always";
613
+ };
614
+ readonly selectFirstItemOnExpand: {
615
+ readonly type: "boolean";
616
+ };
617
+ readonly flatten: {
618
+ readonly type: "boolean";
619
+ };
620
+ readonly linkedSidebars: {
621
+ readonly type: "array";
622
+ readonly items: {
623
+ readonly type: "string";
624
+ };
625
+ };
626
+ };
627
+ readonly type: "object";
628
+ };
629
+ };
630
+ };
631
+ readonly additionalProperties: false;
632
+ };
633
+ readonly products: {
634
+ readonly type: "object";
635
+ readonly additionalProperties: {
636
+ readonly type: "object";
637
+ readonly properties: {
638
+ readonly name: {
639
+ readonly type: "string";
640
+ };
641
+ readonly icon: {
642
+ readonly type: "string";
643
+ };
644
+ readonly folder: {
645
+ readonly type: "string";
646
+ };
647
+ };
648
+ readonly additionalProperties: false;
649
+ readonly required: readonly ["name", "icon", "folder"];
650
+ };
651
+ };
652
+ readonly footer: {
653
+ readonly type: "object";
654
+ readonly properties: {
655
+ readonly hide: {
656
+ readonly type: "boolean";
657
+ };
658
+ readonly items: {
659
+ readonly type: "array";
660
+ readonly items: {
661
+ readonly properties: {
662
+ readonly items: {
663
+ readonly type: "array";
664
+ readonly items: {
665
+ readonly type: "object";
666
+ readonly properties: {
667
+ readonly page: {
668
+ readonly type: "string";
669
+ };
670
+ readonly directory: {
671
+ readonly type: "string";
672
+ };
673
+ readonly group: {
674
+ readonly type: "string";
675
+ };
676
+ readonly label: {
677
+ readonly type: "string";
678
+ };
679
+ readonly separator: {
680
+ readonly type: "string";
681
+ };
682
+ readonly separatorLine: {
683
+ readonly type: "boolean";
684
+ };
685
+ readonly version: {
686
+ readonly type: "string";
687
+ };
688
+ readonly menuStyle: {
689
+ readonly type: "string";
690
+ readonly enum: readonly ["drilldown"];
691
+ };
692
+ readonly expanded: {
693
+ readonly type: "string";
694
+ readonly const: "always";
695
+ };
696
+ readonly selectFirstItemOnExpand: {
697
+ readonly type: "boolean";
698
+ };
699
+ readonly flatten: {
700
+ readonly type: "boolean";
701
+ };
702
+ readonly linkedSidebars: {
703
+ readonly type: "array";
704
+ readonly items: {
705
+ readonly type: "string";
706
+ };
707
+ };
708
+ };
709
+ };
710
+ };
711
+ readonly page: {
712
+ readonly type: "string";
713
+ };
714
+ readonly directory: {
715
+ readonly type: "string";
716
+ };
717
+ readonly group: {
718
+ readonly type: "string";
719
+ };
720
+ readonly label: {
721
+ readonly type: "string";
722
+ };
723
+ readonly separator: {
724
+ readonly type: "string";
725
+ };
726
+ readonly separatorLine: {
727
+ readonly type: "boolean";
728
+ };
729
+ readonly version: {
730
+ readonly type: "string";
731
+ };
732
+ readonly menuStyle: {
733
+ readonly type: "string";
734
+ readonly enum: readonly ["drilldown"];
735
+ };
736
+ readonly expanded: {
737
+ readonly type: "string";
738
+ readonly const: "always";
739
+ };
740
+ readonly selectFirstItemOnExpand: {
741
+ readonly type: "boolean";
742
+ };
743
+ readonly flatten: {
744
+ readonly type: "boolean";
745
+ };
746
+ readonly linkedSidebars: {
747
+ readonly type: "array";
748
+ readonly items: {
749
+ readonly type: "string";
750
+ };
751
+ };
752
+ };
753
+ readonly type: "object";
754
+ };
755
+ };
756
+ readonly copyrightText: {
757
+ readonly type: "string";
758
+ };
759
+ };
760
+ readonly additionalProperties: false;
761
+ };
762
+ readonly sidebar: {
763
+ readonly type: "object";
764
+ readonly properties: {
765
+ readonly hide: {
766
+ readonly type: "boolean";
767
+ };
768
+ };
769
+ readonly additionalProperties: false;
770
+ };
771
+ readonly scripts: {
772
+ readonly type: "object";
773
+ readonly properties: {
774
+ readonly head: {
775
+ readonly type: "array";
776
+ readonly items: {
777
+ readonly type: "object";
778
+ readonly properties: {
779
+ readonly src: {
780
+ readonly type: "string";
781
+ };
782
+ readonly async: {
783
+ readonly type: "boolean";
784
+ };
785
+ readonly crossorigin: {
786
+ readonly type: "string";
787
+ };
788
+ readonly defer: {
789
+ readonly type: "boolean";
790
+ };
791
+ readonly fetchpriority: {
792
+ readonly type: "string";
793
+ };
794
+ readonly integrity: {
795
+ readonly type: "string";
796
+ };
797
+ readonly module: {
798
+ readonly type: "boolean";
799
+ };
800
+ readonly nomodule: {
801
+ readonly type: "boolean";
802
+ };
803
+ readonly nonce: {
804
+ readonly type: "string";
805
+ };
806
+ readonly referrerpolicy: {
807
+ readonly type: "string";
808
+ };
809
+ readonly type: {
810
+ readonly type: "string";
811
+ };
812
+ };
813
+ readonly required: readonly ["src"];
814
+ readonly additionalProperties: true;
815
+ };
816
+ };
817
+ readonly body: {
818
+ readonly type: "array";
819
+ readonly items: {
820
+ readonly type: "object";
821
+ readonly properties: {
822
+ readonly src: {
823
+ readonly type: "string";
824
+ };
825
+ readonly async: {
826
+ readonly type: "boolean";
827
+ };
828
+ readonly crossorigin: {
829
+ readonly type: "string";
830
+ };
831
+ readonly defer: {
832
+ readonly type: "boolean";
833
+ };
834
+ readonly fetchpriority: {
835
+ readonly type: "string";
836
+ };
837
+ readonly integrity: {
838
+ readonly type: "string";
839
+ };
840
+ readonly module: {
841
+ readonly type: "boolean";
842
+ };
843
+ readonly nomodule: {
844
+ readonly type: "boolean";
845
+ };
846
+ readonly nonce: {
847
+ readonly type: "string";
848
+ };
849
+ readonly referrerpolicy: {
850
+ readonly type: "string";
851
+ };
852
+ readonly type: {
853
+ readonly type: "string";
854
+ };
855
+ };
856
+ readonly required: readonly ["src"];
857
+ readonly additionalProperties: true;
858
+ };
859
+ };
860
+ };
861
+ readonly additionalProperties: false;
862
+ };
863
+ readonly links: {
864
+ readonly type: "array";
865
+ readonly items: {
866
+ readonly type: "object";
867
+ readonly properties: {
868
+ readonly href: {
869
+ readonly type: "string";
870
+ };
871
+ readonly as: {
872
+ readonly type: "string";
873
+ };
874
+ readonly crossorigin: {
875
+ readonly type: "string";
876
+ };
877
+ readonly fetchpriority: {
878
+ readonly type: "string";
879
+ };
880
+ readonly hreflang: {
881
+ readonly type: "string";
882
+ };
883
+ readonly imagesizes: {
884
+ readonly type: "string";
885
+ };
886
+ readonly imagesrcset: {
887
+ readonly type: "string";
888
+ };
889
+ readonly integrity: {
890
+ readonly type: "string";
891
+ };
892
+ readonly media: {
893
+ readonly type: "string";
894
+ };
895
+ readonly prefetch: {
896
+ readonly type: "string";
897
+ };
898
+ readonly referrerpolicy: {
899
+ readonly type: "string";
900
+ };
901
+ readonly rel: {
902
+ readonly type: "string";
903
+ };
904
+ readonly sizes: {
905
+ readonly type: "string";
906
+ };
907
+ readonly title: {
908
+ readonly type: "string";
909
+ };
910
+ readonly type: {
911
+ readonly type: "string";
912
+ };
913
+ };
914
+ readonly required: readonly ["href"];
915
+ readonly additionalProperties: true;
916
+ };
917
+ };
918
+ readonly feedback: {
919
+ readonly type: "object";
920
+ readonly properties: {
921
+ readonly hide: {
922
+ readonly type: "boolean";
923
+ readonly default: false;
924
+ };
925
+ readonly type: {
926
+ readonly type: "string";
927
+ readonly enum: readonly ["rating", "sentiment", "comment", "reasons"];
928
+ readonly default: "sentiment";
929
+ };
930
+ readonly settings: {
931
+ readonly hide: {
932
+ readonly type: "boolean";
933
+ };
934
+ readonly type: "object";
935
+ readonly properties: {
936
+ readonly label: {
937
+ readonly type: "string";
938
+ };
939
+ readonly submitText: {
940
+ readonly type: "string";
941
+ };
942
+ readonly max: {
943
+ readonly type: "number";
944
+ };
945
+ readonly buttonText: {
946
+ readonly type: "string";
947
+ };
948
+ readonly multi: {
949
+ readonly type: "boolean";
950
+ };
951
+ readonly items: {
952
+ readonly type: "array";
953
+ readonly items: {
954
+ readonly type: "string";
955
+ };
956
+ readonly minItems: 1;
957
+ };
958
+ readonly reasons: {
959
+ readonly type: "object";
960
+ readonly properties: {
961
+ readonly enable: {
962
+ readonly type: "boolean";
963
+ readonly default: true;
964
+ };
965
+ readonly multi: {
966
+ readonly type: "boolean";
967
+ };
968
+ readonly label: {
969
+ readonly type: "string";
970
+ };
971
+ readonly items: {
972
+ readonly type: "array";
973
+ readonly items: {
974
+ readonly type: "string";
975
+ };
976
+ };
977
+ };
978
+ readonly additionalProperties: false;
979
+ };
980
+ readonly comment: {
981
+ readonly type: "object";
982
+ readonly properties: {
983
+ readonly enable: {
984
+ readonly type: "boolean";
985
+ readonly default: true;
986
+ };
987
+ readonly label: {
988
+ readonly type: "string";
989
+ };
990
+ readonly likeLabel: {
991
+ readonly type: "string";
992
+ };
993
+ readonly dislikeLabel: {
994
+ readonly type: "string";
995
+ };
996
+ };
997
+ readonly additionalProperties: false;
998
+ };
999
+ };
1000
+ readonly additionalProperties: false;
1001
+ };
1002
+ };
1003
+ readonly additionalProperties: false;
1004
+ readonly default: {};
1005
+ };
1006
+ readonly search: {
1007
+ readonly type: "object";
1008
+ readonly properties: {
1009
+ readonly hide: {
1010
+ readonly type: "boolean";
1011
+ };
1012
+ readonly placement: {
1013
+ readonly type: "string";
1014
+ readonly default: "navbar";
1015
+ };
1016
+ readonly shortcuts: {
1017
+ readonly type: "array";
1018
+ readonly items: {
1019
+ readonly type: "string";
1020
+ };
1021
+ readonly default: readonly ["/"];
1022
+ };
1023
+ readonly suggestedPages: {
1024
+ readonly type: "array";
1025
+ readonly items: {
1026
+ readonly type: "object";
1027
+ readonly properties: {
1028
+ readonly page: {
1029
+ readonly type: "string";
1030
+ };
1031
+ readonly label: {
1032
+ readonly type: "string";
1033
+ };
1034
+ readonly labelTranslationKey: {
1035
+ readonly type: "string";
1036
+ };
1037
+ };
1038
+ readonly required: readonly ["page"];
1039
+ };
1040
+ };
1041
+ };
1042
+ readonly additionalProperties: false;
1043
+ readonly default: {};
1044
+ };
1045
+ readonly colorMode: {
1046
+ readonly type: "object";
1047
+ readonly properties: {
1048
+ readonly hide: {
1049
+ readonly type: "boolean";
1050
+ };
1051
+ readonly ignoreDetection: {
1052
+ readonly type: "boolean";
1053
+ };
1054
+ readonly modes: {
1055
+ readonly type: "array";
1056
+ readonly items: {
1057
+ readonly type: "string";
1058
+ };
1059
+ readonly default: readonly ["light", "dark"];
1060
+ };
1061
+ };
1062
+ readonly additionalProperties: false;
1063
+ readonly default: {};
1064
+ };
1065
+ readonly navigation: {
1066
+ readonly type: "object";
1067
+ readonly properties: {
1068
+ readonly nextButton: {
1069
+ readonly type: "object";
1070
+ readonly properties: {
1071
+ readonly hide: {
1072
+ readonly type: "boolean";
1073
+ };
1074
+ readonly text: {
1075
+ readonly type: "string";
1076
+ readonly default: "Next to {label}";
1077
+ };
1078
+ };
1079
+ readonly additionalProperties: false;
1080
+ readonly default: {};
1081
+ };
1082
+ readonly previousButton: {
1083
+ readonly type: "object";
1084
+ readonly properties: {
1085
+ readonly hide: {
1086
+ readonly type: "boolean";
1087
+ };
1088
+ readonly text: {
1089
+ readonly type: "string";
1090
+ readonly default: "Back to {label}";
1091
+ };
1092
+ };
1093
+ readonly additionalProperties: false;
1094
+ readonly default: {};
1095
+ };
1096
+ };
1097
+ readonly additionalProperties: false;
1098
+ readonly default: {};
1099
+ };
1100
+ readonly codeSnippet: {
1101
+ readonly type: "object";
1102
+ readonly properties: {
1103
+ readonly controlsStyle: {
1104
+ readonly type: "string";
1105
+ readonly default: "icon";
1106
+ };
1107
+ readonly copy: {
1108
+ readonly type: "object";
1109
+ readonly properties: {
1110
+ readonly hide: {
1111
+ readonly type: "boolean";
1112
+ };
1113
+ };
1114
+ readonly additionalProperties: false;
1115
+ readonly default: {
1116
+ readonly hide: false;
1117
+ };
1118
+ };
1119
+ readonly report: {
1120
+ readonly type: "object";
1121
+ readonly properties: {
1122
+ readonly hide: {
1123
+ readonly type: "boolean";
1124
+ };
1125
+ };
1126
+ readonly additionalProperties: false;
1127
+ readonly default: {
1128
+ readonly hide: true;
1129
+ };
1130
+ };
1131
+ readonly expand: {
1132
+ readonly type: "object";
1133
+ readonly properties: {
1134
+ readonly hide: {
1135
+ readonly type: "boolean";
1136
+ };
1137
+ };
1138
+ readonly additionalProperties: false;
1139
+ readonly default: {
1140
+ readonly hide: false;
1141
+ };
1142
+ };
1143
+ readonly collapse: {
1144
+ readonly type: "object";
1145
+ readonly properties: {
1146
+ readonly hide: {
1147
+ readonly type: "boolean";
1148
+ };
1149
+ };
1150
+ readonly additionalProperties: false;
1151
+ readonly default: {
1152
+ readonly hide: false;
1153
+ };
1154
+ };
1155
+ };
1156
+ readonly additionalProperties: false;
1157
+ readonly default: {};
1158
+ };
1159
+ readonly markdown: {
1160
+ readonly type: "object";
1161
+ readonly properties: {
1162
+ readonly frontMatterKeysToResolve: {
1163
+ readonly type: "array";
1164
+ readonly items: {
1165
+ readonly type: "string";
1166
+ };
1167
+ readonly default: readonly ["image", "links"];
1168
+ };
1169
+ readonly lastUpdatedBlock: {
1170
+ readonly type: "object";
1171
+ readonly properties: {
1172
+ readonly hide: {
1173
+ readonly type: "boolean";
1174
+ };
1175
+ readonly format: {
1176
+ readonly type: "string";
1177
+ readonly enum: readonly ["timeago", "iso", "long", "short"];
1178
+ readonly default: "timeago";
1179
+ };
1180
+ readonly locale: {
1181
+ readonly type: "string";
1182
+ readonly default: "en-US";
1183
+ };
1184
+ };
1185
+ readonly additionalProperties: false;
1186
+ readonly default: {};
1187
+ };
1188
+ readonly toc: {
1189
+ readonly type: "object";
1190
+ readonly properties: {
1191
+ readonly hide: {
1192
+ readonly type: "boolean";
1193
+ };
1194
+ readonly header: {
1195
+ readonly type: "string";
1196
+ readonly default: "On this page";
1197
+ };
1198
+ readonly depth: {
1199
+ readonly type: "integer";
1200
+ readonly default: 3;
1201
+ readonly minimum: 1;
1202
+ };
1203
+ };
1204
+ readonly additionalProperties: false;
1205
+ readonly default: {};
1206
+ };
1207
+ readonly editPage: {
1208
+ readonly type: "object";
1209
+ readonly properties: {
1210
+ readonly hide: {
1211
+ readonly type: "boolean";
1212
+ };
1213
+ readonly baseUrl: {
1214
+ readonly type: "string";
1215
+ };
1216
+ readonly icon: {
1217
+ readonly type: "string";
1218
+ };
1219
+ readonly text: {
1220
+ readonly type: "string";
1221
+ readonly default: "Edit this page";
1222
+ };
1223
+ };
1224
+ readonly additionalProperties: false;
1225
+ readonly default: {};
1226
+ };
1227
+ };
1228
+ readonly additionalProperties: false;
1229
+ readonly default: {};
1230
+ };
1231
+ readonly openapi: {
1232
+ readonly type: "object";
1233
+ readonly additionalProperties: true;
1234
+ };
1235
+ readonly graphql: {
1236
+ readonly type: "object";
1237
+ readonly additionalProperties: true;
1238
+ };
1239
+ readonly analytics: {
1240
+ readonly type: "object";
1241
+ readonly properties: {
1242
+ readonly adobe: {
1243
+ readonly type: "object";
1244
+ readonly properties: {
1245
+ readonly includeInDevelopment: {
1246
+ readonly type: "boolean";
1247
+ };
1248
+ readonly scriptUrl: {
1249
+ readonly type: "string";
1250
+ };
1251
+ readonly pageViewEventName: {
1252
+ readonly type: "string";
1253
+ };
1254
+ };
1255
+ readonly additionalProperties: false;
1256
+ readonly required: readonly ["scriptUrl"];
1257
+ };
1258
+ readonly amplitude: {
1259
+ readonly type: "object";
1260
+ readonly properties: {
1261
+ readonly includeInDevelopment: {
1262
+ readonly type: "boolean";
1263
+ };
1264
+ readonly apiKey: {
1265
+ readonly type: "string";
1266
+ };
1267
+ readonly head: {
1268
+ readonly type: "boolean";
1269
+ };
1270
+ readonly respectDNT: {
1271
+ readonly type: "boolean";
1272
+ };
1273
+ readonly exclude: {
1274
+ readonly type: "array";
1275
+ readonly items: {
1276
+ readonly type: "string";
1277
+ };
1278
+ };
1279
+ readonly outboundClickEventName: {
1280
+ readonly type: "string";
1281
+ };
1282
+ readonly pageViewEventName: {
1283
+ readonly type: "string";
1284
+ };
1285
+ readonly amplitudeConfig: {
1286
+ readonly type: "object";
1287
+ readonly additionalProperties: true;
1288
+ };
1289
+ };
1290
+ readonly additionalProperties: false;
1291
+ readonly required: readonly ["apiKey"];
1292
+ };
1293
+ readonly fullstory: {
1294
+ readonly type: "object";
1295
+ readonly properties: {
1296
+ readonly includeInDevelopment: {
1297
+ readonly type: "boolean";
1298
+ };
1299
+ readonly orgId: {
1300
+ readonly type: "string";
1301
+ };
1302
+ };
1303
+ readonly additionalProperties: false;
1304
+ readonly required: readonly ["orgId"];
1305
+ };
1306
+ readonly heap: {
1307
+ readonly type: "object";
1308
+ readonly properties: {
1309
+ readonly includeInDevelopment: {
1310
+ readonly type: "boolean";
1311
+ };
1312
+ readonly appId: {
1313
+ readonly type: "string";
1314
+ };
1315
+ };
1316
+ readonly additionalProperties: false;
1317
+ readonly required: readonly ["appId"];
1318
+ };
1319
+ readonly rudderstack: {
1320
+ readonly type: "object";
1321
+ readonly properties: {
1322
+ readonly includeInDevelopment: {
1323
+ readonly type: "boolean";
1324
+ };
1325
+ readonly writeKey: {
1326
+ readonly type: "string";
1327
+ readonly minLength: 10;
1328
+ };
1329
+ readonly trackPage: {
1330
+ readonly type: "boolean";
1331
+ };
1332
+ readonly dataPlaneUrl: {
1333
+ readonly type: "string";
1334
+ };
1335
+ readonly controlPlaneUrl: {
1336
+ readonly type: "string";
1337
+ };
1338
+ readonly sdkUrl: {
1339
+ readonly type: "string";
1340
+ };
1341
+ readonly loadOptions: {
1342
+ readonly type: "object";
1343
+ readonly additionalProperties: true;
1344
+ };
1345
+ };
1346
+ readonly additionalProperties: false;
1347
+ readonly required: readonly ["writeKey"];
1348
+ };
1349
+ readonly segment: {
1350
+ readonly type: "object";
1351
+ readonly properties: {
1352
+ readonly includeInDevelopment: {
1353
+ readonly type: "boolean";
1354
+ };
1355
+ readonly writeKey: {
1356
+ readonly type: "string";
1357
+ readonly minLength: 10;
1358
+ };
1359
+ readonly trackPage: {
1360
+ readonly type: "boolean";
1361
+ };
1362
+ readonly includeTitleInPageCall: {
1363
+ readonly type: "boolean";
1364
+ };
1365
+ readonly host: {
1366
+ readonly type: "string";
1367
+ };
1368
+ };
1369
+ readonly additionalProperties: false;
1370
+ readonly required: readonly ["writeKey"];
1371
+ };
1372
+ readonly gtm: {
1373
+ readonly type: "object";
1374
+ readonly properties: {
1375
+ readonly includeInDevelopment: {
1376
+ readonly type: "boolean";
1377
+ };
1378
+ readonly trackingId: {
1379
+ readonly type: "string";
1380
+ };
1381
+ readonly gtmAuth: {
1382
+ readonly type: "string";
1383
+ };
1384
+ readonly gtmPreview: {
1385
+ readonly type: "string";
1386
+ };
1387
+ readonly defaultDataLayer: {};
1388
+ readonly dataLayerName: {
1389
+ readonly type: "string";
1390
+ };
1391
+ readonly enableWebVitalsTracking: {
1392
+ readonly type: "boolean";
1393
+ };
1394
+ readonly selfHostedOrigin: {
1395
+ readonly type: "string";
1396
+ };
1397
+ readonly pageViewEventName: {
1398
+ readonly type: "string";
1399
+ };
1400
+ };
1401
+ readonly additionalProperties: false;
1402
+ readonly required: readonly ["trackingId"];
1403
+ };
1404
+ readonly ga: {
1405
+ readonly type: "object";
1406
+ readonly properties: {
1407
+ readonly includeInDevelopment: {
1408
+ readonly type: "boolean";
1409
+ };
1410
+ readonly trackingId: {
1411
+ readonly type: "string";
1412
+ };
1413
+ readonly head: {
1414
+ readonly type: "boolean";
1415
+ };
1416
+ readonly respectDNT: {
1417
+ readonly type: "boolean";
1418
+ };
1419
+ readonly anonymize: {
1420
+ readonly type: "boolean";
1421
+ };
1422
+ readonly exclude: {
1423
+ readonly type: "array";
1424
+ readonly items: {
1425
+ readonly type: "string";
1426
+ };
1427
+ };
1428
+ readonly optimizeId: {
1429
+ readonly type: "string";
1430
+ };
1431
+ readonly experimentId: {
1432
+ readonly type: "string";
1433
+ };
1434
+ readonly variationId: {
1435
+ readonly type: "string";
1436
+ };
1437
+ readonly enableWebVitalsTracking: {
1438
+ readonly type: "boolean";
1439
+ };
1440
+ readonly defer: {
1441
+ readonly type: "boolean";
1442
+ };
1443
+ readonly sampleRate: {
1444
+ readonly type: "number";
1445
+ };
1446
+ readonly name: {
1447
+ readonly type: "string";
1448
+ };
1449
+ readonly clientId: {
1450
+ readonly type: "string";
1451
+ };
1452
+ readonly siteSpeedSampleRate: {
1453
+ readonly type: "number";
1454
+ };
1455
+ readonly alwaysSendReferrer: {
1456
+ readonly type: "boolean";
1457
+ };
1458
+ readonly allowAnchor: {
1459
+ readonly type: "boolean";
1460
+ };
1461
+ readonly cookieName: {
1462
+ readonly type: "string";
1463
+ };
1464
+ readonly cookieFlags: {
1465
+ readonly type: "string";
1466
+ };
1467
+ readonly cookieDomain: {
1468
+ readonly type: "string";
1469
+ };
1470
+ readonly cookieExpires: {
1471
+ readonly type: "number";
1472
+ };
1473
+ readonly storeGac: {
1474
+ readonly type: "boolean";
1475
+ };
1476
+ readonly legacyCookieDomain: {
1477
+ readonly type: "string";
1478
+ };
1479
+ readonly legacyHistoryImport: {
1480
+ readonly type: "boolean";
1481
+ };
1482
+ readonly allowLinker: {
1483
+ readonly type: "boolean";
1484
+ };
1485
+ readonly storage: {
1486
+ readonly type: "string";
1487
+ };
1488
+ readonly allowAdFeatures: {
1489
+ readonly type: "boolean";
1490
+ };
1491
+ readonly dataSource: {
1492
+ readonly type: "string";
1493
+ };
1494
+ readonly queueTime: {
1495
+ readonly type: "number";
1496
+ };
1497
+ readonly forceSSL: {
1498
+ readonly type: "boolean";
1499
+ };
1500
+ readonly transport: {
1501
+ readonly type: "string";
1502
+ };
1503
+ };
1504
+ readonly additionalProperties: false;
1505
+ readonly required: readonly ["trackingId"];
1506
+ };
1507
+ };
1508
+ };
1509
+ readonly userProfile: {
1510
+ readonly type: "object";
1511
+ readonly properties: {
1512
+ readonly hide: {
1513
+ readonly type: "boolean";
1514
+ };
1515
+ readonly loginLabel: {
1516
+ readonly type: "string";
1517
+ readonly default: "Login";
1518
+ };
1519
+ readonly logoutLabel: {
1520
+ readonly type: "string";
1521
+ readonly default: "Logout";
1522
+ };
1523
+ readonly menu: {
1524
+ readonly type: "array";
1525
+ readonly items: {
1526
+ readonly type: "object";
1527
+ readonly properties: {
1528
+ readonly label: {
1529
+ readonly type: "string";
1530
+ };
1531
+ readonly external: {
1532
+ readonly type: "boolean";
1533
+ };
1534
+ readonly link: {
1535
+ readonly type: "string";
1536
+ };
1537
+ readonly separatorLine: {
1538
+ readonly type: "boolean";
1539
+ };
1540
+ };
1541
+ readonly additionalProperties: true;
1542
+ };
1543
+ readonly default: readonly [];
1544
+ };
1545
+ };
1546
+ readonly additionalProperties: false;
1547
+ readonly default: {};
1548
+ };
1549
+ readonly breadcrumbs: {
1550
+ readonly type: "object";
1551
+ readonly properties: {
1552
+ readonly hide: {
1553
+ readonly type: "boolean";
1554
+ };
1555
+ readonly prefixItems: {
1556
+ readonly type: "array";
1557
+ readonly items: {
1558
+ readonly type: "object";
1559
+ readonly properties: {
1560
+ readonly label: {
1561
+ readonly type: "string";
1562
+ };
1563
+ readonly labelTranslationKey: {
1564
+ readonly type: "string";
1565
+ };
1566
+ readonly page: {
1567
+ readonly type: "string";
1568
+ };
1569
+ };
1570
+ readonly additionalProperties: false;
1571
+ readonly default: {};
1572
+ };
1573
+ };
1574
+ };
1575
+ readonly additionalProperties: false;
1576
+ readonly default: {};
1577
+ };
1578
+ readonly catalog: {
1579
+ readonly type: "object";
1580
+ readonly patternProperties: {
1581
+ readonly '.*': {
1582
+ readonly type: "object";
1583
+ readonly additionalProperties: true;
1584
+ readonly required: readonly ["slug", "filters", "groupByFirstFilter", "items"];
1585
+ readonly properties: {
1586
+ readonly slug: {
1587
+ readonly type: "string";
1588
+ };
1589
+ readonly filters: {
1590
+ readonly type: "array";
1591
+ readonly items: {
1592
+ readonly type: "object";
1593
+ readonly additionalProperties: false;
1594
+ readonly required: readonly ["title", "property"];
1595
+ readonly properties: {
1596
+ readonly type: {
1597
+ readonly type: "string";
1598
+ readonly enum: readonly ["select", "checkboxes", "date-range"];
1599
+ };
1600
+ readonly title: {
1601
+ readonly type: "string";
1602
+ };
1603
+ readonly titleTranslationKey: {
1604
+ readonly type: "string";
1605
+ };
1606
+ readonly property: {
1607
+ readonly type: "string";
1608
+ };
1609
+ readonly parentFilter: {
1610
+ readonly type: "string";
1611
+ };
1612
+ readonly missingCategoryName: {
1613
+ readonly type: "string";
1614
+ };
1615
+ readonly missingCategoryNameTranslationKey: {
1616
+ readonly type: "string";
1617
+ };
1618
+ readonly options: {
1619
+ readonly type: "array";
1620
+ readonly items: {
1621
+ readonly type: "string";
1622
+ };
1623
+ };
1624
+ };
1625
+ };
1626
+ };
1627
+ readonly groupByFirstFilter: {
1628
+ readonly type: "boolean";
1629
+ };
1630
+ readonly items: {
1631
+ readonly type: "array";
1632
+ readonly items: {
1633
+ readonly properties: {
1634
+ readonly items: {
1635
+ readonly type: "array";
1636
+ readonly items: {
1637
+ readonly type: "object";
1638
+ readonly properties: {
1639
+ readonly page: {
1640
+ readonly type: "string";
1641
+ };
1642
+ readonly directory: {
1643
+ readonly type: "string";
1644
+ };
1645
+ readonly group: {
1646
+ readonly type: "string";
1647
+ };
1648
+ readonly label: {
1649
+ readonly type: "string";
1650
+ };
1651
+ readonly separator: {
1652
+ readonly type: "string";
1653
+ };
1654
+ readonly separatorLine: {
1655
+ readonly type: "boolean";
1656
+ };
1657
+ readonly version: {
1658
+ readonly type: "string";
1659
+ };
1660
+ readonly menuStyle: {
1661
+ readonly type: "string";
1662
+ readonly enum: readonly ["drilldown"];
1663
+ };
1664
+ readonly expanded: {
1665
+ readonly type: "string";
1666
+ readonly const: "always";
1667
+ };
1668
+ readonly selectFirstItemOnExpand: {
1669
+ readonly type: "boolean";
1670
+ };
1671
+ readonly flatten: {
1672
+ readonly type: "boolean";
1673
+ };
1674
+ readonly linkedSidebars: {
1675
+ readonly type: "array";
1676
+ readonly items: {
1677
+ readonly type: "string";
1678
+ };
1679
+ };
1680
+ };
1681
+ };
1682
+ };
1683
+ readonly page: {
1684
+ readonly type: "string";
1685
+ };
1686
+ readonly directory: {
1687
+ readonly type: "string";
1688
+ };
1689
+ readonly group: {
1690
+ readonly type: "string";
1691
+ };
1692
+ readonly label: {
1693
+ readonly type: "string";
1694
+ };
1695
+ readonly separator: {
1696
+ readonly type: "string";
1697
+ };
1698
+ readonly separatorLine: {
1699
+ readonly type: "boolean";
1700
+ };
1701
+ readonly version: {
1702
+ readonly type: "string";
1703
+ };
1704
+ readonly menuStyle: {
1705
+ readonly type: "string";
1706
+ readonly enum: readonly ["drilldown"];
1707
+ };
1708
+ readonly expanded: {
1709
+ readonly type: "string";
1710
+ readonly const: "always";
1711
+ };
1712
+ readonly selectFirstItemOnExpand: {
1713
+ readonly type: "boolean";
1714
+ };
1715
+ readonly flatten: {
1716
+ readonly type: "boolean";
1717
+ };
1718
+ readonly linkedSidebars: {
1719
+ readonly type: "array";
1720
+ readonly items: {
1721
+ readonly type: "string";
1722
+ };
1723
+ };
1724
+ };
1725
+ readonly type: "object";
1726
+ };
1727
+ };
1728
+ readonly requiredPermission: {
1729
+ readonly type: "string";
1730
+ };
1731
+ readonly separateVersions: {
1732
+ readonly type: "boolean";
1733
+ };
1734
+ readonly title: {
1735
+ readonly type: "string";
1736
+ };
1737
+ readonly titleTranslationKey: {
1738
+ readonly type: "string";
1739
+ };
1740
+ readonly description: {
1741
+ readonly type: "string";
1742
+ };
1743
+ readonly descriptionTranslationKey: {
1744
+ readonly type: "string";
1745
+ };
1746
+ };
1747
+ };
1748
+ };
1749
+ };
1750
+ readonly scorecard: {
1751
+ readonly type: "object";
1752
+ readonly additionalProperties: true;
1753
+ readonly required: readonly ["levels"];
1754
+ readonly properties: {
1755
+ readonly failBuildIfBelowMinimum: {
1756
+ readonly type: "boolean";
1757
+ readonly default: false;
1758
+ };
1759
+ readonly levels: {
1760
+ readonly type: "array";
1761
+ readonly items: {
1762
+ readonly type: "object";
1763
+ readonly required: readonly ["name"];
1764
+ readonly properties: {
1765
+ readonly name: {
1766
+ readonly type: "string";
1767
+ };
1768
+ readonly extends: {
1769
+ readonly type: "array";
1770
+ readonly items: {
1771
+ readonly type: "string";
1772
+ };
1773
+ };
1774
+ readonly rules: {
1775
+ readonly type: "object";
1776
+ readonly additionalProperties: {
1777
+ readonly type: readonly ["object", "string"];
1778
+ };
1779
+ };
1780
+ };
1781
+ readonly additionalProperties: false;
1782
+ };
1783
+ };
1784
+ readonly targets: {
1785
+ readonly type: "array";
1786
+ readonly items: {
1787
+ readonly type: "object";
1788
+ readonly required: readonly ["where"];
1789
+ readonly properties: {
1790
+ readonly minimumLevel: {
1791
+ readonly type: "string";
1792
+ };
1793
+ readonly where: {
1794
+ readonly type: "object";
1795
+ readonly required: readonly ["metadata"];
1796
+ readonly properties: {
1797
+ readonly metadata: {
1798
+ readonly type: "object";
1799
+ readonly additionalProperties: {
1800
+ readonly type: "string";
1801
+ };
1802
+ };
1803
+ };
1804
+ readonly additionalProperties: false;
1805
+ };
1806
+ };
1807
+ readonly additionalProperties: false;
1808
+ };
1809
+ };
1810
+ };
1811
+ };
1812
+ };
1813
+ readonly additionalProperties: true;
1814
+ readonly default: {};
1815
+ };
1816
+ export declare const productThemeOverrideSchema: {
1817
+ readonly type: "object";
1818
+ readonly properties: {
1819
+ readonly logo: {
1820
+ readonly type: "object";
1821
+ readonly properties: {
1822
+ readonly image: {
1823
+ readonly type: "string";
1824
+ };
1825
+ readonly altText: {
1826
+ readonly type: "string";
1827
+ };
1828
+ readonly link: {
1829
+ readonly type: "string";
1830
+ };
1831
+ readonly favicon: {
1832
+ readonly type: "string";
1833
+ };
1834
+ };
1835
+ readonly additionalProperties: false;
1836
+ };
1837
+ readonly navbar: {
1838
+ readonly type: "object";
1839
+ readonly properties: {
1840
+ readonly hide: {
1841
+ readonly type: "boolean";
1842
+ };
1843
+ readonly items: {
1844
+ readonly type: "array";
1845
+ readonly items: {
1846
+ readonly properties: {
1847
+ readonly items: {
1848
+ readonly type: "array";
1849
+ readonly items: {
1850
+ readonly type: "object";
1851
+ readonly properties: {
1852
+ readonly page: {
1853
+ readonly type: "string";
1854
+ };
1855
+ readonly directory: {
1856
+ readonly type: "string";
1857
+ };
1858
+ readonly group: {
1859
+ readonly type: "string";
1860
+ };
1861
+ readonly label: {
1862
+ readonly type: "string";
1863
+ };
1864
+ readonly separator: {
1865
+ readonly type: "string";
1866
+ };
1867
+ readonly separatorLine: {
1868
+ readonly type: "boolean";
1869
+ };
1870
+ readonly version: {
1871
+ readonly type: "string";
1872
+ };
1873
+ readonly menuStyle: {
1874
+ readonly type: "string";
1875
+ readonly enum: readonly ["drilldown"];
1876
+ };
1877
+ readonly expanded: {
1878
+ readonly type: "string";
1879
+ readonly const: "always";
1880
+ };
1881
+ readonly selectFirstItemOnExpand: {
1882
+ readonly type: "boolean";
1883
+ };
1884
+ readonly flatten: {
1885
+ readonly type: "boolean";
1886
+ };
1887
+ readonly linkedSidebars: {
1888
+ readonly type: "array";
1889
+ readonly items: {
1890
+ readonly type: "string";
1891
+ };
1892
+ };
1893
+ };
1894
+ };
1895
+ };
1896
+ readonly page: {
1897
+ readonly type: "string";
1898
+ };
1899
+ readonly directory: {
1900
+ readonly type: "string";
1901
+ };
1902
+ readonly group: {
1903
+ readonly type: "string";
1904
+ };
1905
+ readonly label: {
1906
+ readonly type: "string";
1907
+ };
1908
+ readonly separator: {
1909
+ readonly type: "string";
1910
+ };
1911
+ readonly separatorLine: {
1912
+ readonly type: "boolean";
1913
+ };
1914
+ readonly version: {
1915
+ readonly type: "string";
1916
+ };
1917
+ readonly menuStyle: {
1918
+ readonly type: "string";
1919
+ readonly enum: readonly ["drilldown"];
1920
+ };
1921
+ readonly expanded: {
1922
+ readonly type: "string";
1923
+ readonly const: "always";
1924
+ };
1925
+ readonly selectFirstItemOnExpand: {
1926
+ readonly type: "boolean";
1927
+ };
1928
+ readonly flatten: {
1929
+ readonly type: "boolean";
1930
+ };
1931
+ readonly linkedSidebars: {
1932
+ readonly type: "array";
1933
+ readonly items: {
1934
+ readonly type: "string";
1935
+ };
1936
+ };
1937
+ };
1938
+ readonly type: "object";
1939
+ };
1940
+ };
1941
+ };
1942
+ readonly additionalProperties: false;
1943
+ };
1944
+ readonly footer: {
1945
+ readonly type: "object";
1946
+ readonly properties: {
1947
+ readonly hide: {
1948
+ readonly type: "boolean";
1949
+ };
1950
+ readonly items: {
1951
+ readonly type: "array";
1952
+ readonly items: {
1953
+ readonly properties: {
1954
+ readonly items: {
1955
+ readonly type: "array";
1956
+ readonly items: {
1957
+ readonly type: "object";
1958
+ readonly properties: {
1959
+ readonly page: {
1960
+ readonly type: "string";
1961
+ };
1962
+ readonly directory: {
1963
+ readonly type: "string";
1964
+ };
1965
+ readonly group: {
1966
+ readonly type: "string";
1967
+ };
1968
+ readonly label: {
1969
+ readonly type: "string";
1970
+ };
1971
+ readonly separator: {
1972
+ readonly type: "string";
1973
+ };
1974
+ readonly separatorLine: {
1975
+ readonly type: "boolean";
1976
+ };
1977
+ readonly version: {
1978
+ readonly type: "string";
1979
+ };
1980
+ readonly menuStyle: {
1981
+ readonly type: "string";
1982
+ readonly enum: readonly ["drilldown"];
1983
+ };
1984
+ readonly expanded: {
1985
+ readonly type: "string";
1986
+ readonly const: "always";
1987
+ };
1988
+ readonly selectFirstItemOnExpand: {
1989
+ readonly type: "boolean";
1990
+ };
1991
+ readonly flatten: {
1992
+ readonly type: "boolean";
1993
+ };
1994
+ readonly linkedSidebars: {
1995
+ readonly type: "array";
1996
+ readonly items: {
1997
+ readonly type: "string";
1998
+ };
1999
+ };
2000
+ };
2001
+ };
2002
+ };
2003
+ readonly page: {
2004
+ readonly type: "string";
2005
+ };
2006
+ readonly directory: {
2007
+ readonly type: "string";
2008
+ };
2009
+ readonly group: {
2010
+ readonly type: "string";
2011
+ };
2012
+ readonly label: {
2013
+ readonly type: "string";
2014
+ };
2015
+ readonly separator: {
2016
+ readonly type: "string";
2017
+ };
2018
+ readonly separatorLine: {
2019
+ readonly type: "boolean";
2020
+ };
2021
+ readonly version: {
2022
+ readonly type: "string";
2023
+ };
2024
+ readonly menuStyle: {
2025
+ readonly type: "string";
2026
+ readonly enum: readonly ["drilldown"];
2027
+ };
2028
+ readonly expanded: {
2029
+ readonly type: "string";
2030
+ readonly const: "always";
2031
+ };
2032
+ readonly selectFirstItemOnExpand: {
2033
+ readonly type: "boolean";
2034
+ };
2035
+ readonly flatten: {
2036
+ readonly type: "boolean";
2037
+ };
2038
+ readonly linkedSidebars: {
2039
+ readonly type: "array";
2040
+ readonly items: {
2041
+ readonly type: "string";
2042
+ };
2043
+ };
2044
+ };
2045
+ readonly type: "object";
2046
+ };
2047
+ };
2048
+ readonly copyrightText: {
2049
+ readonly type: "string";
2050
+ };
2051
+ };
2052
+ readonly additionalProperties: false;
2053
+ };
2054
+ readonly sidebar: {
2055
+ readonly type: "object";
2056
+ readonly properties: {
2057
+ readonly hide: {
2058
+ readonly type: "boolean";
2059
+ };
2060
+ };
2061
+ readonly additionalProperties: false;
2062
+ };
2063
+ readonly search: {
2064
+ readonly type: "object";
2065
+ readonly properties: {
2066
+ readonly hide: {
2067
+ readonly type: "boolean";
2068
+ };
2069
+ readonly placement: {
2070
+ readonly type: "string";
2071
+ readonly default: "navbar";
2072
+ };
2073
+ readonly shortcuts: {
2074
+ readonly type: "array";
2075
+ readonly items: {
2076
+ readonly type: "string";
2077
+ };
2078
+ readonly default: readonly ["/"];
2079
+ };
2080
+ readonly suggestedPages: {
2081
+ readonly type: "array";
2082
+ readonly items: {
2083
+ readonly type: "object";
2084
+ readonly properties: {
2085
+ readonly page: {
2086
+ readonly type: "string";
2087
+ };
2088
+ readonly label: {
2089
+ readonly type: "string";
2090
+ };
2091
+ readonly labelTranslationKey: {
2092
+ readonly type: "string";
2093
+ };
2094
+ };
2095
+ readonly required: readonly ["page"];
2096
+ };
2097
+ };
2098
+ };
2099
+ readonly additionalProperties: false;
2100
+ readonly default: {};
2101
+ };
2102
+ readonly codeSnippet: {
2103
+ readonly type: "object";
2104
+ readonly properties: {
2105
+ readonly controlsStyle: {
2106
+ readonly type: "string";
2107
+ readonly default: "icon";
2108
+ };
2109
+ readonly copy: {
2110
+ readonly type: "object";
2111
+ readonly properties: {
2112
+ readonly hide: {
2113
+ readonly type: "boolean";
2114
+ };
2115
+ };
2116
+ readonly additionalProperties: false;
2117
+ readonly default: {
2118
+ readonly hide: false;
2119
+ };
2120
+ };
2121
+ readonly report: {
2122
+ readonly type: "object";
2123
+ readonly properties: {
2124
+ readonly hide: {
2125
+ readonly type: "boolean";
2126
+ };
2127
+ };
2128
+ readonly additionalProperties: false;
2129
+ readonly default: {
2130
+ readonly hide: true;
2131
+ };
2132
+ };
2133
+ readonly expand: {
2134
+ readonly type: "object";
2135
+ readonly properties: {
2136
+ readonly hide: {
2137
+ readonly type: "boolean";
2138
+ };
2139
+ };
2140
+ readonly additionalProperties: false;
2141
+ readonly default: {
2142
+ readonly hide: false;
2143
+ };
2144
+ };
2145
+ readonly collapse: {
2146
+ readonly type: "object";
2147
+ readonly properties: {
2148
+ readonly hide: {
2149
+ readonly type: "boolean";
2150
+ };
2151
+ };
2152
+ readonly additionalProperties: false;
2153
+ readonly default: {
2154
+ readonly hide: false;
2155
+ };
2156
+ };
2157
+ };
2158
+ readonly additionalProperties: false;
2159
+ readonly default: {};
2160
+ };
2161
+ readonly breadcrumbs: {
2162
+ readonly type: "object";
2163
+ readonly properties: {
2164
+ readonly hide: {
2165
+ readonly type: "boolean";
2166
+ };
2167
+ readonly prefixItems: {
2168
+ readonly type: "array";
2169
+ readonly items: {
2170
+ readonly type: "object";
2171
+ readonly properties: {
2172
+ readonly label: {
2173
+ readonly type: "string";
2174
+ };
2175
+ readonly labelTranslationKey: {
2176
+ readonly type: "string";
2177
+ };
2178
+ readonly page: {
2179
+ readonly type: "string";
2180
+ };
2181
+ };
2182
+ readonly additionalProperties: false;
2183
+ readonly default: {};
2184
+ };
2185
+ };
2186
+ };
2187
+ readonly additionalProperties: false;
2188
+ readonly default: {};
2189
+ };
2190
+ };
2191
+ readonly additionalProperties: true;
2192
+ readonly default: {};
2193
+ };