@graphql-eslint/eslint-plugin 4.0.0-alpha-20220821140530-e968cfc → 4.0.0-alpha-20230810155929-e89edf7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (346) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +14 -252
  3. package/cjs/cache.d.ts +12 -0
  4. package/cjs/cache.js +53 -0
  5. package/cjs/configs/index.d.ts +174 -0
  6. package/cjs/configs/index.js +40 -0
  7. package/cjs/configs/operations-all.d.ts +23 -0
  8. package/cjs/configs/operations-all.js +28 -0
  9. package/cjs/configs/operations-recommended.d.ts +54 -0
  10. package/{configs/operations-recommended.json → cjs/configs/operations-recommended.js} +19 -15
  11. package/cjs/configs/schema-all.d.ts +24 -0
  12. package/cjs/configs/schema-all.js +24 -0
  13. package/cjs/configs/schema-recommended.d.ts +67 -0
  14. package/cjs/configs/schema-recommended.js +68 -0
  15. package/cjs/configs/schema-relay.d.ts +12 -0
  16. package/{configs/relay.json → cjs/configs/schema-relay.js} +6 -4
  17. package/cjs/documents.d.ts +6 -0
  18. package/cjs/documents.js +66 -0
  19. package/cjs/estree-converter/converter.d.ts +8 -0
  20. package/cjs/estree-converter/converter.js +70 -0
  21. package/cjs/estree-converter/index.d.ts +8 -0
  22. package/cjs/estree-converter/index.js +23 -0
  23. package/cjs/estree-converter/types.d.ts +42 -0
  24. package/cjs/estree-converter/types.js +14 -0
  25. package/cjs/estree-converter/utils.d.ts +17 -0
  26. package/cjs/estree-converter/utils.js +105 -0
  27. package/cjs/flat-configs.d.ts +307 -0
  28. package/cjs/flat-configs.js +55 -0
  29. package/cjs/graphql-config.d.ts +14 -0
  30. package/cjs/graphql-config.js +65 -0
  31. package/cjs/index.d.ts +28 -0
  32. package/cjs/index.js +41 -0
  33. package/cjs/parser.d.ts +13 -0
  34. package/cjs/parser.js +96 -0
  35. package/cjs/processor.d.ts +13 -0
  36. package/cjs/processor.js +95 -0
  37. package/cjs/rules/alphabetize.d.ts +74 -0
  38. package/cjs/rules/alphabetize.js +323 -0
  39. package/cjs/rules/description-style.d.ts +29 -0
  40. package/cjs/rules/description-style.js +102 -0
  41. package/cjs/rules/graphql-js-validation.d.ts +13 -0
  42. package/cjs/rules/graphql-js-validation.js +595 -0
  43. package/cjs/rules/index.d.ts +127 -0
  44. package/cjs/rules/index.js +62 -0
  45. package/cjs/rules/input-name.d.ts +44 -0
  46. package/cjs/rules/input-name.js +154 -0
  47. package/cjs/rules/lone-executable-definition.d.ts +35 -0
  48. package/cjs/rules/lone-executable-definition.js +105 -0
  49. package/cjs/rules/match-document-filename.d.ts +81 -0
  50. package/cjs/rules/match-document-filename.js +251 -0
  51. package/cjs/rules/naming-convention.d.ts +108 -0
  52. package/cjs/rules/naming-convention.js +416 -0
  53. package/cjs/rules/no-anonymous-operations.d.ts +13 -0
  54. package/cjs/rules/no-anonymous-operations.js +91 -0
  55. package/cjs/rules/no-deprecated.d.ts +13 -0
  56. package/cjs/rules/no-deprecated.js +143 -0
  57. package/cjs/rules/no-duplicate-fields.d.ts +13 -0
  58. package/cjs/rules/no-duplicate-fields.js +136 -0
  59. package/cjs/rules/no-hashtag-description.d.ts +14 -0
  60. package/cjs/rules/no-hashtag-description.js +127 -0
  61. package/cjs/rules/no-one-place-fragments.d.ts +13 -0
  62. package/cjs/rules/no-one-place-fragments.js +101 -0
  63. package/cjs/rules/no-root-type.d.ts +34 -0
  64. package/cjs/rules/no-root-type.js +103 -0
  65. package/cjs/rules/no-scalar-result-type-on-mutation.d.ts +13 -0
  66. package/cjs/rules/no-scalar-result-type-on-mutation.js +88 -0
  67. package/cjs/rules/no-typename-prefix.d.ts +13 -0
  68. package/cjs/rules/no-typename-prefix.js +91 -0
  69. package/cjs/rules/no-unreachable-types.d.ts +13 -0
  70. package/cjs/rules/no-unreachable-types.js +177 -0
  71. package/cjs/rules/no-unused-fields.d.ts +13 -0
  72. package/cjs/rules/no-unused-fields.js +132 -0
  73. package/cjs/rules/relay-arguments.d.ts +30 -0
  74. package/cjs/rules/relay-arguments.js +126 -0
  75. package/cjs/rules/relay-connection-types.d.ts +14 -0
  76. package/cjs/rules/relay-connection-types.js +111 -0
  77. package/cjs/rules/relay-edge-types.d.ts +40 -0
  78. package/cjs/rules/relay-edge-types.js +161 -0
  79. package/cjs/rules/relay-page-info.d.ts +13 -0
  80. package/cjs/rules/relay-page-info.js +98 -0
  81. package/cjs/rules/require-deprecation-date.d.ts +27 -0
  82. package/cjs/rules/require-deprecation-date.js +148 -0
  83. package/cjs/rules/require-deprecation-reason.d.ts +13 -0
  84. package/cjs/rules/require-deprecation-reason.js +85 -0
  85. package/cjs/rules/require-description.d.ts +24 -0
  86. package/cjs/rules/require-description.js +179 -0
  87. package/cjs/rules/require-field-of-type-query-in-mutation-result.d.ts +13 -0
  88. package/cjs/rules/require-field-of-type-query-in-mutation-result.js +87 -0
  89. package/cjs/rules/require-import-fragment.d.ts +13 -0
  90. package/cjs/rules/require-import-fragment.js +148 -0
  91. package/cjs/rules/require-nullable-fields-with-oneof.d.ts +13 -0
  92. package/cjs/rules/require-nullable-fields-with-oneof.js +81 -0
  93. package/cjs/rules/require-nullable-result-in-root.d.ts +13 -0
  94. package/cjs/rules/require-nullable-result-in-root.js +99 -0
  95. package/cjs/rules/require-selections.d.ts +45 -0
  96. package/cjs/rules/require-selections.js +198 -0
  97. package/cjs/rules/require-type-pattern-with-oneof.d.ts +13 -0
  98. package/cjs/rules/require-type-pattern-with-oneof.js +83 -0
  99. package/cjs/rules/selection-set-depth.d.ts +37 -0
  100. package/cjs/rules/selection-set-depth.js +159 -0
  101. package/cjs/rules/strict-id-in-types.d.ts +66 -0
  102. package/cjs/rules/strict-id-in-types.js +168 -0
  103. package/cjs/rules/unique-enum-value-names.d.ts +13 -0
  104. package/cjs/rules/unique-enum-value-names.js +91 -0
  105. package/cjs/rules/unique-fragment-name.d.ts +14 -0
  106. package/cjs/rules/unique-fragment-name.js +106 -0
  107. package/cjs/rules/unique-operation-name.d.ts +13 -0
  108. package/cjs/rules/unique-operation-name.js +93 -0
  109. package/cjs/schema.d.ts +13 -0
  110. package/cjs/schema.js +52 -0
  111. package/{sibling-operations.d.ts → cjs/siblings.d.ts} +9 -6
  112. package/cjs/siblings.js +96 -0
  113. package/cjs/types.d.ts +75 -0
  114. package/cjs/types.js +14 -0
  115. package/cjs/utils.d.ts +45 -0
  116. package/cjs/utils.js +188 -0
  117. package/esm/cache.d.mts +12 -0
  118. package/esm/cache.js +25 -0
  119. package/esm/chunk-U3TKCM4X.js +8 -0
  120. package/esm/configs/index.d.mts +174 -0
  121. package/esm/configs/index.js +16 -0
  122. package/esm/configs/operations-all.d.mts +23 -0
  123. package/esm/configs/operations-all.js +35 -0
  124. package/esm/configs/operations-recommended.d.mts +54 -0
  125. package/esm/configs/operations-recommended.js +61 -0
  126. package/esm/configs/schema-all.d.mts +24 -0
  127. package/esm/configs/schema-all.js +31 -0
  128. package/esm/configs/schema-recommended.d.mts +67 -0
  129. package/esm/configs/schema-recommended.js +75 -0
  130. package/esm/configs/schema-relay.d.mts +12 -0
  131. package/esm/configs/schema-relay.js +18 -0
  132. package/esm/documents.d.mts +6 -0
  133. package/esm/documents.js +41 -0
  134. package/esm/estree-converter/converter.d.mts +8 -0
  135. package/esm/estree-converter/converter.js +56 -0
  136. package/esm/estree-converter/index.d.mts +8 -0
  137. package/esm/estree-converter/index.js +3 -0
  138. package/esm/estree-converter/types.d.mts +42 -0
  139. package/esm/estree-converter/types.js +0 -0
  140. package/esm/estree-converter/utils.d.mts +17 -0
  141. package/esm/estree-converter/utils.js +87 -0
  142. package/esm/flat-configs.d.mts +307 -0
  143. package/esm/flat-configs.js +36 -0
  144. package/esm/graphql-config.d.mts +14 -0
  145. package/esm/graphql-config.js +39 -0
  146. package/esm/index.d.mts +28 -0
  147. package/esm/index.js +18 -0
  148. package/esm/package.json +1 -0
  149. package/esm/parser.d.mts +13 -0
  150. package/esm/parser.js +76 -0
  151. package/esm/processor.d.mts +13 -0
  152. package/esm/processor.js +81 -0
  153. package/esm/rules/alphabetize.d.mts +74 -0
  154. package/esm/rules/alphabetize.js +299 -0
  155. package/esm/rules/description-style.d.mts +29 -0
  156. package/esm/rules/description-style.js +82 -0
  157. package/esm/rules/graphql-js-validation.d.mts +13 -0
  158. package/esm/rules/graphql-js-validation.js +618 -0
  159. package/esm/rules/index.d.mts +127 -0
  160. package/esm/rules/index.js +76 -0
  161. package/esm/rules/input-name.d.mts +44 -0
  162. package/esm/rules/input-name.js +136 -0
  163. package/esm/rules/lone-executable-definition.d.mts +35 -0
  164. package/esm/rules/lone-executable-definition.js +86 -0
  165. package/esm/rules/match-document-filename.d.mts +81 -0
  166. package/esm/rules/match-document-filename.js +237 -0
  167. package/esm/rules/naming-convention.d.mts +108 -0
  168. package/esm/rules/naming-convention.js +403 -0
  169. package/esm/rules/no-anonymous-operations.d.mts +13 -0
  170. package/esm/rules/no-anonymous-operations.js +72 -0
  171. package/esm/rules/no-deprecated.d.mts +13 -0
  172. package/esm/rules/no-deprecated.js +124 -0
  173. package/esm/rules/no-duplicate-fields.d.mts +13 -0
  174. package/esm/rules/no-duplicate-fields.js +116 -0
  175. package/esm/rules/no-hashtag-description.d.mts +14 -0
  176. package/esm/rules/no-hashtag-description.js +107 -0
  177. package/esm/rules/no-one-place-fragments.d.mts +13 -0
  178. package/esm/rules/no-one-place-fragments.js +83 -0
  179. package/esm/rules/no-root-type.d.mts +34 -0
  180. package/esm/rules/no-root-type.js +83 -0
  181. package/esm/rules/no-scalar-result-type-on-mutation.d.mts +13 -0
  182. package/esm/rules/no-scalar-result-type-on-mutation.js +69 -0
  183. package/esm/rules/no-typename-prefix.d.mts +13 -0
  184. package/esm/rules/no-typename-prefix.js +71 -0
  185. package/esm/rules/no-unreachable-types.d.mts +13 -0
  186. package/esm/rules/no-unreachable-types.js +156 -0
  187. package/esm/rules/no-unused-fields.d.mts +13 -0
  188. package/esm/rules/no-unused-fields.js +113 -0
  189. package/esm/rules/relay-arguments.d.mts +30 -0
  190. package/esm/rules/relay-arguments.js +107 -0
  191. package/esm/rules/relay-connection-types.d.mts +14 -0
  192. package/esm/rules/relay-connection-types.js +90 -0
  193. package/esm/rules/relay-edge-types.d.mts +40 -0
  194. package/esm/rules/relay-edge-types.js +148 -0
  195. package/esm/rules/relay-page-info.d.mts +13 -0
  196. package/esm/rules/relay-page-info.js +80 -0
  197. package/esm/rules/require-deprecation-date.d.mts +27 -0
  198. package/esm/rules/require-deprecation-date.js +129 -0
  199. package/esm/rules/require-deprecation-reason.d.mts +13 -0
  200. package/esm/rules/require-deprecation-reason.js +66 -0
  201. package/esm/rules/require-description.d.mts +24 -0
  202. package/esm/rules/require-description.js +165 -0
  203. package/esm/rules/require-field-of-type-query-in-mutation-result.d.mts +13 -0
  204. package/esm/rules/require-field-of-type-query-in-mutation-result.js +68 -0
  205. package/esm/rules/require-import-fragment.d.mts +13 -0
  206. package/esm/rules/require-import-fragment.js +121 -0
  207. package/esm/rules/require-nullable-fields-with-oneof.d.mts +13 -0
  208. package/esm/rules/require-nullable-fields-with-oneof.js +62 -0
  209. package/esm/rules/require-nullable-result-in-root.d.mts +13 -0
  210. package/esm/rules/require-nullable-result-in-root.js +80 -0
  211. package/esm/rules/require-selections.d.mts +45 -0
  212. package/esm/rules/require-selections.js +194 -0
  213. package/esm/rules/require-type-pattern-with-oneof.d.mts +13 -0
  214. package/esm/rules/require-type-pattern-with-oneof.js +63 -0
  215. package/esm/rules/selection-set-depth.d.mts +37 -0
  216. package/esm/rules/selection-set-depth.js +133 -0
  217. package/esm/rules/strict-id-in-types.d.mts +66 -0
  218. package/esm/rules/strict-id-in-types.js +155 -0
  219. package/esm/rules/unique-enum-value-names.d.mts +13 -0
  220. package/esm/rules/unique-enum-value-names.js +72 -0
  221. package/esm/rules/unique-fragment-name.d.mts +14 -0
  222. package/esm/rules/unique-fragment-name.js +87 -0
  223. package/esm/rules/unique-operation-name.d.mts +13 -0
  224. package/esm/rules/unique-operation-name.js +73 -0
  225. package/esm/schema.d.mts +13 -0
  226. package/esm/schema.js +27 -0
  227. package/esm/siblings.d.mts +24 -0
  228. package/esm/siblings.js +80 -0
  229. package/esm/types.d.mts +75 -0
  230. package/esm/types.js +0 -0
  231. package/esm/utils.d.mts +45 -0
  232. package/esm/utils.js +144 -0
  233. package/index.browser.mjs +5323 -0
  234. package/package.json +43 -35
  235. package/configs/base.json +0 -4
  236. package/configs/operations-all.json +0 -24
  237. package/configs/schema-all.json +0 -26
  238. package/configs/schema-recommended.json +0 -49
  239. package/docs/README.md +0 -75
  240. package/docs/custom-rules.md +0 -148
  241. package/docs/deprecated-rules.md +0 -21
  242. package/docs/parser-options.md +0 -85
  243. package/docs/parser.md +0 -49
  244. package/docs/rules/alphabetize.md +0 -178
  245. package/docs/rules/description-style.md +0 -54
  246. package/docs/rules/executable-definitions.md +0 -17
  247. package/docs/rules/fields-on-correct-type.md +0 -17
  248. package/docs/rules/fragments-on-composite-type.md +0 -17
  249. package/docs/rules/input-name.md +0 -76
  250. package/docs/rules/known-argument-names.md +0 -17
  251. package/docs/rules/known-directives.md +0 -44
  252. package/docs/rules/known-fragment-names.md +0 -69
  253. package/docs/rules/known-type-names.md +0 -17
  254. package/docs/rules/lone-anonymous-operation.md +0 -17
  255. package/docs/rules/lone-schema-definition.md +0 -17
  256. package/docs/rules/match-document-filename.md +0 -156
  257. package/docs/rules/naming-convention.md +0 -300
  258. package/docs/rules/no-anonymous-operations.md +0 -39
  259. package/docs/rules/no-case-insensitive-enum-values-duplicates.md +0 -43
  260. package/docs/rules/no-deprecated.md +0 -85
  261. package/docs/rules/no-duplicate-fields.md +0 -65
  262. package/docs/rules/no-fragment-cycles.md +0 -17
  263. package/docs/rules/no-hashtag-description.md +0 -59
  264. package/docs/rules/no-root-type.md +0 -53
  265. package/docs/rules/no-scalar-result-type-on-mutation.md +0 -37
  266. package/docs/rules/no-typename-prefix.md +0 -39
  267. package/docs/rules/no-undefined-variables.md +0 -17
  268. package/docs/rules/no-unreachable-types.md +0 -49
  269. package/docs/rules/no-unused-fields.md +0 -62
  270. package/docs/rules/no-unused-fragments.md +0 -17
  271. package/docs/rules/no-unused-variables.md +0 -17
  272. package/docs/rules/one-field-subscriptions.md +0 -17
  273. package/docs/rules/overlapping-fields-can-be-merged.md +0 -17
  274. package/docs/rules/possible-fragment-spread.md +0 -17
  275. package/docs/rules/possible-type-extension.md +0 -15
  276. package/docs/rules/provided-required-arguments.md +0 -17
  277. package/docs/rules/relay-arguments.md +0 -57
  278. package/docs/rules/relay-connection-types.md +0 -42
  279. package/docs/rules/relay-edge-types.md +0 -56
  280. package/docs/rules/relay-page-info.md +0 -32
  281. package/docs/rules/require-deprecation-date.md +0 -56
  282. package/docs/rules/require-deprecation-reason.md +0 -47
  283. package/docs/rules/require-description.md +0 -115
  284. package/docs/rules/require-field-of-type-query-in-mutation-result.md +0 -47
  285. package/docs/rules/require-id-when-available.md +0 -88
  286. package/docs/rules/scalar-leafs.md +0 -17
  287. package/docs/rules/selection-set-depth.md +0 -76
  288. package/docs/rules/strict-id-in-types.md +0 -130
  289. package/docs/rules/unique-argument-names.md +0 -17
  290. package/docs/rules/unique-directive-names-per-location.md +0 -17
  291. package/docs/rules/unique-directive-names.md +0 -17
  292. package/docs/rules/unique-enum-value-names.md +0 -15
  293. package/docs/rules/unique-field-definition-names.md +0 -17
  294. package/docs/rules/unique-fragment-name.md +0 -51
  295. package/docs/rules/unique-input-field-names.md +0 -17
  296. package/docs/rules/unique-operation-name.md +0 -55
  297. package/docs/rules/unique-operation-types.md +0 -17
  298. package/docs/rules/unique-type-names.md +0 -17
  299. package/docs/rules/unique-variable-names.md +0 -17
  300. package/docs/rules/value-literals-of-correct-type.md +0 -17
  301. package/docs/rules/variables-are-input-types.md +0 -17
  302. package/docs/rules/variables-in-allowed-position.md +0 -17
  303. package/estree-converter/converter.d.ts +0 -3
  304. package/estree-converter/index.d.ts +0 -3
  305. package/estree-converter/types.d.ts +0 -40
  306. package/estree-converter/utils.d.ts +0 -13
  307. package/graphql-config.d.ts +0 -3
  308. package/index.d.ts +0 -16
  309. package/index.js +0 -4653
  310. package/index.mjs +0 -4641
  311. package/parser.d.ts +0 -2
  312. package/processor.d.ts +0 -7
  313. package/rules/alphabetize.d.ts +0 -16
  314. package/rules/description-style.d.ts +0 -6
  315. package/rules/graphql-js-validation.d.ts +0 -2
  316. package/rules/index.d.ts +0 -41
  317. package/rules/input-name.d.ts +0 -9
  318. package/rules/match-document-filename.d.ts +0 -18
  319. package/rules/naming-convention.d.ts +0 -37
  320. package/rules/no-anonymous-operations.d.ts +0 -3
  321. package/rules/no-case-insensitive-enum-values-duplicates.d.ts +0 -3
  322. package/rules/no-deprecated.d.ts +0 -3
  323. package/rules/no-duplicate-fields.d.ts +0 -3
  324. package/rules/no-hashtag-description.d.ts +0 -3
  325. package/rules/no-root-type.d.ts +0 -7
  326. package/rules/no-scalar-result-type-on-mutation.d.ts +0 -3
  327. package/rules/no-typename-prefix.d.ts +0 -3
  328. package/rules/no-unreachable-types.d.ts +0 -3
  329. package/rules/no-unused-fields.d.ts +0 -3
  330. package/rules/relay-arguments.d.ts +0 -6
  331. package/rules/relay-connection-types.d.ts +0 -5
  332. package/rules/relay-edge-types.d.ts +0 -8
  333. package/rules/relay-page-info.d.ts +0 -3
  334. package/rules/require-deprecation-date.d.ts +0 -5
  335. package/rules/require-deprecation-reason.d.ts +0 -3
  336. package/rules/require-description.d.ts +0 -11
  337. package/rules/require-field-of-type-query-in-mutation-result.d.ts +0 -3
  338. package/rules/require-id-when-available.d.ts +0 -6
  339. package/rules/selection-set-depth.d.ts +0 -7
  340. package/rules/strict-id-in-types.d.ts +0 -11
  341. package/rules/unique-fragment-name.d.ts +0 -6
  342. package/rules/unique-operation-name.d.ts +0 -3
  343. package/schema.d.ts +0 -3
  344. package/testkit.d.ts +0 -27
  345. package/types.d.ts +0 -79
  346. package/utils.d.ts +0 -39
@@ -0,0 +1,127 @@
1
+ import { RuleOptions } from './require-description.js';
2
+ import { CaseStyle } from '../utils.js';
3
+ import * as graphql_language_ast_js from 'graphql/language/ast.js';
4
+ import { GraphQLESLintRule } from '../types.js';
5
+ import * as json_schema_to_ts_lib_types_type_utils_writable_js from 'json-schema-to-ts/lib/types/type-utils/writable.js';
6
+ import 'graphql';
7
+ import 'eslint';
8
+ import 'estree';
9
+ import '../siblings.js';
10
+ import '@graphql-tools/utils';
11
+ import '../estree-converter/types.js';
12
+ import 'json-schema-to-ts';
13
+ import 'graphql-config';
14
+
15
+ declare const rules: {
16
+ alphabetize: GraphQLESLintRule<{
17
+ definitions?: boolean | undefined;
18
+ selections?: json_schema_to_ts_lib_types_type_utils_writable_js.DeepWritable<"OperationDefinition" | "FragmentDefinition">[] | undefined;
19
+ arguments?: json_schema_to_ts_lib_types_type_utils_writable_js.DeepWritable<"Field" | "Directive" | "FieldDefinition" | "DirectiveDefinition">[] | undefined;
20
+ values?: boolean | undefined;
21
+ fields?: json_schema_to_ts_lib_types_type_utils_writable_js.DeepWritable<"ObjectTypeDefinition" | "InterfaceTypeDefinition" | "InputObjectTypeDefinition">[] | undefined;
22
+ variables?: boolean | undefined;
23
+ groups?: string[] | undefined;
24
+ }[]>;
25
+ 'description-style': GraphQLESLintRule<{
26
+ style?: "block" | "inline" | undefined;
27
+ }[]>;
28
+ 'input-name': GraphQLESLintRule<{
29
+ checkInputType?: boolean | undefined;
30
+ caseSensitiveInputType?: boolean | undefined;
31
+ checkQueries?: boolean | undefined;
32
+ checkMutations?: boolean | undefined;
33
+ }[]>;
34
+ 'lone-executable-definition': GraphQLESLintRule<{
35
+ ignore?: ("fragment" | json_schema_to_ts_lib_types_type_utils_writable_js.DeepWritable<graphql_language_ast_js.OperationTypeNode>)[] | undefined;
36
+ }[]>;
37
+ 'match-document-filename': GraphQLESLintRule<{
38
+ fragment?: json_schema_to_ts_lib_types_type_utils_writable_js.DeepWritable<CaseStyle | "matchDocumentStyle"> | {
39
+ style?: json_schema_to_ts_lib_types_type_utils_writable_js.DeepWritable<CaseStyle | "matchDocumentStyle"> | undefined;
40
+ suffix?: string | undefined;
41
+ prefix?: string | undefined;
42
+ } | undefined;
43
+ mutation?: json_schema_to_ts_lib_types_type_utils_writable_js.DeepWritable<CaseStyle | "matchDocumentStyle"> | {
44
+ style?: json_schema_to_ts_lib_types_type_utils_writable_js.DeepWritable<CaseStyle | "matchDocumentStyle"> | undefined;
45
+ suffix?: string | undefined;
46
+ prefix?: string | undefined;
47
+ } | undefined;
48
+ subscription?: json_schema_to_ts_lib_types_type_utils_writable_js.DeepWritable<CaseStyle | "matchDocumentStyle"> | {
49
+ style?: json_schema_to_ts_lib_types_type_utils_writable_js.DeepWritable<CaseStyle | "matchDocumentStyle"> | undefined;
50
+ suffix?: string | undefined;
51
+ prefix?: string | undefined;
52
+ } | undefined;
53
+ query?: json_schema_to_ts_lib_types_type_utils_writable_js.DeepWritable<CaseStyle | "matchDocumentStyle"> | {
54
+ style?: json_schema_to_ts_lib_types_type_utils_writable_js.DeepWritable<CaseStyle | "matchDocumentStyle"> | undefined;
55
+ suffix?: string | undefined;
56
+ prefix?: string | undefined;
57
+ } | undefined;
58
+ fileExtension?: ".gql" | ".graphql" | undefined;
59
+ }[]>;
60
+ 'naming-convention': GraphQLESLintRule<{
61
+ [x: string]: unknown;
62
+ types?: json_schema_to_ts_lib_types_type_utils_writable_js.DeepWritable<"camelCase" | "PascalCase" | "snake_case" | "UPPER_CASE"> | {
63
+ style?: json_schema_to_ts_lib_types_type_utils_writable_js.DeepWritable<"camelCase" | "PascalCase" | "snake_case" | "UPPER_CASE"> | undefined;
64
+ suffix?: string | undefined;
65
+ prefix?: string | undefined;
66
+ forbiddenPrefixes?: string[] | undefined;
67
+ forbiddenSuffixes?: string[] | undefined;
68
+ requiredPrefixes?: string[] | undefined;
69
+ requiredSuffixes?: string[] | undefined;
70
+ ignorePattern?: string | undefined;
71
+ } | undefined;
72
+ allowLeadingUnderscore?: boolean | undefined;
73
+ allowTrailingUnderscore?: boolean | undefined;
74
+ }[]>;
75
+ 'no-anonymous-operations': GraphQLESLintRule;
76
+ 'no-deprecated': GraphQLESLintRule<[], true>;
77
+ 'no-duplicate-fields': GraphQLESLintRule;
78
+ 'no-hashtag-description': GraphQLESLintRule;
79
+ 'no-one-place-fragments': GraphQLESLintRule;
80
+ 'no-root-type': GraphQLESLintRule<{
81
+ disallow: ("mutation" | "subscription")[];
82
+ }[]>;
83
+ 'no-scalar-result-type-on-mutation': GraphQLESLintRule;
84
+ 'no-typename-prefix': GraphQLESLintRule;
85
+ 'no-unreachable-types': GraphQLESLintRule;
86
+ 'no-unused-fields': GraphQLESLintRule;
87
+ 'relay-arguments': GraphQLESLintRule<{
88
+ includeBoth?: boolean | undefined;
89
+ }[], true>;
90
+ 'relay-connection-types': GraphQLESLintRule;
91
+ 'relay-edge-types': GraphQLESLintRule<{
92
+ withEdgeSuffix?: boolean | undefined;
93
+ shouldImplementNode?: boolean | undefined;
94
+ listTypeCanWrapOnlyEdgeType?: boolean | undefined;
95
+ }[], true>;
96
+ 'relay-page-info': GraphQLESLintRule;
97
+ 'require-deprecation-date': GraphQLESLintRule<{
98
+ argumentName?: string | undefined;
99
+ }[]>;
100
+ 'require-deprecation-reason': GraphQLESLintRule;
101
+ 'require-description': GraphQLESLintRule<RuleOptions>;
102
+ 'require-field-of-type-query-in-mutation-result': GraphQLESLintRule;
103
+ 'require-import-fragment': GraphQLESLintRule;
104
+ 'require-nullable-fields-with-oneof': GraphQLESLintRule;
105
+ 'require-nullable-result-in-root': GraphQLESLintRule;
106
+ 'require-selections': GraphQLESLintRule<{
107
+ fieldName?: string | string[] | undefined;
108
+ }[], true>;
109
+ 'require-type-pattern-with-oneof': GraphQLESLintRule;
110
+ 'selection-set-depth': GraphQLESLintRule<{
111
+ ignore?: string[] | undefined;
112
+ maxDepth: number;
113
+ }[]>;
114
+ 'strict-id-in-types': GraphQLESLintRule<{
115
+ acceptedIdNames?: string[] | undefined;
116
+ acceptedIdTypes?: string[] | undefined;
117
+ exceptions?: {
118
+ types?: string[] | undefined;
119
+ suffixes?: string[] | undefined;
120
+ } | undefined;
121
+ }[]>;
122
+ 'unique-enum-value-names': GraphQLESLintRule;
123
+ 'unique-fragment-name': GraphQLESLintRule;
124
+ 'unique-operation-name': GraphQLESLintRule;
125
+ };
126
+
127
+ export { rules };
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: !0 });
9
+ }, __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from == "object" || typeof from == "function")
11
+ for (let key of __getOwnPropNames(from))
12
+ !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
13
+ return to;
14
+ };
15
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
16
+ var rules_exports = {};
17
+ __export(rules_exports, {
18
+ rules: () => rules
19
+ });
20
+ module.exports = __toCommonJS(rules_exports);
21
+ var import_graphql_js_validation = require("./graphql-js-validation.js"), import_alphabetize = require("./alphabetize.js"), import_description_style = require("./description-style.js"), import_input_name = require("./input-name.js"), import_lone_executable_definition = require("./lone-executable-definition.js"), import_match_document_filename = require("./match-document-filename.js"), import_naming_convention = require("./naming-convention.js"), import_no_anonymous_operations = require("./no-anonymous-operations.js"), import_no_deprecated = require("./no-deprecated.js"), import_no_duplicate_fields = require("./no-duplicate-fields.js"), import_no_hashtag_description = require("./no-hashtag-description.js"), import_no_one_place_fragments = require("./no-one-place-fragments.js"), import_no_root_type = require("./no-root-type.js"), import_no_scalar_result_type_on_mutation = require("./no-scalar-result-type-on-mutation.js"), import_no_typename_prefix = require("./no-typename-prefix.js"), import_no_unreachable_types = require("./no-unreachable-types.js"), import_no_unused_fields = require("./no-unused-fields.js"), import_relay_arguments = require("./relay-arguments.js"), import_relay_connection_types = require("./relay-connection-types.js"), import_relay_edge_types = require("./relay-edge-types.js"), import_relay_page_info = require("./relay-page-info.js"), import_require_deprecation_date = require("./require-deprecation-date.js"), import_require_deprecation_reason = require("./require-deprecation-reason.js"), import_require_description = require("./require-description.js"), import_require_field_of_type_query_in_mutation_result = require("./require-field-of-type-query-in-mutation-result.js"), import_require_import_fragment = require("./require-import-fragment.js"), import_require_nullable_fields_with_oneof = require("./require-nullable-fields-with-oneof.js"), import_require_nullable_result_in_root = require("./require-nullable-result-in-root.js"), import_require_selections = require("./require-selections.js"), import_require_type_pattern_with_oneof = require("./require-type-pattern-with-oneof.js"), import_selection_set_depth = require("./selection-set-depth.js"), import_strict_id_in_types = require("./strict-id-in-types.js"), import_unique_enum_value_names = require("./unique-enum-value-names.js"), import_unique_fragment_name = require("./unique-fragment-name.js"), import_unique_operation_name = require("./unique-operation-name.js");
22
+ const rules = {
23
+ ...import_graphql_js_validation.GRAPHQL_JS_VALIDATIONS,
24
+ alphabetize: import_alphabetize.rule,
25
+ "description-style": import_description_style.rule,
26
+ "input-name": import_input_name.rule,
27
+ "lone-executable-definition": import_lone_executable_definition.rule,
28
+ "match-document-filename": import_match_document_filename.rule,
29
+ "naming-convention": import_naming_convention.rule,
30
+ "no-anonymous-operations": import_no_anonymous_operations.rule,
31
+ "no-deprecated": import_no_deprecated.rule,
32
+ "no-duplicate-fields": import_no_duplicate_fields.rule,
33
+ "no-hashtag-description": import_no_hashtag_description.rule,
34
+ "no-one-place-fragments": import_no_one_place_fragments.rule,
35
+ "no-root-type": import_no_root_type.rule,
36
+ "no-scalar-result-type-on-mutation": import_no_scalar_result_type_on_mutation.rule,
37
+ "no-typename-prefix": import_no_typename_prefix.rule,
38
+ "no-unreachable-types": import_no_unreachable_types.rule,
39
+ "no-unused-fields": import_no_unused_fields.rule,
40
+ "relay-arguments": import_relay_arguments.rule,
41
+ "relay-connection-types": import_relay_connection_types.rule,
42
+ "relay-edge-types": import_relay_edge_types.rule,
43
+ "relay-page-info": import_relay_page_info.rule,
44
+ "require-deprecation-date": import_require_deprecation_date.rule,
45
+ "require-deprecation-reason": import_require_deprecation_reason.rule,
46
+ "require-description": import_require_description.rule,
47
+ "require-field-of-type-query-in-mutation-result": import_require_field_of_type_query_in_mutation_result.rule,
48
+ "require-import-fragment": import_require_import_fragment.rule,
49
+ "require-nullable-fields-with-oneof": import_require_nullable_fields_with_oneof.rule,
50
+ "require-nullable-result-in-root": import_require_nullable_result_in_root.rule,
51
+ "require-selections": import_require_selections.rule,
52
+ "require-type-pattern-with-oneof": import_require_type_pattern_with_oneof.rule,
53
+ "selection-set-depth": import_selection_set_depth.rule,
54
+ "strict-id-in-types": import_strict_id_in_types.rule,
55
+ "unique-enum-value-names": import_unique_enum_value_names.rule,
56
+ "unique-fragment-name": import_unique_fragment_name.rule,
57
+ "unique-operation-name": import_unique_operation_name.rule
58
+ };
59
+ // Annotate the CommonJS export names for ESM import in node:
60
+ 0 && (module.exports = {
61
+ rules
62
+ });
@@ -0,0 +1,44 @@
1
+ import { FromSchema } from 'json-schema-to-ts';
2
+ import { GraphQLESLintRule } from '../types.js';
3
+ import 'eslint';
4
+ import 'estree';
5
+ import 'graphql';
6
+ import '../siblings.js';
7
+ import '@graphql-tools/utils';
8
+ import '../estree-converter/types.js';
9
+ import 'graphql-config';
10
+
11
+ declare const schema: {
12
+ readonly type: "array";
13
+ readonly maxItems: 1;
14
+ readonly items: {
15
+ readonly type: "object";
16
+ readonly additionalProperties: false;
17
+ readonly properties: {
18
+ readonly checkInputType: {
19
+ readonly type: "boolean";
20
+ readonly default: false;
21
+ readonly description: "Check that the input type name follows the convention \\<mutationName>Input";
22
+ };
23
+ readonly caseSensitiveInputType: {
24
+ readonly type: "boolean";
25
+ readonly default: true;
26
+ readonly description: "Allow for case discrepancies in the input type name";
27
+ };
28
+ readonly checkQueries: {
29
+ readonly type: "boolean";
30
+ readonly default: false;
31
+ readonly description: "Apply the rule to Queries";
32
+ };
33
+ readonly checkMutations: {
34
+ readonly type: "boolean";
35
+ readonly default: true;
36
+ readonly description: "Apply the rule to Mutations";
37
+ };
38
+ };
39
+ };
40
+ };
41
+ type RuleOptions = FromSchema<typeof schema>;
42
+ declare const rule: GraphQLESLintRule<RuleOptions>;
43
+
44
+ export { RuleOptions, rule };
@@ -0,0 +1,154 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: !0 });
9
+ }, __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from == "object" || typeof from == "function")
11
+ for (let key of __getOwnPropNames(from))
12
+ !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
13
+ return to;
14
+ };
15
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
16
+ var input_name_exports = {};
17
+ __export(input_name_exports, {
18
+ rule: () => rule
19
+ });
20
+ module.exports = __toCommonJS(input_name_exports);
21
+ var import_graphql = require("graphql");
22
+ const schema = {
23
+ type: "array",
24
+ maxItems: 1,
25
+ items: {
26
+ type: "object",
27
+ additionalProperties: !1,
28
+ properties: {
29
+ checkInputType: {
30
+ type: "boolean",
31
+ default: !1,
32
+ description: "Check that the input type name follows the convention \\<mutationName>Input"
33
+ },
34
+ caseSensitiveInputType: {
35
+ type: "boolean",
36
+ default: !0,
37
+ description: "Allow for case discrepancies in the input type name"
38
+ },
39
+ checkQueries: {
40
+ type: "boolean",
41
+ default: !1,
42
+ description: "Apply the rule to Queries"
43
+ },
44
+ checkMutations: {
45
+ type: "boolean",
46
+ default: !0,
47
+ description: "Apply the rule to Mutations"
48
+ }
49
+ }
50
+ }
51
+ }, isObjectType = (node) => (
52
+ // TODO: remove `as any` when drop support of graphql@15
53
+ [import_graphql.Kind.OBJECT_TYPE_DEFINITION, import_graphql.Kind.OBJECT_TYPE_EXTENSION].includes(node.type)
54
+ ), isQueryType = (node) => isObjectType(node) && node.name.value === "Query", isMutationType = (node) => isObjectType(node) && node.name.value === "Mutation", rule = {
55
+ meta: {
56
+ type: "suggestion",
57
+ hasSuggestions: !0,
58
+ docs: {
59
+ description: `Require mutation argument to be always called "input" and input type to be called Mutation name + "Input".
60
+ Using the same name for all input parameters will make your schemas easier to consume and more predictable. Using the same name as mutation for InputType will make it easier to find mutations that InputType belongs to.`,
61
+ category: "Schema",
62
+ url: "https://the-guild.dev/graphql/eslint/rules/input-name",
63
+ examples: [
64
+ {
65
+ title: "Incorrect",
66
+ usage: [{ checkInputType: !0 }],
67
+ code: (
68
+ /* GraphQL */
69
+ `
70
+ type Mutation {
71
+ SetMessage(message: InputMessage): String
72
+ }
73
+ `
74
+ )
75
+ },
76
+ {
77
+ title: "Correct (with `checkInputType`)",
78
+ usage: [{ checkInputType: !0 }],
79
+ code: (
80
+ /* GraphQL */
81
+ `
82
+ type Mutation {
83
+ SetMessage(input: SetMessageInput): String
84
+ }
85
+ `
86
+ )
87
+ },
88
+ {
89
+ title: "Correct (without `checkInputType`)",
90
+ usage: [{ checkInputType: !1 }],
91
+ code: (
92
+ /* GraphQL */
93
+ `
94
+ type Mutation {
95
+ SetMessage(input: AnyInputTypeName): String
96
+ }
97
+ `
98
+ )
99
+ }
100
+ ]
101
+ },
102
+ schema
103
+ },
104
+ create(context) {
105
+ const options = {
106
+ checkInputType: !1,
107
+ caseSensitiveInputType: !0,
108
+ checkMutations: !0,
109
+ ...context.options[0]
110
+ }, shouldCheckType = (node) => options.checkMutations && isMutationType(node) || options.checkQueries && isQueryType(node) || !1, listeners = {
111
+ "FieldDefinition > InputValueDefinition[name.value!=input] > Name"(node) {
112
+ const fieldDef = node.parent.parent;
113
+ if (shouldCheckType(fieldDef.parent)) {
114
+ const inputName = node.value;
115
+ context.report({
116
+ node,
117
+ message: `Input "${inputName}" should be named "input" for "${fieldDef.parent.name.value}.${fieldDef.name.value}"`,
118
+ suggest: [
119
+ {
120
+ desc: "Rename to `input`",
121
+ fix: (fixer) => fixer.replaceText(node, "input")
122
+ }
123
+ ]
124
+ });
125
+ }
126
+ }
127
+ };
128
+ return options.checkInputType && (listeners["FieldDefinition > InputValueDefinition NamedType"] = (node) => {
129
+ const inputValueNode = ((item) => {
130
+ let currentNode = item;
131
+ for (; currentNode.type !== import_graphql.Kind.INPUT_VALUE_DEFINITION; )
132
+ currentNode = currentNode.parent;
133
+ return currentNode;
134
+ })(node);
135
+ if (shouldCheckType(inputValueNode.parent.parent)) {
136
+ const mutationName = `${inputValueNode.parent.name.value}Input`, name = node.name.value;
137
+ (options.caseSensitiveInputType && node.name.value !== mutationName || name.toLowerCase() !== mutationName.toLowerCase()) && context.report({
138
+ node: node.name,
139
+ message: `Input type \`${name}\` name should be \`${mutationName}\`.`,
140
+ suggest: [
141
+ {
142
+ desc: `Rename to \`${mutationName}\``,
143
+ fix: (fixer) => fixer.replaceText(node, mutationName)
144
+ }
145
+ ]
146
+ });
147
+ }
148
+ }), listeners;
149
+ }
150
+ };
151
+ // Annotate the CommonJS export names for ESM import in node:
152
+ 0 && (module.exports = {
153
+ rule
154
+ });
@@ -0,0 +1,35 @@
1
+ import { OperationTypeNode } from 'graphql';
2
+ import { FromSchema } from 'json-schema-to-ts';
3
+ import { GraphQLESLintRule } from '../types.js';
4
+ import 'eslint';
5
+ import 'estree';
6
+ import '../siblings.js';
7
+ import '@graphql-tools/utils';
8
+ import '../estree-converter/types.js';
9
+ import 'graphql-config';
10
+
11
+ declare const schema: {
12
+ readonly type: "array";
13
+ readonly maxItems: 1;
14
+ readonly items: {
15
+ readonly type: "object";
16
+ readonly minProperties: 1;
17
+ readonly additionalProperties: false;
18
+ readonly properties: {
19
+ readonly ignore: {
20
+ readonly maxItems: 3;
21
+ readonly items: {
22
+ readonly enum: readonly ["fragment", ...OperationTypeNode[]];
23
+ };
24
+ readonly description: "Allow certain definitions to be placed alongside others.";
25
+ readonly type: "array";
26
+ readonly uniqueItems: true;
27
+ readonly minItems: 1;
28
+ };
29
+ };
30
+ };
31
+ };
32
+ type RuleOptions = FromSchema<typeof schema>;
33
+ declare const rule: GraphQLESLintRule<RuleOptions>;
34
+
35
+ export { RuleOptions, rule };
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: !0 });
9
+ }, __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from == "object" || typeof from == "function")
11
+ for (let key of __getOwnPropNames(from))
12
+ !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
13
+ return to;
14
+ };
15
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
16
+ var lone_executable_definition_exports = {};
17
+ __export(lone_executable_definition_exports, {
18
+ rule: () => rule
19
+ });
20
+ module.exports = __toCommonJS(lone_executable_definition_exports);
21
+ var import_graphql = require("graphql"), import_utils = require("../utils.js");
22
+ const RULE_ID = "lone-executable-definition", definitionTypes = ["fragment", ...Object.values(import_graphql.OperationTypeNode)], schema = {
23
+ type: "array",
24
+ maxItems: 1,
25
+ items: {
26
+ type: "object",
27
+ minProperties: 1,
28
+ additionalProperties: !1,
29
+ properties: {
30
+ ignore: {
31
+ ...import_utils.ARRAY_DEFAULT_OPTIONS,
32
+ maxItems: 3,
33
+ // ignore all 4 types is redundant
34
+ items: {
35
+ enum: definitionTypes
36
+ },
37
+ description: "Allow certain definitions to be placed alongside others."
38
+ }
39
+ }
40
+ }
41
+ }, rule = {
42
+ meta: {
43
+ type: "suggestion",
44
+ docs: {
45
+ category: "Operations",
46
+ description: "Require queries, mutations, subscriptions or fragments to be located in separate files.",
47
+ url: `https://the-guild.dev/graphql/eslint/rules/${RULE_ID}`,
48
+ examples: [
49
+ {
50
+ title: "Incorrect",
51
+ code: (
52
+ /* GraphQL */
53
+ `
54
+ query Foo {
55
+ id
56
+ }
57
+ fragment Bar on Baz {
58
+ id
59
+ }
60
+ `
61
+ )
62
+ },
63
+ {
64
+ title: "Correct",
65
+ code: (
66
+ /* GraphQL */
67
+ `
68
+ query Foo {
69
+ id
70
+ }
71
+ `
72
+ )
73
+ }
74
+ ]
75
+ },
76
+ messages: {
77
+ [RULE_ID]: "{{name}} should be in a separate file."
78
+ },
79
+ schema
80
+ },
81
+ create(context) {
82
+ const ignore = new Set(context.options[0]?.ignore || []), definitions = [];
83
+ return {
84
+ ":matches(OperationDefinition, FragmentDefinition)"(node) {
85
+ const type = "operation" in node ? node.operation : "fragment";
86
+ ignore.has(type) || definitions.push({ type, node });
87
+ },
88
+ "Document:exit"() {
89
+ for (const { node, type } of definitions.slice(1)) {
90
+ let name = (0, import_utils.pascalCase)(type);
91
+ const definitionName = node.name?.value;
92
+ definitionName && (name += ` "${definitionName}"`), context.report({
93
+ loc: node.name?.loc || (0, import_utils.getLocation)(node.loc.start, type),
94
+ messageId: RULE_ID,
95
+ data: { name }
96
+ });
97
+ }
98
+ }
99
+ };
100
+ }
101
+ };
102
+ // Annotate the CommonJS export names for ESM import in node:
103
+ 0 && (module.exports = {
104
+ rule
105
+ });
@@ -0,0 +1,81 @@
1
+ import { FromSchema } from 'json-schema-to-ts';
2
+ import { GraphQLESLintRule } from '../types.js';
3
+ import { CaseStyle as CaseStyle$1 } from '../utils.js';
4
+ import 'eslint';
5
+ import 'estree';
6
+ import 'graphql';
7
+ import '../siblings.js';
8
+ import '@graphql-tools/utils';
9
+ import '../estree-converter/types.js';
10
+ import 'graphql-config';
11
+
12
+ type CaseStyle = CaseStyle$1 | 'matchDocumentStyle';
13
+ declare const schema: {
14
+ readonly definitions: {
15
+ readonly asString: {
16
+ readonly enum: CaseStyle[];
17
+ readonly description: `One of: ${string}`;
18
+ };
19
+ readonly asObject: {
20
+ readonly type: "object";
21
+ readonly additionalProperties: false;
22
+ readonly minProperties: 1;
23
+ readonly properties: {
24
+ readonly style: {
25
+ readonly enum: CaseStyle[];
26
+ };
27
+ readonly suffix: {
28
+ readonly type: "string";
29
+ };
30
+ readonly prefix: {
31
+ readonly type: "string";
32
+ };
33
+ };
34
+ };
35
+ };
36
+ readonly type: "array";
37
+ readonly minItems: 1;
38
+ readonly maxItems: 1;
39
+ readonly items: {
40
+ readonly type: "object";
41
+ readonly additionalProperties: false;
42
+ readonly minProperties: 1;
43
+ readonly properties: {
44
+ readonly fileExtension: {
45
+ readonly enum: readonly [".gql", ".graphql"];
46
+ };
47
+ readonly query: {
48
+ readonly oneOf: readonly [{
49
+ readonly $ref: "#/definitions/asString";
50
+ }, {
51
+ readonly $ref: "#/definitions/asObject";
52
+ }];
53
+ };
54
+ readonly mutation: {
55
+ readonly oneOf: readonly [{
56
+ readonly $ref: "#/definitions/asString";
57
+ }, {
58
+ readonly $ref: "#/definitions/asObject";
59
+ }];
60
+ };
61
+ readonly subscription: {
62
+ readonly oneOf: readonly [{
63
+ readonly $ref: "#/definitions/asString";
64
+ }, {
65
+ readonly $ref: "#/definitions/asObject";
66
+ }];
67
+ };
68
+ readonly fragment: {
69
+ readonly oneOf: readonly [{
70
+ readonly $ref: "#/definitions/asString";
71
+ }, {
72
+ readonly $ref: "#/definitions/asObject";
73
+ }];
74
+ };
75
+ };
76
+ };
77
+ };
78
+ type RuleOptions = FromSchema<typeof schema>;
79
+ declare const rule: GraphQLESLintRule<RuleOptions>;
80
+
81
+ export { RuleOptions, rule };