@graphql-eslint/eslint-plugin 3.14.3 → 3.14.4-alpha-20221229152648-0a153c6

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 (78) hide show
  1. package/cjs/cache.js +3 -2
  2. package/cjs/documents.js +8 -5
  3. package/cjs/estree-converter/converter.js +1 -1
  4. package/cjs/parser.js +4 -2
  5. package/cjs/processor.js +4 -2
  6. package/cjs/rules/alphabetize.js +5 -3
  7. package/cjs/rules/graphql-js-validation.js +9 -6
  8. package/cjs/rules/input-name.js +5 -4
  9. package/cjs/rules/naming-convention.js +2 -2
  10. package/cjs/rules/no-case-insensitive-enum-values-duplicates.js +3 -2
  11. package/cjs/rules/no-duplicate-fields.js +2 -2
  12. package/cjs/rules/no-hashtag-description.js +3 -0
  13. package/cjs/rules/no-root-type.js +1 -1
  14. package/cjs/rules/no-typename-prefix.js +1 -1
  15. package/cjs/rules/no-unreachable-types.js +1 -1
  16. package/cjs/rules/relay-arguments.js +2 -1
  17. package/cjs/rules/relay-connection-types.js +2 -2
  18. package/cjs/rules/relay-edge-types.js +7 -4
  19. package/cjs/rules/relay-page-info.js +2 -1
  20. package/cjs/rules/require-deprecation-date.js +2 -2
  21. package/cjs/rules/require-deprecation-reason.js +2 -1
  22. package/cjs/rules/require-description.js +1 -1
  23. package/cjs/rules/require-field-of-type-query-in-mutation-result.js +1 -1
  24. package/cjs/rules/require-id-when-available.js +2 -1
  25. package/cjs/rules/require-nullable-fields-with-oneof.js +2 -2
  26. package/cjs/rules/require-type-pattern-with-oneof.js +2 -1
  27. package/cjs/rules/strict-id-in-types.js +4 -4
  28. package/cjs/rules/unique-fragment-name.js +1 -0
  29. package/cjs/schema.js +3 -1
  30. package/cjs/testkit.js +4 -7
  31. package/cjs/utils.js +11 -5
  32. package/esm/cache.js +3 -2
  33. package/esm/documents.js +8 -5
  34. package/esm/estree-converter/converter.js +1 -1
  35. package/esm/graphql-config.js +1 -1
  36. package/esm/parser.js +4 -2
  37. package/esm/processor.js +5 -3
  38. package/esm/rules/alphabetize.js +6 -4
  39. package/esm/rules/graphql-js-validation.js +9 -6
  40. package/esm/rules/input-name.js +5 -4
  41. package/esm/rules/naming-convention.js +3 -3
  42. package/esm/rules/no-case-insensitive-enum-values-duplicates.js +3 -2
  43. package/esm/rules/no-duplicate-fields.js +2 -2
  44. package/esm/rules/no-hashtag-description.js +3 -0
  45. package/esm/rules/no-root-type.js +2 -2
  46. package/esm/rules/no-typename-prefix.js +1 -1
  47. package/esm/rules/no-unreachable-types.js +1 -1
  48. package/esm/rules/relay-arguments.js +2 -1
  49. package/esm/rules/relay-connection-types.js +2 -2
  50. package/esm/rules/relay-edge-types.js +7 -4
  51. package/esm/rules/relay-page-info.js +2 -1
  52. package/esm/rules/require-deprecation-date.js +2 -2
  53. package/esm/rules/require-deprecation-reason.js +2 -1
  54. package/esm/rules/require-description.js +1 -1
  55. package/esm/rules/require-field-of-type-query-in-mutation-result.js +1 -1
  56. package/esm/rules/require-id-when-available.js +2 -1
  57. package/esm/rules/require-nullable-fields-with-oneof.js +2 -2
  58. package/esm/rules/require-type-pattern-with-oneof.js +2 -1
  59. package/esm/rules/strict-id-in-types.js +5 -5
  60. package/esm/rules/unique-fragment-name.js +1 -0
  61. package/esm/schema.js +3 -1
  62. package/esm/testkit.js +4 -7
  63. package/esm/utils.js +9 -4
  64. package/package.json +1 -1
  65. package/typings/cache.d.cts +1 -1
  66. package/typings/cache.d.ts +1 -1
  67. package/typings/estree-converter/types.d.cts +4 -4
  68. package/typings/estree-converter/types.d.ts +4 -4
  69. package/typings/estree-converter/utils.d.cts +2 -2
  70. package/typings/estree-converter/utils.d.ts +2 -2
  71. package/typings/rules/index.d.cts +68 -68
  72. package/typings/rules/index.d.ts +68 -68
  73. package/typings/testkit.d.cts +6 -4
  74. package/typings/testkit.d.ts +6 -4
  75. package/typings/types.d.cts +4 -3
  76. package/typings/types.d.ts +4 -3
  77. package/typings/utils.d.cts +8 -5
  78. package/typings/utils.d.ts +8 -5
@@ -4,7 +4,7 @@ export declare class ModuleCache<T, K = any> {
4
4
  result: T;
5
5
  }>;
6
6
  set(cacheKey: K, result: T): void;
7
- get(cacheKey: any, settings?: {
7
+ get(cacheKey: K, settings?: {
8
8
  lifetime: number;
9
9
  }): void | T;
10
10
  }
@@ -4,7 +4,7 @@ export declare class ModuleCache<T, K = any> {
4
4
  result: T;
5
5
  }>;
6
6
  set(cacheKey: K, result: T): void;
7
- get(cacheKey: any, settings?: {
7
+ get(cacheKey: K, settings?: {
8
8
  lifetime: number;
9
9
  }): void | T;
10
10
  }
@@ -1,4 +1,4 @@
1
- import { ASTNode, TypeInfo, TypeNode, DocumentNode, ExecutableDefinitionNode, NameNode, TypeDefinitionNode, FieldDefinitionNode, ObjectTypeExtensionNode, ObjectTypeDefinitionNode, InterfaceTypeDefinitionNode, InterfaceTypeExtensionNode, SelectionSetNode, SelectionNode, DefinitionNode, TypeExtensionNode, DirectiveDefinitionNode, VariableNode, FieldNode, FragmentSpreadNode, EnumValueDefinitionNode, ArgumentNode, NamedTypeNode, EnumTypeDefinitionNode, EnumTypeExtensionNode, InputValueDefinitionNode, InputObjectTypeDefinitionNode, InputObjectTypeExtensionNode, InlineFragmentNode, VariableDefinitionNode, ListTypeNode, NonNullTypeNode, OperationTypeDefinitionNode } from 'graphql';
1
+ import { ASTNode, TypeInfo, TypeNode, DocumentNode, ExecutableDefinitionNode, NameNode, TypeDefinitionNode, FieldDefinitionNode, ObjectTypeExtensionNode, ObjectTypeDefinitionNode, InterfaceTypeDefinitionNode, InterfaceTypeExtensionNode, SelectionSetNode, SelectionNode, DefinitionNode, TypeExtensionNode, DirectiveDefinitionNode, VariableNode, FieldNode, FragmentSpreadNode, EnumValueDefinitionNode, ArgumentNode, NamedTypeNode, EnumTypeDefinitionNode, EnumTypeExtensionNode, InputValueDefinitionNode, InputObjectTypeDefinitionNode, InputObjectTypeExtensionNode, InlineFragmentNode, VariableDefinitionNode, ListTypeNode, NonNullTypeNode, OperationTypeDefinitionNode, DirectiveNode } from 'graphql';
2
2
  import { SourceLocation, Comment } from 'estree';
3
3
  import { AST } from 'eslint';
4
4
  type SafeGraphQLType<T extends ASTNode> = T extends {
@@ -22,7 +22,7 @@ export type TypeInformation = {
22
22
  };
23
23
  type NodeWithName = TypeDefinitionNode | TypeExtensionNode | ExecutableDefinitionNode | DirectiveDefinitionNode | FieldDefinitionNode | EnumValueDefinitionNode | FieldNode | FragmentSpreadNode | VariableNode | ArgumentNode | NamedTypeNode;
24
24
  type NodeWithType = FieldDefinitionNode | InputValueDefinitionNode | OperationTypeDefinitionNode | NonNullTypeNode | ListTypeNode | VariableDefinitionNode;
25
- type ParentNode<T> = T extends DocumentNode ? AST.Program : T extends DefinitionNode ? DocumentNode : T extends EnumValueDefinitionNode ? EnumTypeDefinitionNode | EnumTypeExtensionNode : T extends InputValueDefinitionNode ? InputObjectTypeDefinitionNode | InputObjectTypeExtensionNode | FieldDefinitionNode | DirectiveDefinitionNode : T extends FieldDefinitionNode ? ObjectTypeDefinitionNode | ObjectTypeExtensionNode | InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode : T extends SelectionSetNode ? ExecutableDefinitionNode | FieldNode | InlineFragmentNode : T extends SelectionNode ? SelectionSetNode : T extends TypeNode ? NodeWithType : T extends NameNode ? NodeWithName : unknown;
25
+ type ParentNode<T> = T extends DocumentNode ? AST.Program : T extends DefinitionNode ? DocumentNode : T extends EnumValueDefinitionNode ? EnumTypeDefinitionNode | EnumTypeExtensionNode : T extends InputValueDefinitionNode ? InputObjectTypeDefinitionNode | InputObjectTypeExtensionNode | FieldDefinitionNode | DirectiveDefinitionNode : T extends FieldDefinitionNode ? ObjectTypeDefinitionNode | ObjectTypeExtensionNode | InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode : T extends SelectionSetNode ? ExecutableDefinitionNode | FieldNode | InlineFragmentNode : T extends SelectionNode ? SelectionSetNode : T extends TypeNode ? NodeWithType : T extends NameNode ? NodeWithName : T extends DirectiveNode ? InputObjectTypeDefinitionNode | ObjectTypeDefinitionNode : T extends VariableNode ? VariableDefinitionNode : unknown;
26
26
  type Node<T extends ASTNode, WithTypeInfo extends boolean> = Writeable<SafeGraphQLType<T>> & {
27
27
  type: T['kind'];
28
28
  loc: SourceLocation;
@@ -30,10 +30,10 @@ type Node<T extends ASTNode, WithTypeInfo extends boolean> = Writeable<SafeGraph
30
30
  leadingComments: Comment[];
31
31
  typeInfo: () => WithTypeInfo extends true ? TypeInformation : Record<string, never>;
32
32
  rawNode: () => T;
33
- parent: ParentNode<T>;
33
+ parent: GraphQLESTreeNode<ParentNode<T>>;
34
34
  };
35
35
  export type GraphQLESTreeNode<T, W extends boolean = false> = T extends ASTNode ? {
36
- [K in keyof Node<T, W>]: Node<T, W>[K] extends ReadonlyArray<infer ArrayItem> ? GraphQLESTreeNode<ArrayItem, W>[] : GraphQLESTreeNode<Node<T, W>[K], W>;
36
+ [K in keyof Node<T, W>]: Node<T, W>[K] extends ReadonlyArray<infer ArrayItem> | undefined ? GraphQLESTreeNode<ArrayItem, W>[] : GraphQLESTreeNode<Node<T, W>[K], W>;
37
37
  } : T extends AST.Program ? T & {
38
38
  parent: null;
39
39
  } : T;
@@ -1,4 +1,4 @@
1
- import { ASTNode, TypeInfo, TypeNode, DocumentNode, ExecutableDefinitionNode, NameNode, TypeDefinitionNode, FieldDefinitionNode, ObjectTypeExtensionNode, ObjectTypeDefinitionNode, InterfaceTypeDefinitionNode, InterfaceTypeExtensionNode, SelectionSetNode, SelectionNode, DefinitionNode, TypeExtensionNode, DirectiveDefinitionNode, VariableNode, FieldNode, FragmentSpreadNode, EnumValueDefinitionNode, ArgumentNode, NamedTypeNode, EnumTypeDefinitionNode, EnumTypeExtensionNode, InputValueDefinitionNode, InputObjectTypeDefinitionNode, InputObjectTypeExtensionNode, InlineFragmentNode, VariableDefinitionNode, ListTypeNode, NonNullTypeNode, OperationTypeDefinitionNode } from 'graphql';
1
+ import { ASTNode, TypeInfo, TypeNode, DocumentNode, ExecutableDefinitionNode, NameNode, TypeDefinitionNode, FieldDefinitionNode, ObjectTypeExtensionNode, ObjectTypeDefinitionNode, InterfaceTypeDefinitionNode, InterfaceTypeExtensionNode, SelectionSetNode, SelectionNode, DefinitionNode, TypeExtensionNode, DirectiveDefinitionNode, VariableNode, FieldNode, FragmentSpreadNode, EnumValueDefinitionNode, ArgumentNode, NamedTypeNode, EnumTypeDefinitionNode, EnumTypeExtensionNode, InputValueDefinitionNode, InputObjectTypeDefinitionNode, InputObjectTypeExtensionNode, InlineFragmentNode, VariableDefinitionNode, ListTypeNode, NonNullTypeNode, OperationTypeDefinitionNode, DirectiveNode } from 'graphql';
2
2
  import { SourceLocation, Comment } from 'estree';
3
3
  import { AST } from 'eslint';
4
4
  type SafeGraphQLType<T extends ASTNode> = T extends {
@@ -22,7 +22,7 @@ export type TypeInformation = {
22
22
  };
23
23
  type NodeWithName = TypeDefinitionNode | TypeExtensionNode | ExecutableDefinitionNode | DirectiveDefinitionNode | FieldDefinitionNode | EnumValueDefinitionNode | FieldNode | FragmentSpreadNode | VariableNode | ArgumentNode | NamedTypeNode;
24
24
  type NodeWithType = FieldDefinitionNode | InputValueDefinitionNode | OperationTypeDefinitionNode | NonNullTypeNode | ListTypeNode | VariableDefinitionNode;
25
- type ParentNode<T> = T extends DocumentNode ? AST.Program : T extends DefinitionNode ? DocumentNode : T extends EnumValueDefinitionNode ? EnumTypeDefinitionNode | EnumTypeExtensionNode : T extends InputValueDefinitionNode ? InputObjectTypeDefinitionNode | InputObjectTypeExtensionNode | FieldDefinitionNode | DirectiveDefinitionNode : T extends FieldDefinitionNode ? ObjectTypeDefinitionNode | ObjectTypeExtensionNode | InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode : T extends SelectionSetNode ? ExecutableDefinitionNode | FieldNode | InlineFragmentNode : T extends SelectionNode ? SelectionSetNode : T extends TypeNode ? NodeWithType : T extends NameNode ? NodeWithName : unknown;
25
+ type ParentNode<T> = T extends DocumentNode ? AST.Program : T extends DefinitionNode ? DocumentNode : T extends EnumValueDefinitionNode ? EnumTypeDefinitionNode | EnumTypeExtensionNode : T extends InputValueDefinitionNode ? InputObjectTypeDefinitionNode | InputObjectTypeExtensionNode | FieldDefinitionNode | DirectiveDefinitionNode : T extends FieldDefinitionNode ? ObjectTypeDefinitionNode | ObjectTypeExtensionNode | InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode : T extends SelectionSetNode ? ExecutableDefinitionNode | FieldNode | InlineFragmentNode : T extends SelectionNode ? SelectionSetNode : T extends TypeNode ? NodeWithType : T extends NameNode ? NodeWithName : T extends DirectiveNode ? InputObjectTypeDefinitionNode | ObjectTypeDefinitionNode : T extends VariableNode ? VariableDefinitionNode : unknown;
26
26
  type Node<T extends ASTNode, WithTypeInfo extends boolean> = Writeable<SafeGraphQLType<T>> & {
27
27
  type: T['kind'];
28
28
  loc: SourceLocation;
@@ -30,10 +30,10 @@ type Node<T extends ASTNode, WithTypeInfo extends boolean> = Writeable<SafeGraph
30
30
  leadingComments: Comment[];
31
31
  typeInfo: () => WithTypeInfo extends true ? TypeInformation : Record<string, never>;
32
32
  rawNode: () => T;
33
- parent: ParentNode<T>;
33
+ parent: GraphQLESTreeNode<ParentNode<T>>;
34
34
  };
35
35
  export type GraphQLESTreeNode<T, W extends boolean = false> = T extends ASTNode ? {
36
- [K in keyof Node<T, W>]: Node<T, W>[K] extends ReadonlyArray<infer ArrayItem> ? GraphQLESTreeNode<ArrayItem, W>[] : GraphQLESTreeNode<Node<T, W>[K], W>;
36
+ [K in keyof Node<T, W>]: Node<T, W>[K] extends ReadonlyArray<infer ArrayItem> | undefined ? GraphQLESTreeNode<ArrayItem, W>[] : GraphQLESTreeNode<Node<T, W>[K], W>;
37
37
  } : T extends AST.Program ? T & {
38
38
  parent: null;
39
39
  } : T;
@@ -1,13 +1,13 @@
1
1
  import { Location, GraphQLOutputType, GraphQLNamedType, Token } from 'graphql';
2
2
  import { Comment, SourceLocation } from 'estree';
3
3
  import { AST } from 'eslint';
4
- export declare const valueFromNode: (valueNode: import("graphql").ValueNode, variables?: import("graphql/jsutils/ObjMap").ObjMap<unknown>) => any;
4
+ export declare const valueFromNode: (valueNode: import("graphql").ValueNode, variables?: import("graphql/jsutils/Maybe").Maybe<import("graphql/jsutils/ObjMap").ObjMap<unknown>>) => any;
5
5
  export declare function getBaseType(type: GraphQLOutputType): GraphQLNamedType;
6
6
  type TokenKindValue = '<SOF>' | '!' | '$' | '&' | '(' | ')' | '...' | ':' | '=' | '@' | '[' | ']' | '{' | '|' | '}' | 'Name' | 'Int' | 'Float' | 'String' | 'BlockString' | 'Comment';
7
7
  export declare function convertToken<T extends 'Line' | 'Block' | TokenKindValue>(token: Token, type: T): Omit<AST.Token, 'type'> & {
8
8
  type: T;
9
9
  };
10
10
  export declare function extractTokens(filePath: string, code: string): AST.Token[];
11
- export declare function extractComments(loc: Location): Comment[];
11
+ export declare function extractComments(loc?: Location): Comment[];
12
12
  export declare function convertLocation(location: Location): SourceLocation;
13
13
  export {};
@@ -1,13 +1,13 @@
1
1
  import { Location, GraphQLOutputType, GraphQLNamedType, Token } from 'graphql';
2
2
  import { Comment, SourceLocation } from 'estree';
3
3
  import { AST } from 'eslint';
4
- export declare const valueFromNode: (valueNode: import("graphql").ValueNode, variables?: import("graphql/jsutils/ObjMap").ObjMap<unknown>) => any;
4
+ export declare const valueFromNode: (valueNode: import("graphql").ValueNode, variables?: import("graphql/jsutils/Maybe").Maybe<import("graphql/jsutils/ObjMap").ObjMap<unknown>>) => any;
5
5
  export declare function getBaseType(type: GraphQLOutputType): GraphQLNamedType;
6
6
  type TokenKindValue = '<SOF>' | '!' | '$' | '&' | '(' | ')' | '...' | ':' | '=' | '@' | '[' | ']' | '{' | '|' | '}' | 'Name' | 'Int' | 'Float' | 'String' | 'BlockString' | 'Comment';
7
7
  export declare function convertToken<T extends 'Line' | 'Block' | TokenKindValue>(token: Token, type: T): Omit<AST.Token, 'type'> & {
8
8
  type: T;
9
9
  };
10
10
  export declare function extractTokens(filePath: string, code: string): AST.Token[];
11
- export declare function extractComments(loc: Location): Comment[];
11
+ export declare function extractComments(loc?: Location): Comment[];
12
12
  export declare function convertLocation(location: Location): SourceLocation;
13
13
  export {};
@@ -1,107 +1,107 @@
1
1
  export declare const rules: {
2
2
  alphabetize: import("../types.js").GraphQLESLintRule<{
3
- definitions?: boolean;
4
- selections?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<"OperationDefinition" | "FragmentDefinition">[];
5
- arguments?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<"Field" | "Directive" | "FieldDefinition" | "DirectiveDefinition">[];
6
- values?: "EnumTypeDefinition"[];
7
- fields?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<"ObjectTypeDefinition" | "InterfaceTypeDefinition" | "InputObjectTypeDefinition">[];
8
- variables?: "OperationDefinition"[];
9
- groups?: string[];
3
+ definitions?: boolean | undefined;
4
+ selections?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<"OperationDefinition" | "FragmentDefinition">[] | undefined;
5
+ arguments?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<"Field" | "Directive" | "FieldDefinition" | "DirectiveDefinition">[] | undefined;
6
+ values?: "EnumTypeDefinition"[] | undefined;
7
+ fields?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<"ObjectTypeDefinition" | "InterfaceTypeDefinition" | "InputObjectTypeDefinition">[] | undefined;
8
+ variables?: "OperationDefinition"[] | undefined;
9
+ groups?: string[] | undefined;
10
10
  }[], false>;
11
11
  'description-style': import("../types.js").GraphQLESLintRule<{
12
- style?: "block" | "inline";
12
+ style?: "block" | "inline" | undefined;
13
13
  }[], false>;
14
14
  'input-name': import("../types.js").GraphQLESLintRule<{
15
- checkInputType?: boolean;
16
- caseSensitiveInputType?: boolean;
17
- checkQueries?: boolean;
18
- checkMutations?: boolean;
15
+ checkInputType?: boolean | undefined;
16
+ caseSensitiveInputType?: boolean | undefined;
17
+ checkQueries?: boolean | undefined;
18
+ checkMutations?: boolean | undefined;
19
19
  }[], false>;
20
20
  'lone-executable-definition': import("../types.js").GraphQLESLintRule<{
21
- ignore?: ("fragment" | "query" | "mutation" | "subscription")[];
21
+ ignore?: ("fragment" | "query" | "mutation" | "subscription")[] | undefined;
22
22
  }[], false>;
23
23
  'match-document-filename': import("../types.js").GraphQLESLintRule<{
24
24
  fragment?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle"> | {
25
- style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle">;
26
- suffix?: string;
27
- prefix?: string;
28
- };
25
+ style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle"> | undefined;
26
+ suffix?: string | undefined;
27
+ prefix?: string | undefined;
28
+ } | undefined;
29
29
  query?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle"> | {
30
- style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle">;
31
- suffix?: string;
32
- prefix?: string;
33
- };
30
+ style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle"> | undefined;
31
+ suffix?: string | undefined;
32
+ prefix?: string | undefined;
33
+ } | undefined;
34
34
  mutation?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle"> | {
35
- style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle">;
36
- suffix?: string;
37
- prefix?: string;
38
- };
35
+ style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle"> | undefined;
36
+ suffix?: string | undefined;
37
+ prefix?: string | undefined;
38
+ } | undefined;
39
39
  subscription?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle"> | {
40
- style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle">;
41
- suffix?: string;
42
- prefix?: string;
43
- };
44
- fileExtension?: ".gql" | ".graphql";
40
+ style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle"> | undefined;
41
+ suffix?: string | undefined;
42
+ prefix?: string | undefined;
43
+ } | undefined;
44
+ fileExtension?: ".gql" | ".graphql" | undefined;
45
45
  }[], false>;
46
46
  'naming-convention': import("../types.js").GraphQLESLintRule<{
47
47
  [x: string]: unknown;
48
48
  types?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<"camelCase" | "PascalCase" | "snake_case" | "UPPER_CASE"> | {
49
- style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<"camelCase" | "PascalCase" | "snake_case" | "UPPER_CASE">;
50
- suffix?: string;
51
- prefix?: string;
52
- forbiddenPrefixes?: string[];
53
- forbiddenSuffixes?: string[];
54
- ignorePattern?: string;
55
- };
56
- allowLeadingUnderscore?: boolean;
57
- allowTrailingUnderscore?: boolean;
49
+ style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<"camelCase" | "PascalCase" | "snake_case" | "UPPER_CASE"> | undefined;
50
+ suffix?: string | undefined;
51
+ prefix?: string | undefined;
52
+ forbiddenPrefixes?: string[] | undefined;
53
+ forbiddenSuffixes?: string[] | undefined;
54
+ ignorePattern?: string | undefined;
55
+ } | undefined;
56
+ allowLeadingUnderscore?: boolean | undefined;
57
+ allowTrailingUnderscore?: boolean | undefined;
58
58
  }[], false>;
59
- 'no-anonymous-operations': import("../types.js").GraphQLESLintRule<any[], false>;
60
- 'no-case-insensitive-enum-values-duplicates': import("../types.js").GraphQLESLintRule<any[], false>;
59
+ 'no-anonymous-operations': import("../types.js").GraphQLESLintRule<[], false>;
60
+ 'no-case-insensitive-enum-values-duplicates': import("../types.js").GraphQLESLintRule<[], false>;
61
61
  'no-deprecated': import("../types.js").GraphQLESLintRule<[], true>;
62
- 'no-duplicate-fields': import("../types.js").GraphQLESLintRule<any[], false>;
63
- 'no-hashtag-description': import("../types.js").GraphQLESLintRule<any[], false>;
64
- 'no-one-place-fragments': import("../types.js").GraphQLESLintRule<any[], false>;
62
+ 'no-duplicate-fields': import("../types.js").GraphQLESLintRule<[], false>;
63
+ 'no-hashtag-description': import("../types.js").GraphQLESLintRule<[], false>;
64
+ 'no-one-place-fragments': import("../types.js").GraphQLESLintRule<[], false>;
65
65
  'no-root-type': import("../types.js").GraphQLESLintRule<{
66
66
  disallow: ("mutation" | "subscription")[];
67
67
  }[], false>;
68
- 'no-scalar-result-type-on-mutation': import("../types.js").GraphQLESLintRule<any[], false>;
69
- 'no-typename-prefix': import("../types.js").GraphQLESLintRule<any[], false>;
70
- 'no-unreachable-types': import("../types.js").GraphQLESLintRule<any[], false>;
71
- 'no-unused-fields': import("../types.js").GraphQLESLintRule<any[], false>;
68
+ 'no-scalar-result-type-on-mutation': import("../types.js").GraphQLESLintRule<[], false>;
69
+ 'no-typename-prefix': import("../types.js").GraphQLESLintRule<[], false>;
70
+ 'no-unreachable-types': import("../types.js").GraphQLESLintRule<[], false>;
71
+ 'no-unused-fields': import("../types.js").GraphQLESLintRule<[], false>;
72
72
  'relay-arguments': import("../types.js").GraphQLESLintRule<{
73
- includeBoth?: boolean;
73
+ includeBoth?: boolean | undefined;
74
74
  }[], true>;
75
- 'relay-connection-types': import("../types.js").GraphQLESLintRule<any[], false>;
75
+ 'relay-connection-types': import("../types.js").GraphQLESLintRule<[], false>;
76
76
  'relay-edge-types': import("../types.js").GraphQLESLintRule<{
77
- withEdgeSuffix?: boolean;
78
- shouldImplementNode?: boolean;
79
- listTypeCanWrapOnlyEdgeType?: boolean;
77
+ withEdgeSuffix?: boolean | undefined;
78
+ shouldImplementNode?: boolean | undefined;
79
+ listTypeCanWrapOnlyEdgeType?: boolean | undefined;
80
80
  }[], true>;
81
- 'relay-page-info': import("../types.js").GraphQLESLintRule<any[], false>;
81
+ 'relay-page-info': import("../types.js").GraphQLESLintRule<[], false>;
82
82
  'require-deprecation-date': import("../types.js").GraphQLESLintRule<{
83
- argumentName?: string;
83
+ argumentName?: string | undefined;
84
84
  }[], false>;
85
- 'require-deprecation-reason': import("../types.js").GraphQLESLintRule<any[], false>;
85
+ 'require-deprecation-reason': import("../types.js").GraphQLESLintRule<[], false>;
86
86
  'require-description': import("../types.js").GraphQLESLintRule<import("./require-description.js").RuleOptions, false>;
87
- 'require-field-of-type-query-in-mutation-result': import("../types.js").GraphQLESLintRule<any[], false>;
87
+ 'require-field-of-type-query-in-mutation-result': import("../types.js").GraphQLESLintRule<[], false>;
88
88
  'require-id-when-available': import("../types.js").GraphQLESLintRule<{
89
- fieldName?: string | string[];
89
+ fieldName?: string | string[] | undefined;
90
90
  }[], true>;
91
- 'require-nullable-fields-with-oneof': import("../types.js").GraphQLESLintRule<any[], false>;
92
- 'require-type-pattern-with-oneof': import("../types.js").GraphQLESLintRule<any[], false>;
91
+ 'require-nullable-fields-with-oneof': import("../types.js").GraphQLESLintRule<[], false>;
92
+ 'require-type-pattern-with-oneof': import("../types.js").GraphQLESLintRule<[], false>;
93
93
  'selection-set-depth': import("../types.js").GraphQLESLintRule<{
94
- ignore?: string[];
94
+ ignore?: string[] | undefined;
95
95
  maxDepth: number;
96
96
  }[], false>;
97
97
  'strict-id-in-types': import("../types.js").GraphQLESLintRule<{
98
- acceptedIdNames?: string[];
99
- acceptedIdTypes?: string[];
98
+ acceptedIdNames?: string[] | undefined;
99
+ acceptedIdTypes?: string[] | undefined;
100
100
  exceptions?: {
101
- types?: string[];
102
- suffixes?: string[];
103
- };
101
+ types?: string[] | undefined;
102
+ suffixes?: string[] | undefined;
103
+ } | undefined;
104
104
  }[], false>;
105
- 'unique-fragment-name': import("../types.js").GraphQLESLintRule<any[], false>;
106
- 'unique-operation-name': import("../types.js").GraphQLESLintRule<any[], false>;
105
+ 'unique-fragment-name': import("../types.js").GraphQLESLintRule<[], false>;
106
+ 'unique-operation-name': import("../types.js").GraphQLESLintRule<[], false>;
107
107
  };
@@ -1,107 +1,107 @@
1
1
  export declare const rules: {
2
2
  alphabetize: import("../types.js").GraphQLESLintRule<{
3
- definitions?: boolean;
4
- selections?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<"OperationDefinition" | "FragmentDefinition">[];
5
- arguments?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<"Field" | "Directive" | "FieldDefinition" | "DirectiveDefinition">[];
6
- values?: "EnumTypeDefinition"[];
7
- fields?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<"ObjectTypeDefinition" | "InterfaceTypeDefinition" | "InputObjectTypeDefinition">[];
8
- variables?: "OperationDefinition"[];
9
- groups?: string[];
3
+ definitions?: boolean | undefined;
4
+ selections?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<"OperationDefinition" | "FragmentDefinition">[] | undefined;
5
+ arguments?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<"Field" | "Directive" | "FieldDefinition" | "DirectiveDefinition">[] | undefined;
6
+ values?: "EnumTypeDefinition"[] | undefined;
7
+ fields?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<"ObjectTypeDefinition" | "InterfaceTypeDefinition" | "InputObjectTypeDefinition">[] | undefined;
8
+ variables?: "OperationDefinition"[] | undefined;
9
+ groups?: string[] | undefined;
10
10
  }[], false>;
11
11
  'description-style': import("../types.js").GraphQLESLintRule<{
12
- style?: "block" | "inline";
12
+ style?: "block" | "inline" | undefined;
13
13
  }[], false>;
14
14
  'input-name': import("../types.js").GraphQLESLintRule<{
15
- checkInputType?: boolean;
16
- caseSensitiveInputType?: boolean;
17
- checkQueries?: boolean;
18
- checkMutations?: boolean;
15
+ checkInputType?: boolean | undefined;
16
+ caseSensitiveInputType?: boolean | undefined;
17
+ checkQueries?: boolean | undefined;
18
+ checkMutations?: boolean | undefined;
19
19
  }[], false>;
20
20
  'lone-executable-definition': import("../types.js").GraphQLESLintRule<{
21
- ignore?: ("fragment" | "query" | "mutation" | "subscription")[];
21
+ ignore?: ("fragment" | "query" | "mutation" | "subscription")[] | undefined;
22
22
  }[], false>;
23
23
  'match-document-filename': import("../types.js").GraphQLESLintRule<{
24
24
  fragment?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle"> | {
25
- style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle">;
26
- suffix?: string;
27
- prefix?: string;
28
- };
25
+ style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle"> | undefined;
26
+ suffix?: string | undefined;
27
+ prefix?: string | undefined;
28
+ } | undefined;
29
29
  query?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle"> | {
30
- style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle">;
31
- suffix?: string;
32
- prefix?: string;
33
- };
30
+ style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle"> | undefined;
31
+ suffix?: string | undefined;
32
+ prefix?: string | undefined;
33
+ } | undefined;
34
34
  mutation?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle"> | {
35
- style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle">;
36
- suffix?: string;
37
- prefix?: string;
38
- };
35
+ style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle"> | undefined;
36
+ suffix?: string | undefined;
37
+ prefix?: string | undefined;
38
+ } | undefined;
39
39
  subscription?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle"> | {
40
- style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle">;
41
- suffix?: string;
42
- prefix?: string;
43
- };
44
- fileExtension?: ".gql" | ".graphql";
40
+ style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<import("../utils.js").CaseStyle | "matchDocumentStyle"> | undefined;
41
+ suffix?: string | undefined;
42
+ prefix?: string | undefined;
43
+ } | undefined;
44
+ fileExtension?: ".gql" | ".graphql" | undefined;
45
45
  }[], false>;
46
46
  'naming-convention': import("../types.js").GraphQLESLintRule<{
47
47
  [x: string]: unknown;
48
48
  types?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<"camelCase" | "PascalCase" | "snake_case" | "UPPER_CASE"> | {
49
- style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<"camelCase" | "PascalCase" | "snake_case" | "UPPER_CASE">;
50
- suffix?: string;
51
- prefix?: string;
52
- forbiddenPrefixes?: string[];
53
- forbiddenSuffixes?: string[];
54
- ignorePattern?: string;
55
- };
56
- allowLeadingUnderscore?: boolean;
57
- allowTrailingUnderscore?: boolean;
49
+ style?: import("json-schema-to-ts/lib/types/type-utils/writable.js").DeepWritable<"camelCase" | "PascalCase" | "snake_case" | "UPPER_CASE"> | undefined;
50
+ suffix?: string | undefined;
51
+ prefix?: string | undefined;
52
+ forbiddenPrefixes?: string[] | undefined;
53
+ forbiddenSuffixes?: string[] | undefined;
54
+ ignorePattern?: string | undefined;
55
+ } | undefined;
56
+ allowLeadingUnderscore?: boolean | undefined;
57
+ allowTrailingUnderscore?: boolean | undefined;
58
58
  }[], false>;
59
- 'no-anonymous-operations': import("../types.js").GraphQLESLintRule<any[], false>;
60
- 'no-case-insensitive-enum-values-duplicates': import("../types.js").GraphQLESLintRule<any[], false>;
59
+ 'no-anonymous-operations': import("../types.js").GraphQLESLintRule<[], false>;
60
+ 'no-case-insensitive-enum-values-duplicates': import("../types.js").GraphQLESLintRule<[], false>;
61
61
  'no-deprecated': import("../types.js").GraphQLESLintRule<[], true>;
62
- 'no-duplicate-fields': import("../types.js").GraphQLESLintRule<any[], false>;
63
- 'no-hashtag-description': import("../types.js").GraphQLESLintRule<any[], false>;
64
- 'no-one-place-fragments': import("../types.js").GraphQLESLintRule<any[], false>;
62
+ 'no-duplicate-fields': import("../types.js").GraphQLESLintRule<[], false>;
63
+ 'no-hashtag-description': import("../types.js").GraphQLESLintRule<[], false>;
64
+ 'no-one-place-fragments': import("../types.js").GraphQLESLintRule<[], false>;
65
65
  'no-root-type': import("../types.js").GraphQLESLintRule<{
66
66
  disallow: ("mutation" | "subscription")[];
67
67
  }[], false>;
68
- 'no-scalar-result-type-on-mutation': import("../types.js").GraphQLESLintRule<any[], false>;
69
- 'no-typename-prefix': import("../types.js").GraphQLESLintRule<any[], false>;
70
- 'no-unreachable-types': import("../types.js").GraphQLESLintRule<any[], false>;
71
- 'no-unused-fields': import("../types.js").GraphQLESLintRule<any[], false>;
68
+ 'no-scalar-result-type-on-mutation': import("../types.js").GraphQLESLintRule<[], false>;
69
+ 'no-typename-prefix': import("../types.js").GraphQLESLintRule<[], false>;
70
+ 'no-unreachable-types': import("../types.js").GraphQLESLintRule<[], false>;
71
+ 'no-unused-fields': import("../types.js").GraphQLESLintRule<[], false>;
72
72
  'relay-arguments': import("../types.js").GraphQLESLintRule<{
73
- includeBoth?: boolean;
73
+ includeBoth?: boolean | undefined;
74
74
  }[], true>;
75
- 'relay-connection-types': import("../types.js").GraphQLESLintRule<any[], false>;
75
+ 'relay-connection-types': import("../types.js").GraphQLESLintRule<[], false>;
76
76
  'relay-edge-types': import("../types.js").GraphQLESLintRule<{
77
- withEdgeSuffix?: boolean;
78
- shouldImplementNode?: boolean;
79
- listTypeCanWrapOnlyEdgeType?: boolean;
77
+ withEdgeSuffix?: boolean | undefined;
78
+ shouldImplementNode?: boolean | undefined;
79
+ listTypeCanWrapOnlyEdgeType?: boolean | undefined;
80
80
  }[], true>;
81
- 'relay-page-info': import("../types.js").GraphQLESLintRule<any[], false>;
81
+ 'relay-page-info': import("../types.js").GraphQLESLintRule<[], false>;
82
82
  'require-deprecation-date': import("../types.js").GraphQLESLintRule<{
83
- argumentName?: string;
83
+ argumentName?: string | undefined;
84
84
  }[], false>;
85
- 'require-deprecation-reason': import("../types.js").GraphQLESLintRule<any[], false>;
85
+ 'require-deprecation-reason': import("../types.js").GraphQLESLintRule<[], false>;
86
86
  'require-description': import("../types.js").GraphQLESLintRule<import("./require-description.js").RuleOptions, false>;
87
- 'require-field-of-type-query-in-mutation-result': import("../types.js").GraphQLESLintRule<any[], false>;
87
+ 'require-field-of-type-query-in-mutation-result': import("../types.js").GraphQLESLintRule<[], false>;
88
88
  'require-id-when-available': import("../types.js").GraphQLESLintRule<{
89
- fieldName?: string | string[];
89
+ fieldName?: string | string[] | undefined;
90
90
  }[], true>;
91
- 'require-nullable-fields-with-oneof': import("../types.js").GraphQLESLintRule<any[], false>;
92
- 'require-type-pattern-with-oneof': import("../types.js").GraphQLESLintRule<any[], false>;
91
+ 'require-nullable-fields-with-oneof': import("../types.js").GraphQLESLintRule<[], false>;
92
+ 'require-type-pattern-with-oneof': import("../types.js").GraphQLESLintRule<[], false>;
93
93
  'selection-set-depth': import("../types.js").GraphQLESLintRule<{
94
- ignore?: string[];
94
+ ignore?: string[] | undefined;
95
95
  maxDepth: number;
96
96
  }[], false>;
97
97
  'strict-id-in-types': import("../types.js").GraphQLESLintRule<{
98
- acceptedIdNames?: string[];
99
- acceptedIdTypes?: string[];
98
+ acceptedIdNames?: string[] | undefined;
99
+ acceptedIdTypes?: string[] | undefined;
100
100
  exceptions?: {
101
- types?: string[];
102
- suffixes?: string[];
103
- };
101
+ types?: string[] | undefined;
102
+ suffixes?: string[] | undefined;
103
+ } | undefined;
104
104
  }[], false>;
105
- 'unique-fragment-name': import("../types.js").GraphQLESLintRule<any[], false>;
106
- 'unique-operation-name': import("../types.js").GraphQLESLintRule<any[], false>;
105
+ 'unique-fragment-name': import("../types.js").GraphQLESLintRule<[], false>;
106
+ 'unique-operation-name': import("../types.js").GraphQLESLintRule<[], false>;
107
107
  };
@@ -13,11 +13,12 @@ export type GraphQLInvalidTestCase<T> = GraphQLValidTestCase<T> & {
13
13
  errors: number | (RuleTester.TestCaseError | string)[];
14
14
  output?: string | null;
15
15
  };
16
+ type RuleTesterConfig = {
17
+ parser: string;
18
+ parserOptions: Omit<ParserOptions, 'filePath'>;
19
+ };
16
20
  export declare class GraphQLRuleTester extends RuleTester {
17
- config: {
18
- parser: string;
19
- parserOptions: Omit<ParserOptions, 'filePath'>;
20
- };
21
+ config: RuleTesterConfig;
21
22
  constructor(parserOptions?: Omit<ParserOptions, 'filePath'>);
22
23
  fromMockFile(path: string): string;
23
24
  runGraphQLTests<Options, WithTypeInfo extends boolean = false>(ruleId: string, rule: GraphQLESLintRule<Options, WithTypeInfo>, tests: {
@@ -25,3 +26,4 @@ export declare class GraphQLRuleTester extends RuleTester {
25
26
  invalid: GraphQLInvalidTestCase<Options>[];
26
27
  }): void;
27
28
  }
29
+ export {};
@@ -13,11 +13,12 @@ export type GraphQLInvalidTestCase<T> = GraphQLValidTestCase<T> & {
13
13
  errors: number | (RuleTester.TestCaseError | string)[];
14
14
  output?: string | null;
15
15
  };
16
+ type RuleTesterConfig = {
17
+ parser: string;
18
+ parserOptions: Omit<ParserOptions, 'filePath'>;
19
+ };
16
20
  export declare class GraphQLRuleTester extends RuleTester {
17
- config: {
18
- parser: string;
19
- parserOptions: Omit<ParserOptions, 'filePath'>;
20
- };
21
+ config: RuleTesterConfig;
21
22
  constructor(parserOptions?: Omit<ParserOptions, 'filePath'>);
22
23
  fromMockFile(path: string): string;
23
24
  runGraphQLTests<Options, WithTypeInfo extends boolean = false>(ruleId: string, rule: GraphQLESLintRule<Options, WithTypeInfo>, tests: {
@@ -25,3 +26,4 @@ export declare class GraphQLRuleTester extends RuleTester {
25
26
  invalid: GraphQLInvalidTestCase<Options>[];
26
27
  }): void;
27
28
  }
29
+ export {};
@@ -44,10 +44,11 @@ export type ReportDescriptor = Rule.ReportDescriptorMessage & Rule.ReportDescrip
44
44
  export type GraphQLESLintRuleContext<Options = any[]> = Omit<Rule.RuleContext, 'parserServices' | 'report' | 'options'> & {
45
45
  options: Options;
46
46
  report(descriptor: ReportDescriptor): void;
47
- parserServices?: ParserServices;
47
+ parserServices: ParserServices;
48
48
  };
49
49
  export type CategoryType = 'Schema' | 'Operations';
50
- export type RuleDocsInfo<T> = Omit<Rule.RuleMetaData['docs'], 'category' | 'suggestion'> & {
50
+ type RuleMetaDataDocs = Required<Rule.RuleMetaData>['docs'];
51
+ export type RuleDocsInfo<T> = Omit<RuleMetaDataDocs, 'category' | 'suggestion'> & {
51
52
  category: CategoryType | CategoryType[];
52
53
  requiresSchema?: true;
53
54
  requiresSiblings?: true;
@@ -63,7 +64,7 @@ export type RuleDocsInfo<T> = Omit<Rule.RuleMetaData['docs'], 'category' | 'sugg
63
64
  graphQLJSRuleName?: string;
64
65
  isDisabledForAllConfig?: true;
65
66
  };
66
- export type GraphQLESLintRule<Options = any[], WithTypeInfo extends boolean = false> = {
67
+ export type GraphQLESLintRule<Options = [], WithTypeInfo extends boolean = false> = {
67
68
  create(context: GraphQLESLintRuleContext<Options>): GraphQLESLintRuleListener<WithTypeInfo>;
68
69
  meta: Omit<Rule.RuleMetaData, 'docs' | 'schema'> & {
69
70
  docs?: RuleDocsInfo<Options>;
@@ -44,10 +44,11 @@ export type ReportDescriptor = Rule.ReportDescriptorMessage & Rule.ReportDescrip
44
44
  export type GraphQLESLintRuleContext<Options = any[]> = Omit<Rule.RuleContext, 'parserServices' | 'report' | 'options'> & {
45
45
  options: Options;
46
46
  report(descriptor: ReportDescriptor): void;
47
- parserServices?: ParserServices;
47
+ parserServices: ParserServices;
48
48
  };
49
49
  export type CategoryType = 'Schema' | 'Operations';
50
- export type RuleDocsInfo<T> = Omit<Rule.RuleMetaData['docs'], 'category' | 'suggestion'> & {
50
+ type RuleMetaDataDocs = Required<Rule.RuleMetaData>['docs'];
51
+ export type RuleDocsInfo<T> = Omit<RuleMetaDataDocs, 'category' | 'suggestion'> & {
51
52
  category: CategoryType | CategoryType[];
52
53
  requiresSchema?: true;
53
54
  requiresSiblings?: true;
@@ -63,7 +64,7 @@ export type RuleDocsInfo<T> = Omit<Rule.RuleMetaData['docs'], 'category' | 'sugg
63
64
  graphQLJSRuleName?: string;
64
65
  isDisabledForAllConfig?: true;
65
66
  };
66
- export type GraphQLESLintRule<Options = any[], WithTypeInfo extends boolean = false> = {
67
+ export type GraphQLESLintRule<Options = [], WithTypeInfo extends boolean = false> = {
67
68
  create(context: GraphQLESLintRuleContext<Options>): GraphQLESLintRuleListener<WithTypeInfo>;
68
69
  meta: Omit<Rule.RuleMetaData, 'docs' | 'schema'> & {
69
70
  docs?: RuleDocsInfo<Options>;
@@ -1,4 +1,4 @@
1
- import { GraphQLSchema, Kind } from 'graphql';
1
+ import { ASTNode, GraphQLSchema, Kind } from 'graphql';
2
2
  import { AST } from 'eslint';
3
3
  import { Position } from 'estree';
4
4
  import { GraphQLESLintRuleContext } from './types.cjs';
@@ -6,13 +6,13 @@ import { SiblingOperations } from './documents.cjs';
6
6
  export declare function requireSiblingsOperations(ruleId: string, context: GraphQLESLintRuleContext): SiblingOperations | never;
7
7
  export declare function requireGraphQLSchemaFromContext(ruleId: string, context: GraphQLESLintRuleContext): GraphQLSchema | never;
8
8
  export declare const logger: {
9
- error: (...args: any[]) => void;
10
- warn: (...args: any[]) => void;
9
+ error: (...args: unknown[]) => void;
10
+ warn: (...args: unknown[]) => void;
11
11
  };
12
12
  export declare const normalizePath: (path: string) => string;
13
13
  export declare const VIRTUAL_DOCUMENT_REGEX: RegExp;
14
14
  export declare const CWD: string;
15
- export declare const getTypeName: (node: any) => string;
15
+ export declare const getTypeName: (node: ASTNode) => string;
16
16
  export declare const TYPES_KINDS: readonly [Kind.OBJECT_TYPE_DEFINITION, Kind.INTERFACE_TYPE_DEFINITION, Kind.ENUM_TYPE_DEFINITION, Kind.SCALAR_TYPE_DEFINITION, Kind.INPUT_OBJECT_TYPE_DEFINITION, Kind.UNION_TYPE_DEFINITION];
17
17
  export type CaseStyle = 'camelCase' | 'PascalCase' | 'snake_case' | 'UPPER_CASE' | 'kebab-case';
18
18
  export declare const pascalCase: (str: string) => string;
@@ -31,4 +31,7 @@ export declare const ARRAY_DEFAULT_OPTIONS: {
31
31
  readonly type: "string";
32
32
  };
33
33
  };
34
- export declare const englishJoinWords: (words: any) => string;
34
+ export declare const englishJoinWords: (words: string[]) => string;
35
+ type Truthy<T> = T extends false | '' | 0 | null | undefined ? never : T;
36
+ export declare function truthy<T>(value: T): value is Truthy<T>;
37
+ export {};