@theguild/federation-composition 0.0.0-alpha-20230916192321-bb37b43

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 (355) hide show
  1. package/LICENSE +18 -0
  2. package/cjs/compose.js +85 -0
  3. package/cjs/graphql/helpers.js +32 -0
  4. package/cjs/graphql/printer.js +248 -0
  5. package/cjs/graphql/type-node-info.js +142 -0
  6. package/cjs/index.js +22 -0
  7. package/cjs/package.json +1 -0
  8. package/cjs/specifications/federation.js +211 -0
  9. package/cjs/specifications/inaccessible.js +10 -0
  10. package/cjs/specifications/join.js +35 -0
  11. package/cjs/specifications/link.js +222 -0
  12. package/cjs/specifications/tag.js +12 -0
  13. package/cjs/subgraph/helpers.js +255 -0
  14. package/cjs/subgraph/state.js +1154 -0
  15. package/cjs/subgraph/validation/rules/elements/compose-directive.js +41 -0
  16. package/cjs/subgraph/validation/rules/elements/extends.js +34 -0
  17. package/cjs/subgraph/validation/rules/elements/external.js +57 -0
  18. package/cjs/subgraph/validation/rules/elements/field-set.js +37 -0
  19. package/cjs/subgraph/validation/rules/elements/inaccessible.js +112 -0
  20. package/cjs/subgraph/validation/rules/elements/key.js +148 -0
  21. package/cjs/subgraph/validation/rules/elements/override.js +56 -0
  22. package/cjs/subgraph/validation/rules/elements/provides.js +173 -0
  23. package/cjs/subgraph/validation/rules/elements/requires.js +119 -0
  24. package/cjs/subgraph/validation/rules/elements/shareable.js +43 -0
  25. package/cjs/subgraph/validation/rules/elements/tag.js +120 -0
  26. package/cjs/subgraph/validation/rules/known-argument-names-on-directives-rule.js +34 -0
  27. package/cjs/subgraph/validation/rules/known-directives-rule.js +105 -0
  28. package/cjs/subgraph/validation/rules/known-federation-directive-rule.js +34 -0
  29. package/cjs/subgraph/validation/rules/known-root-type-rule.js +25 -0
  30. package/cjs/subgraph/validation/rules/known-type-names-rule.js +34 -0
  31. package/cjs/subgraph/validation/rules/lone-schema-definition-rule.js +20 -0
  32. package/cjs/subgraph/validation/rules/provided-arguments-on-directives-rule.js +104 -0
  33. package/cjs/subgraph/validation/rules/provided-required-arguments-on-directives-rule.js +46 -0
  34. package/cjs/subgraph/validation/rules/query-root-type-inaccessible-rule.js +33 -0
  35. package/cjs/subgraph/validation/rules/reserved-subgraph-name-rule.js +15 -0
  36. package/cjs/subgraph/validation/rules/root-type-used-rule.js +59 -0
  37. package/cjs/subgraph/validation/rules/unique-argument-definition-names-rule.js +42 -0
  38. package/cjs/subgraph/validation/rules/unique-argument-names-rule.js +27 -0
  39. package/cjs/subgraph/validation/rules/unique-directive-names-rule.js +24 -0
  40. package/cjs/subgraph/validation/rules/unique-directives-per-location-rule.js +52 -0
  41. package/cjs/subgraph/validation/rules/unique-enum-value-names-rule.js +33 -0
  42. package/cjs/subgraph/validation/rules/unique-field-definition-names-rule.js +37 -0
  43. package/cjs/subgraph/validation/rules/unique-input-field-names-rule.js +37 -0
  44. package/cjs/subgraph/validation/rules/unique-operation-types-rule.js +29 -0
  45. package/cjs/subgraph/validation/rules/unique-type-names-rule.js +29 -0
  46. package/cjs/subgraph/validation/validate-state.js +476 -0
  47. package/cjs/subgraph/validation/validate-subgraph.js +329 -0
  48. package/cjs/subgraph/validation/validation-context.js +267 -0
  49. package/cjs/supergraph/composition/ast.js +779 -0
  50. package/cjs/supergraph/composition/common.js +7 -0
  51. package/cjs/supergraph/composition/directive.js +93 -0
  52. package/cjs/supergraph/composition/enum-type.js +132 -0
  53. package/cjs/supergraph/composition/input-object-type.js +119 -0
  54. package/cjs/supergraph/composition/interface-type.js +226 -0
  55. package/cjs/supergraph/composition/object-type.js +380 -0
  56. package/cjs/supergraph/composition/scalar-type.js +63 -0
  57. package/cjs/supergraph/composition/union-type.js +64 -0
  58. package/cjs/supergraph/composition/visitor.js +62 -0
  59. package/cjs/supergraph/state.js +249 -0
  60. package/cjs/supergraph/validation/rules/default-value-uses-inaccessible-rule.js +35 -0
  61. package/cjs/supergraph/validation/rules/directive-composition-rule.js +98 -0
  62. package/cjs/supergraph/validation/rules/enum-values-rule.js +59 -0
  63. package/cjs/supergraph/validation/rules/extension-with-base.js +31 -0
  64. package/cjs/supergraph/validation/rules/external-argument-missing-rule.js +32 -0
  65. package/cjs/supergraph/validation/rules/external-missing-on-base-rule.js +48 -0
  66. package/cjs/supergraph/validation/rules/external-type-mismatch-rule.js +52 -0
  67. package/cjs/supergraph/validation/rules/field-argument-default-mismatch-rule.js +40 -0
  68. package/cjs/supergraph/validation/rules/field-arguments-of-the-same-type-rule.js +49 -0
  69. package/cjs/supergraph/validation/rules/fields-of-the-same-type-rule.js +89 -0
  70. package/cjs/supergraph/validation/rules/input-field-default-mismatch-rule.js +40 -0
  71. package/cjs/supergraph/validation/rules/input-object-values-rule.js +25 -0
  72. package/cjs/supergraph/validation/rules/interface-key-missing-implementation-type.js +46 -0
  73. package/cjs/supergraph/validation/rules/invalid-field-sharing-rule.js +45 -0
  74. package/cjs/supergraph/validation/rules/only-inaccessible-children-rule.js +40 -0
  75. package/cjs/supergraph/validation/rules/override-source-has-override.js +36 -0
  76. package/cjs/supergraph/validation/rules/referenced-inaccessible-rule.js +44 -0
  77. package/cjs/supergraph/validation/rules/required-argument-missing-in-some-subgraph-rule.js +32 -0
  78. package/cjs/supergraph/validation/rules/required-input-field-missing-in-some-subgraph-rule.js +32 -0
  79. package/cjs/supergraph/validation/rules/required-query-rule.js +14 -0
  80. package/cjs/supergraph/validation/rules/satisfiablity-rule.js +866 -0
  81. package/cjs/supergraph/validation/rules/subgraph-name-rule.js +18 -0
  82. package/cjs/supergraph/validation/rules/types-of-the-same-kind-rule.js +54 -0
  83. package/cjs/supergraph/validation/validate-supergraph.js +77 -0
  84. package/cjs/supergraph/validation/validation-context.js +25 -0
  85. package/cjs/types.js +0 -0
  86. package/cjs/utils/dependency-graph.js +227 -0
  87. package/cjs/utils/format.js +27 -0
  88. package/cjs/utils/helpers.js +7 -0
  89. package/cjs/utils/state.js +23 -0
  90. package/cjs/validate.js +117 -0
  91. package/esm/compose.js +78 -0
  92. package/esm/graphql/helpers.js +27 -0
  93. package/esm/graphql/printer.js +244 -0
  94. package/esm/graphql/type-node-info.js +137 -0
  95. package/esm/index.js +4 -0
  96. package/esm/specifications/federation.js +204 -0
  97. package/esm/specifications/inaccessible.js +7 -0
  98. package/esm/specifications/join.js +32 -0
  99. package/esm/specifications/link.js +210 -0
  100. package/esm/specifications/tag.js +9 -0
  101. package/esm/subgraph/helpers.js +245 -0
  102. package/esm/subgraph/state.js +1148 -0
  103. package/esm/subgraph/validation/rules/elements/compose-directive.js +37 -0
  104. package/esm/subgraph/validation/rules/elements/extends.js +30 -0
  105. package/esm/subgraph/validation/rules/elements/external.js +53 -0
  106. package/esm/subgraph/validation/rules/elements/field-set.js +33 -0
  107. package/esm/subgraph/validation/rules/elements/inaccessible.js +108 -0
  108. package/esm/subgraph/validation/rules/elements/key.js +144 -0
  109. package/esm/subgraph/validation/rules/elements/override.js +52 -0
  110. package/esm/subgraph/validation/rules/elements/provides.js +169 -0
  111. package/esm/subgraph/validation/rules/elements/requires.js +115 -0
  112. package/esm/subgraph/validation/rules/elements/shareable.js +39 -0
  113. package/esm/subgraph/validation/rules/elements/tag.js +116 -0
  114. package/esm/subgraph/validation/rules/known-argument-names-on-directives-rule.js +30 -0
  115. package/esm/subgraph/validation/rules/known-directives-rule.js +101 -0
  116. package/esm/subgraph/validation/rules/known-federation-directive-rule.js +30 -0
  117. package/esm/subgraph/validation/rules/known-root-type-rule.js +21 -0
  118. package/esm/subgraph/validation/rules/known-type-names-rule.js +30 -0
  119. package/esm/subgraph/validation/rules/lone-schema-definition-rule.js +16 -0
  120. package/esm/subgraph/validation/rules/provided-arguments-on-directives-rule.js +100 -0
  121. package/esm/subgraph/validation/rules/provided-required-arguments-on-directives-rule.js +42 -0
  122. package/esm/subgraph/validation/rules/query-root-type-inaccessible-rule.js +29 -0
  123. package/esm/subgraph/validation/rules/reserved-subgraph-name-rule.js +11 -0
  124. package/esm/subgraph/validation/rules/root-type-used-rule.js +55 -0
  125. package/esm/subgraph/validation/rules/unique-argument-definition-names-rule.js +38 -0
  126. package/esm/subgraph/validation/rules/unique-argument-names-rule.js +23 -0
  127. package/esm/subgraph/validation/rules/unique-directive-names-rule.js +20 -0
  128. package/esm/subgraph/validation/rules/unique-directives-per-location-rule.js +48 -0
  129. package/esm/subgraph/validation/rules/unique-enum-value-names-rule.js +29 -0
  130. package/esm/subgraph/validation/rules/unique-field-definition-names-rule.js +33 -0
  131. package/esm/subgraph/validation/rules/unique-input-field-names-rule.js +33 -0
  132. package/esm/subgraph/validation/rules/unique-operation-types-rule.js +25 -0
  133. package/esm/subgraph/validation/rules/unique-type-names-rule.js +25 -0
  134. package/esm/subgraph/validation/validate-state.js +463 -0
  135. package/esm/subgraph/validation/validate-subgraph.js +323 -0
  136. package/esm/subgraph/validation/validation-context.js +262 -0
  137. package/esm/supergraph/composition/ast.js +765 -0
  138. package/esm/supergraph/composition/common.js +3 -0
  139. package/esm/supergraph/composition/directive.js +89 -0
  140. package/esm/supergraph/composition/enum-type.js +128 -0
  141. package/esm/supergraph/composition/input-object-type.js +115 -0
  142. package/esm/supergraph/composition/interface-type.js +222 -0
  143. package/esm/supergraph/composition/object-type.js +375 -0
  144. package/esm/supergraph/composition/scalar-type.js +59 -0
  145. package/esm/supergraph/composition/union-type.js +60 -0
  146. package/esm/supergraph/composition/visitor.js +58 -0
  147. package/esm/supergraph/state.js +245 -0
  148. package/esm/supergraph/validation/rules/default-value-uses-inaccessible-rule.js +31 -0
  149. package/esm/supergraph/validation/rules/directive-composition-rule.js +94 -0
  150. package/esm/supergraph/validation/rules/enum-values-rule.js +55 -0
  151. package/esm/supergraph/validation/rules/extension-with-base.js +27 -0
  152. package/esm/supergraph/validation/rules/external-argument-missing-rule.js +28 -0
  153. package/esm/supergraph/validation/rules/external-missing-on-base-rule.js +44 -0
  154. package/esm/supergraph/validation/rules/external-type-mismatch-rule.js +48 -0
  155. package/esm/supergraph/validation/rules/field-argument-default-mismatch-rule.js +36 -0
  156. package/esm/supergraph/validation/rules/field-arguments-of-the-same-type-rule.js +45 -0
  157. package/esm/supergraph/validation/rules/fields-of-the-same-type-rule.js +85 -0
  158. package/esm/supergraph/validation/rules/input-field-default-mismatch-rule.js +36 -0
  159. package/esm/supergraph/validation/rules/input-object-values-rule.js +21 -0
  160. package/esm/supergraph/validation/rules/interface-key-missing-implementation-type.js +42 -0
  161. package/esm/supergraph/validation/rules/invalid-field-sharing-rule.js +41 -0
  162. package/esm/supergraph/validation/rules/only-inaccessible-children-rule.js +36 -0
  163. package/esm/supergraph/validation/rules/override-source-has-override.js +32 -0
  164. package/esm/supergraph/validation/rules/referenced-inaccessible-rule.js +40 -0
  165. package/esm/supergraph/validation/rules/required-argument-missing-in-some-subgraph-rule.js +28 -0
  166. package/esm/supergraph/validation/rules/required-input-field-missing-in-some-subgraph-rule.js +28 -0
  167. package/esm/supergraph/validation/rules/required-query-rule.js +10 -0
  168. package/esm/supergraph/validation/rules/satisfiablity-rule.js +862 -0
  169. package/esm/supergraph/validation/rules/subgraph-name-rule.js +14 -0
  170. package/esm/supergraph/validation/rules/types-of-the-same-kind-rule.js +50 -0
  171. package/esm/supergraph/validation/validate-supergraph.js +73 -0
  172. package/esm/supergraph/validation/validation-context.js +21 -0
  173. package/esm/types.js +0 -0
  174. package/esm/utils/dependency-graph.js +222 -0
  175. package/esm/utils/format.js +23 -0
  176. package/esm/utils/helpers.js +3 -0
  177. package/esm/utils/state.js +15 -0
  178. package/esm/validate.js +113 -0
  179. package/package.json +46 -0
  180. package/typings/compose.d.cts +16 -0
  181. package/typings/compose.d.ts +16 -0
  182. package/typings/graphql/helpers.d.cts +4 -0
  183. package/typings/graphql/helpers.d.ts +4 -0
  184. package/typings/graphql/printer.d.cts +3 -0
  185. package/typings/graphql/printer.d.ts +3 -0
  186. package/typings/graphql/type-node-info.d.cts +19 -0
  187. package/typings/graphql/type-node-info.d.ts +19 -0
  188. package/typings/index.d.cts +5 -0
  189. package/typings/index.d.ts +5 -0
  190. package/typings/specifications/federation.d.cts +45 -0
  191. package/typings/specifications/federation.d.ts +45 -0
  192. package/typings/specifications/inaccessible.d.cts +4 -0
  193. package/typings/specifications/inaccessible.d.ts +4 -0
  194. package/typings/specifications/join.d.cts +2 -0
  195. package/typings/specifications/join.d.ts +2 -0
  196. package/typings/specifications/link.d.cts +61 -0
  197. package/typings/specifications/link.d.ts +61 -0
  198. package/typings/specifications/tag.d.cts +4 -0
  199. package/typings/specifications/tag.d.ts +4 -0
  200. package/typings/subgraph/helpers.d.cts +44 -0
  201. package/typings/subgraph/helpers.d.ts +44 -0
  202. package/typings/subgraph/state.d.cts +322 -0
  203. package/typings/subgraph/state.d.ts +322 -0
  204. package/typings/subgraph/validation/rules/elements/compose-directive.d.cts +4 -0
  205. package/typings/subgraph/validation/rules/elements/compose-directive.d.ts +4 -0
  206. package/typings/subgraph/validation/rules/elements/extends.d.cts +4 -0
  207. package/typings/subgraph/validation/rules/elements/extends.d.ts +4 -0
  208. package/typings/subgraph/validation/rules/elements/external.d.cts +4 -0
  209. package/typings/subgraph/validation/rules/elements/external.d.ts +4 -0
  210. package/typings/subgraph/validation/rules/elements/field-set.d.cts +4 -0
  211. package/typings/subgraph/validation/rules/elements/field-set.d.ts +4 -0
  212. package/typings/subgraph/validation/rules/elements/inaccessible.d.cts +4 -0
  213. package/typings/subgraph/validation/rules/elements/inaccessible.d.ts +4 -0
  214. package/typings/subgraph/validation/rules/elements/key.d.cts +4 -0
  215. package/typings/subgraph/validation/rules/elements/key.d.ts +4 -0
  216. package/typings/subgraph/validation/rules/elements/override.d.cts +4 -0
  217. package/typings/subgraph/validation/rules/elements/override.d.ts +4 -0
  218. package/typings/subgraph/validation/rules/elements/provides.d.cts +4 -0
  219. package/typings/subgraph/validation/rules/elements/provides.d.ts +4 -0
  220. package/typings/subgraph/validation/rules/elements/requires.d.cts +4 -0
  221. package/typings/subgraph/validation/rules/elements/requires.d.ts +4 -0
  222. package/typings/subgraph/validation/rules/elements/shareable.d.cts +4 -0
  223. package/typings/subgraph/validation/rules/elements/shareable.d.ts +4 -0
  224. package/typings/subgraph/validation/rules/elements/tag.d.cts +4 -0
  225. package/typings/subgraph/validation/rules/elements/tag.d.ts +4 -0
  226. package/typings/subgraph/validation/rules/known-argument-names-on-directives-rule.d.cts +6 -0
  227. package/typings/subgraph/validation/rules/known-argument-names-on-directives-rule.d.ts +6 -0
  228. package/typings/subgraph/validation/rules/known-directives-rule.d.cts +6 -0
  229. package/typings/subgraph/validation/rules/known-directives-rule.d.ts +6 -0
  230. package/typings/subgraph/validation/rules/known-federation-directive-rule.d.cts +4 -0
  231. package/typings/subgraph/validation/rules/known-federation-directive-rule.d.ts +4 -0
  232. package/typings/subgraph/validation/rules/known-root-type-rule.d.cts +4 -0
  233. package/typings/subgraph/validation/rules/known-root-type-rule.d.ts +4 -0
  234. package/typings/subgraph/validation/rules/known-type-names-rule.d.cts +4 -0
  235. package/typings/subgraph/validation/rules/known-type-names-rule.d.ts +4 -0
  236. package/typings/subgraph/validation/rules/lone-schema-definition-rule.d.cts +5 -0
  237. package/typings/subgraph/validation/rules/lone-schema-definition-rule.d.ts +5 -0
  238. package/typings/subgraph/validation/rules/provided-arguments-on-directives-rule.d.cts +4 -0
  239. package/typings/subgraph/validation/rules/provided-arguments-on-directives-rule.d.ts +4 -0
  240. package/typings/subgraph/validation/rules/provided-required-arguments-on-directives-rule.d.cts +4 -0
  241. package/typings/subgraph/validation/rules/provided-required-arguments-on-directives-rule.d.ts +4 -0
  242. package/typings/subgraph/validation/rules/query-root-type-inaccessible-rule.d.cts +4 -0
  243. package/typings/subgraph/validation/rules/query-root-type-inaccessible-rule.d.ts +4 -0
  244. package/typings/subgraph/validation/rules/reserved-subgraph-name-rule.d.cts +4 -0
  245. package/typings/subgraph/validation/rules/reserved-subgraph-name-rule.d.ts +4 -0
  246. package/typings/subgraph/validation/rules/root-type-used-rule.d.cts +4 -0
  247. package/typings/subgraph/validation/rules/root-type-used-rule.d.ts +4 -0
  248. package/typings/subgraph/validation/rules/unique-argument-definition-names-rule.d.cts +5 -0
  249. package/typings/subgraph/validation/rules/unique-argument-definition-names-rule.d.ts +5 -0
  250. package/typings/subgraph/validation/rules/unique-argument-names-rule.d.cts +5 -0
  251. package/typings/subgraph/validation/rules/unique-argument-names-rule.d.ts +5 -0
  252. package/typings/subgraph/validation/rules/unique-directive-names-rule.d.cts +5 -0
  253. package/typings/subgraph/validation/rules/unique-directive-names-rule.d.ts +5 -0
  254. package/typings/subgraph/validation/rules/unique-directives-per-location-rule.d.cts +6 -0
  255. package/typings/subgraph/validation/rules/unique-directives-per-location-rule.d.ts +6 -0
  256. package/typings/subgraph/validation/rules/unique-enum-value-names-rule.d.cts +5 -0
  257. package/typings/subgraph/validation/rules/unique-enum-value-names-rule.d.ts +5 -0
  258. package/typings/subgraph/validation/rules/unique-field-definition-names-rule.d.cts +5 -0
  259. package/typings/subgraph/validation/rules/unique-field-definition-names-rule.d.ts +5 -0
  260. package/typings/subgraph/validation/rules/unique-input-field-names-rule.d.cts +5 -0
  261. package/typings/subgraph/validation/rules/unique-input-field-names-rule.d.ts +5 -0
  262. package/typings/subgraph/validation/rules/unique-operation-types-rule.d.cts +5 -0
  263. package/typings/subgraph/validation/rules/unique-operation-types-rule.d.ts +5 -0
  264. package/typings/subgraph/validation/rules/unique-type-names-rule.d.cts +5 -0
  265. package/typings/subgraph/validation/rules/unique-type-names-rule.d.ts +5 -0
  266. package/typings/subgraph/validation/validate-state.d.cts +13 -0
  267. package/typings/subgraph/validation/validate-state.d.ts +13 -0
  268. package/typings/subgraph/validation/validate-subgraph.d.cts +43 -0
  269. package/typings/subgraph/validation/validate-subgraph.d.ts +43 -0
  270. package/typings/subgraph/validation/validation-context.d.cts +182 -0
  271. package/typings/subgraph/validation/validation-context.d.ts +182 -0
  272. package/typings/supergraph/composition/ast.d.cts +216 -0
  273. package/typings/supergraph/composition/ast.d.ts +216 -0
  274. package/typings/supergraph/composition/common.d.cts +19 -0
  275. package/typings/supergraph/composition/common.d.ts +19 -0
  276. package/typings/supergraph/composition/directive.d.cts +32 -0
  277. package/typings/supergraph/composition/directive.d.ts +32 -0
  278. package/typings/supergraph/composition/enum-type.d.cts +32 -0
  279. package/typings/supergraph/composition/enum-type.d.ts +32 -0
  280. package/typings/supergraph/composition/input-object-type.d.cts +32 -0
  281. package/typings/supergraph/composition/input-object-type.d.ts +32 -0
  282. package/typings/supergraph/composition/interface-type.d.cts +61 -0
  283. package/typings/supergraph/composition/interface-type.d.ts +61 -0
  284. package/typings/supergraph/composition/object-type.d.cts +79 -0
  285. package/typings/supergraph/composition/object-type.d.ts +79 -0
  286. package/typings/supergraph/composition/scalar-type.d.cts +20 -0
  287. package/typings/supergraph/composition/scalar-type.d.ts +20 -0
  288. package/typings/supergraph/composition/union-type.d.cts +17 -0
  289. package/typings/supergraph/composition/union-type.d.ts +17 -0
  290. package/typings/supergraph/composition/visitor.d.cts +18 -0
  291. package/typings/supergraph/composition/visitor.d.ts +18 -0
  292. package/typings/supergraph/state.d.cts +51 -0
  293. package/typings/supergraph/state.d.ts +51 -0
  294. package/typings/supergraph/validation/rules/default-value-uses-inaccessible-rule.d.cts +5 -0
  295. package/typings/supergraph/validation/rules/default-value-uses-inaccessible-rule.d.ts +5 -0
  296. package/typings/supergraph/validation/rules/directive-composition-rule.d.cts +5 -0
  297. package/typings/supergraph/validation/rules/directive-composition-rule.d.ts +5 -0
  298. package/typings/supergraph/validation/rules/enum-values-rule.d.cts +4 -0
  299. package/typings/supergraph/validation/rules/enum-values-rule.d.ts +4 -0
  300. package/typings/supergraph/validation/rules/extension-with-base.d.cts +4 -0
  301. package/typings/supergraph/validation/rules/extension-with-base.d.ts +4 -0
  302. package/typings/supergraph/validation/rules/external-argument-missing-rule.d.cts +4 -0
  303. package/typings/supergraph/validation/rules/external-argument-missing-rule.d.ts +4 -0
  304. package/typings/supergraph/validation/rules/external-missing-on-base-rule.d.cts +4 -0
  305. package/typings/supergraph/validation/rules/external-missing-on-base-rule.d.ts +4 -0
  306. package/typings/supergraph/validation/rules/external-type-mismatch-rule.d.cts +4 -0
  307. package/typings/supergraph/validation/rules/external-type-mismatch-rule.d.ts +4 -0
  308. package/typings/supergraph/validation/rules/field-argument-default-mismatch-rule.d.cts +4 -0
  309. package/typings/supergraph/validation/rules/field-argument-default-mismatch-rule.d.ts +4 -0
  310. package/typings/supergraph/validation/rules/field-arguments-of-the-same-type-rule.d.cts +4 -0
  311. package/typings/supergraph/validation/rules/field-arguments-of-the-same-type-rule.d.ts +4 -0
  312. package/typings/supergraph/validation/rules/fields-of-the-same-type-rule.d.cts +4 -0
  313. package/typings/supergraph/validation/rules/fields-of-the-same-type-rule.d.ts +4 -0
  314. package/typings/supergraph/validation/rules/input-field-default-mismatch-rule.d.cts +4 -0
  315. package/typings/supergraph/validation/rules/input-field-default-mismatch-rule.d.ts +4 -0
  316. package/typings/supergraph/validation/rules/input-object-values-rule.d.cts +4 -0
  317. package/typings/supergraph/validation/rules/input-object-values-rule.d.ts +4 -0
  318. package/typings/supergraph/validation/rules/interface-key-missing-implementation-type.d.cts +4 -0
  319. package/typings/supergraph/validation/rules/interface-key-missing-implementation-type.d.ts +4 -0
  320. package/typings/supergraph/validation/rules/invalid-field-sharing-rule.d.cts +4 -0
  321. package/typings/supergraph/validation/rules/invalid-field-sharing-rule.d.ts +4 -0
  322. package/typings/supergraph/validation/rules/only-inaccessible-children-rule.d.cts +4 -0
  323. package/typings/supergraph/validation/rules/only-inaccessible-children-rule.d.ts +4 -0
  324. package/typings/supergraph/validation/rules/override-source-has-override.d.cts +4 -0
  325. package/typings/supergraph/validation/rules/override-source-has-override.d.ts +4 -0
  326. package/typings/supergraph/validation/rules/referenced-inaccessible-rule.d.cts +5 -0
  327. package/typings/supergraph/validation/rules/referenced-inaccessible-rule.d.ts +5 -0
  328. package/typings/supergraph/validation/rules/required-argument-missing-in-some-subgraph-rule.d.cts +4 -0
  329. package/typings/supergraph/validation/rules/required-argument-missing-in-some-subgraph-rule.d.ts +4 -0
  330. package/typings/supergraph/validation/rules/required-input-field-missing-in-some-subgraph-rule.d.cts +4 -0
  331. package/typings/supergraph/validation/rules/required-input-field-missing-in-some-subgraph-rule.d.ts +4 -0
  332. package/typings/supergraph/validation/rules/required-query-rule.d.cts +3 -0
  333. package/typings/supergraph/validation/rules/required-query-rule.d.ts +3 -0
  334. package/typings/supergraph/validation/rules/satisfiablity-rule.d.cts +5 -0
  335. package/typings/supergraph/validation/rules/satisfiablity-rule.d.ts +5 -0
  336. package/typings/supergraph/validation/rules/subgraph-name-rule.d.cts +3 -0
  337. package/typings/supergraph/validation/rules/subgraph-name-rule.d.ts +3 -0
  338. package/typings/supergraph/validation/rules/types-of-the-same-kind-rule.d.cts +3 -0
  339. package/typings/supergraph/validation/rules/types-of-the-same-kind-rule.d.ts +3 -0
  340. package/typings/supergraph/validation/validate-supergraph.d.cts +6 -0
  341. package/typings/supergraph/validation/validate-supergraph.d.ts +6 -0
  342. package/typings/supergraph/validation/validation-context.d.cts +10 -0
  343. package/typings/supergraph/validation/validation-context.d.ts +10 -0
  344. package/typings/types.d.cts +7 -0
  345. package/typings/types.d.ts +7 -0
  346. package/typings/utils/dependency-graph.d.cts +31 -0
  347. package/typings/utils/dependency-graph.d.ts +31 -0
  348. package/typings/utils/format.d.cts +2 -0
  349. package/typings/utils/format.d.ts +2 -0
  350. package/typings/utils/helpers.d.cts +2 -0
  351. package/typings/utils/helpers.d.ts +2 -0
  352. package/typings/utils/state.d.cts +6 -0
  353. package/typings/utils/state.d.ts +6 -0
  354. package/typings/validate.d.cts +37 -0
  355. package/typings/validate.d.ts +37 -0
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../../validation-context.cjs';
3
+ export declare function InaccessibleRules(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=inaccessible.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../../validation-context.js';
3
+ export declare function InaccessibleRules(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=inaccessible.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../../validation-context.cjs';
3
+ export declare function KeyRules(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=key.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../../validation-context.js';
3
+ export declare function KeyRules(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=key.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../../validation-context.cjs';
3
+ export declare function OverrideRules(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=override.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../../validation-context.js';
3
+ export declare function OverrideRules(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=override.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../../validation-context.cjs';
3
+ export declare function ProvidesRules(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=provides.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../../validation-context.js';
3
+ export declare function ProvidesRules(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=provides.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../../validation-context.cjs';
3
+ export declare function RequiresRules(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=requires.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../../validation-context.js';
3
+ export declare function RequiresRules(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=requires.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../../validation-context.cjs';
3
+ export declare function ShareableRules(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=shareable.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../../validation-context.js';
3
+ export declare function ShareableRules(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=shareable.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../../validation-context.cjs';
3
+ export declare function TagRules(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=tag.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../../validation-context.js';
3
+ export declare function TagRules(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=tag.d.ts.map
@@ -0,0 +1,6 @@
1
+ import { ASTVisitor, DocumentNode, GraphQLError } from 'graphql';
2
+ export declare function KnownArgumentNamesOnDirectivesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ getDocument: () => DocumentNode;
5
+ }): ASTVisitor;
6
+ //# sourceMappingURL=known-argument-names-on-directives-rule.d.ts.map
@@ -0,0 +1,6 @@
1
+ import { ASTVisitor, DocumentNode, GraphQLError } from 'graphql';
2
+ export declare function KnownArgumentNamesOnDirectivesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ getDocument: () => DocumentNode;
5
+ }): ASTVisitor;
6
+ //# sourceMappingURL=known-argument-names-on-directives-rule.d.ts.map
@@ -0,0 +1,6 @@
1
+ import { ASTVisitor, DocumentNode, GraphQLError } from 'graphql';
2
+ export declare function KnownDirectivesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ getDocument(): DocumentNode;
5
+ }): ASTVisitor;
6
+ //# sourceMappingURL=known-directives-rule.d.ts.map
@@ -0,0 +1,6 @@
1
+ import { ASTVisitor, DocumentNode, GraphQLError } from 'graphql';
2
+ export declare function KnownDirectivesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ getDocument(): DocumentNode;
5
+ }): ASTVisitor;
6
+ //# sourceMappingURL=known-directives-rule.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../validation-context.cjs';
3
+ export declare function KnownFederationDirectivesRule(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=known-federation-directive-rule.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../validation-context.js';
3
+ export declare function KnownFederationDirectivesRule(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=known-federation-directive-rule.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../validation-context.cjs';
3
+ export declare function KnownRootTypeRule(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=known-root-type-rule.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../validation-context.js';
3
+ export declare function KnownRootTypeRule(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=known-root-type-rule.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../validation-context.cjs';
3
+ export declare function KnownTypeNamesRule(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=known-type-names-rule.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../validation-context.js';
3
+ export declare function KnownTypeNamesRule(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=known-type-names-rule.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { ASTVisitor, GraphQLError } from 'graphql';
2
+ export declare function LoneSchemaDefinitionRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ }): ASTVisitor;
5
+ //# sourceMappingURL=lone-schema-definition-rule.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { ASTVisitor, GraphQLError } from 'graphql';
2
+ export declare function LoneSchemaDefinitionRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ }): ASTVisitor;
5
+ //# sourceMappingURL=lone-schema-definition-rule.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SimpleValidationContext } from '../validation-context.cjs';
3
+ export declare function ProvidedArgumentsOnDirectivesRule(context: SimpleValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=provided-arguments-on-directives-rule.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SimpleValidationContext } from '../validation-context.js';
3
+ export declare function ProvidedArgumentsOnDirectivesRule(context: SimpleValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=provided-arguments-on-directives-rule.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SimpleValidationContext } from '../validation-context.cjs';
3
+ export declare function ProvidedRequiredArgumentsOnDirectivesRule(context: SimpleValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=provided-required-arguments-on-directives-rule.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SimpleValidationContext } from '../validation-context.js';
3
+ export declare function ProvidedRequiredArgumentsOnDirectivesRule(context: SimpleValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=provided-required-arguments-on-directives-rule.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../validation-context.cjs';
3
+ export declare function QueryRootTypeInaccessibleRule(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=query-root-type-inaccessible-rule.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../validation-context.js';
3
+ export declare function QueryRootTypeInaccessibleRule(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=query-root-type-inaccessible-rule.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../validation-context.cjs';
3
+ export declare function ReservedSubgraphNameRule(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=reserved-subgraph-name-rule.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../validation-context.js';
3
+ export declare function ReservedSubgraphNameRule(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=reserved-subgraph-name-rule.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../validation-context.cjs';
3
+ export declare function RootTypeUsedRule(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=root-type-used-rule.d.ts.map
@@ -0,0 +1,4 @@
1
+ import { ASTVisitor } from 'graphql';
2
+ import type { SubgraphValidationContext } from '../validation-context.js';
3
+ export declare function RootTypeUsedRule(context: SubgraphValidationContext): ASTVisitor;
4
+ //# sourceMappingURL=root-type-used-rule.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { ASTVisitor, GraphQLError } from 'graphql';
2
+ export declare function UniqueArgumentDefinitionNamesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ }): ASTVisitor;
5
+ //# sourceMappingURL=unique-argument-definition-names-rule.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { ASTVisitor, GraphQLError } from 'graphql';
2
+ export declare function UniqueArgumentDefinitionNamesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ }): ASTVisitor;
5
+ //# sourceMappingURL=unique-argument-definition-names-rule.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { ASTVisitor, GraphQLError } from 'graphql';
2
+ export declare function UniqueArgumentNamesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ }): ASTVisitor;
5
+ //# sourceMappingURL=unique-argument-names-rule.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { ASTVisitor, GraphQLError } from 'graphql';
2
+ export declare function UniqueArgumentNamesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ }): ASTVisitor;
5
+ //# sourceMappingURL=unique-argument-names-rule.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { ASTVisitor, GraphQLError } from 'graphql';
2
+ export declare function UniqueDirectiveNamesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ }): ASTVisitor;
5
+ //# sourceMappingURL=unique-directive-names-rule.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { ASTVisitor, GraphQLError } from 'graphql';
2
+ export declare function UniqueDirectiveNamesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ }): ASTVisitor;
5
+ //# sourceMappingURL=unique-directive-names-rule.d.ts.map
@@ -0,0 +1,6 @@
1
+ import { ASTVisitor, DocumentNode, GraphQLError } from 'graphql';
2
+ export declare function UniqueDirectivesPerLocationRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ getDocument(): DocumentNode;
5
+ }): ASTVisitor;
6
+ //# sourceMappingURL=unique-directives-per-location-rule.d.ts.map
@@ -0,0 +1,6 @@
1
+ import { ASTVisitor, DocumentNode, GraphQLError } from 'graphql';
2
+ export declare function UniqueDirectivesPerLocationRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ getDocument(): DocumentNode;
5
+ }): ASTVisitor;
6
+ //# sourceMappingURL=unique-directives-per-location-rule.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { ASTVisitor, GraphQLError } from 'graphql';
2
+ export declare function UniqueEnumValueNamesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ }): ASTVisitor;
5
+ //# sourceMappingURL=unique-enum-value-names-rule.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { ASTVisitor, GraphQLError } from 'graphql';
2
+ export declare function UniqueEnumValueNamesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ }): ASTVisitor;
5
+ //# sourceMappingURL=unique-enum-value-names-rule.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { ASTVisitor, GraphQLError } from 'graphql';
2
+ export declare function UniqueFieldDefinitionNamesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ }): ASTVisitor;
5
+ //# sourceMappingURL=unique-field-definition-names-rule.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { ASTVisitor, GraphQLError } from 'graphql';
2
+ export declare function UniqueFieldDefinitionNamesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ }): ASTVisitor;
5
+ //# sourceMappingURL=unique-field-definition-names-rule.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { ASTVisitor, GraphQLError } from 'graphql';
2
+ export declare function UniqueInputFieldNamesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ }): ASTVisitor;
5
+ //# sourceMappingURL=unique-input-field-names-rule.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { ASTVisitor, GraphQLError } from 'graphql';
2
+ export declare function UniqueInputFieldNamesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ }): ASTVisitor;
5
+ //# sourceMappingURL=unique-input-field-names-rule.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { ASTVisitor, GraphQLError } from 'graphql';
2
+ export declare function UniqueOperationTypesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ }): ASTVisitor;
5
+ //# sourceMappingURL=unique-operation-types-rule.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { ASTVisitor, GraphQLError } from 'graphql';
2
+ export declare function UniqueOperationTypesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ }): ASTVisitor;
5
+ //# sourceMappingURL=unique-operation-types-rule.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { ASTVisitor, GraphQLError } from 'graphql';
2
+ export declare function UniqueTypeNamesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ }): ASTVisitor;
5
+ //# sourceMappingURL=unique-type-names-rule.d.ts.map
@@ -0,0 +1,5 @@
1
+ import { ASTVisitor, GraphQLError } from 'graphql';
2
+ export declare function UniqueTypeNamesRule(context: {
3
+ reportError: (error: GraphQLError) => void;
4
+ }): ASTVisitor;
5
+ //# sourceMappingURL=unique-type-names-rule.d.ts.map
@@ -0,0 +1,13 @@
1
+ import { GraphQLError } from 'graphql';
2
+ import { EnumType, InputObjectType, InterfaceType, ObjectType, ScalarType, SubgraphState, SubgraphType, UnionType } from '../state.cjs';
3
+ export declare function validateSubgraphState(state: SubgraphState): GraphQLError[];
4
+ export declare function isTypeSubTypeOf(state: SubgraphState, implementationsMap: Map<string, Set<string>>, maybeSubTypeName: string, superTypeName: string): boolean;
5
+ export declare function isInputType(state: SubgraphState, typeName: string): boolean;
6
+ export declare function typeExists(state: SubgraphState, typeName: string): boolean;
7
+ export declare function isInputObjectType(type: SubgraphType): type is InputObjectType;
8
+ export declare function isScalarType(type: SubgraphType): type is ScalarType;
9
+ export declare function isEnumType(type: SubgraphType): type is EnumType;
10
+ export declare function isObjectType(type: SubgraphType): type is ObjectType;
11
+ export declare function isInterfaceType(type: SubgraphType): type is InterfaceType;
12
+ export declare function isUnionType(type: SubgraphType): type is UnionType;
13
+ //# sourceMappingURL=validate-state.d.ts.map
@@ -0,0 +1,13 @@
1
+ import { GraphQLError } from 'graphql';
2
+ import { EnumType, InputObjectType, InterfaceType, ObjectType, ScalarType, SubgraphState, SubgraphType, UnionType } from '../state.js';
3
+ export declare function validateSubgraphState(state: SubgraphState): GraphQLError[];
4
+ export declare function isTypeSubTypeOf(state: SubgraphState, implementationsMap: Map<string, Set<string>>, maybeSubTypeName: string, superTypeName: string): boolean;
5
+ export declare function isInputType(state: SubgraphState, typeName: string): boolean;
6
+ export declare function typeExists(state: SubgraphState, typeName: string): boolean;
7
+ export declare function isInputObjectType(type: SubgraphType): type is InputObjectType;
8
+ export declare function isScalarType(type: SubgraphType): type is ScalarType;
9
+ export declare function isEnumType(type: SubgraphType): type is EnumType;
10
+ export declare function isObjectType(type: SubgraphType): type is ObjectType;
11
+ export declare function isInterfaceType(type: SubgraphType): type is InterfaceType;
12
+ export declare function isUnionType(type: SubgraphType): type is UnionType;
13
+ //# sourceMappingURL=validate-state.d.ts.map
@@ -0,0 +1,43 @@
1
+ import { DocumentNode, GraphQLError } from 'graphql';
2
+ import { FederationVersion } from '../../specifications/federation.cjs';
3
+ import { LinkImport } from '../../specifications/link.cjs';
4
+ import { SubgraphStateBuilder } from '../state.cjs';
5
+ export declare function assertUniqueSubgraphNames(subgraphs: ReadonlyArray<{
6
+ name: string;
7
+ }>): asserts subgraphs is Array<{
8
+ name: string;
9
+ }>;
10
+ export declare function validateSubgraphCore(subgraph: {
11
+ name: string;
12
+ typeDefs: DocumentNode;
13
+ }): {
14
+ errors: GraphQLError[];
15
+ links?: undefined;
16
+ } | {
17
+ links: {
18
+ name: string | null;
19
+ version: string | null;
20
+ identity: string;
21
+ imports: ({
22
+ readonly kind: "type" | "directive";
23
+ readonly name: string;
24
+ readonly alias?: undefined;
25
+ } | {
26
+ readonly kind: "type" | "directive";
27
+ readonly name: string;
28
+ readonly alias: string;
29
+ })[];
30
+ }[];
31
+ errors?: undefined;
32
+ };
33
+ export declare function validateSubgraph(subgraph: {
34
+ name: string;
35
+ typeDefs: DocumentNode;
36
+ id: string;
37
+ }, stateBuilder: SubgraphStateBuilder, federation: {
38
+ version: FederationVersion;
39
+ imports: readonly LinkImport[];
40
+ }, __internal?: {
41
+ disableValidationRules?: string[];
42
+ }): GraphQLError[];
43
+ //# sourceMappingURL=validate-subgraph.d.ts.map
@@ -0,0 +1,43 @@
1
+ import { DocumentNode, GraphQLError } from 'graphql';
2
+ import { FederationVersion } from '../../specifications/federation.js';
3
+ import { LinkImport } from '../../specifications/link.js';
4
+ import { SubgraphStateBuilder } from '../state.js';
5
+ export declare function assertUniqueSubgraphNames(subgraphs: ReadonlyArray<{
6
+ name: string;
7
+ }>): asserts subgraphs is Array<{
8
+ name: string;
9
+ }>;
10
+ export declare function validateSubgraphCore(subgraph: {
11
+ name: string;
12
+ typeDefs: DocumentNode;
13
+ }): {
14
+ errors: GraphQLError[];
15
+ links?: undefined;
16
+ } | {
17
+ links: {
18
+ name: string | null;
19
+ version: string | null;
20
+ identity: string;
21
+ imports: ({
22
+ readonly kind: "type" | "directive";
23
+ readonly name: string;
24
+ readonly alias?: undefined;
25
+ } | {
26
+ readonly kind: "type" | "directive";
27
+ readonly name: string;
28
+ readonly alias: string;
29
+ })[];
30
+ }[];
31
+ errors?: undefined;
32
+ };
33
+ export declare function validateSubgraph(subgraph: {
34
+ name: string;
35
+ typeDefs: DocumentNode;
36
+ id: string;
37
+ }, stateBuilder: SubgraphStateBuilder, federation: {
38
+ version: FederationVersion;
39
+ imports: readonly LinkImport[];
40
+ }, __internal?: {
41
+ disableValidationRules?: string[];
42
+ }): GraphQLError[];
43
+ //# sourceMappingURL=validate-subgraph.d.ts.map