kinds.d.ts 2.01 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
/**
 * The set of allowed kind values for AST nodes.
 */
export const Kind: _Kind;

// @internal
type _Kind = {
  // Name
  NAME: 'Name';

  // Document
  DOCUMENT: 'Document';
  OPERATION_DEFINITION: 'OperationDefinition';
  VARIABLE_DEFINITION: 'VariableDefinition';
  SELECTION_SET: 'SelectionSet';
  FIELD: 'Field';
  ARGUMENT: 'Argument';

  // Fragments
  FRAGMENT_SPREAD: 'FragmentSpread';
  INLINE_FRAGMENT: 'InlineFragment';
  FRAGMENT_DEFINITION: 'FragmentDefinition';

  // Values
  VARIABLE: 'Variable';
  INT: 'IntValue';
  FLOAT: 'FloatValue';
  STRING: 'StringValue';
  BOOLEAN: 'BooleanValue';
  NULL: 'NullValue';
  ENUM: 'EnumValue';
  LIST: 'ListValue';
  OBJECT: 'ObjectValue';
  OBJECT_FIELD: 'ObjectField';

  // Directives
  DIRECTIVE: 'Directive';

  // Types
  NAMED_TYPE: 'NamedType';
  LIST_TYPE: 'ListType';
  NON_NULL_TYPE: 'NonNullType';

  // Type System Definitions
  SCHEMA_DEFINITION: 'SchemaDefinition';
  OPERATION_TYPE_DEFINITION: 'OperationTypeDefinition';

  // Type Definitions
  SCALAR_TYPE_DEFINITION: 'ScalarTypeDefinition';
  OBJECT_TYPE_DEFINITION: 'ObjectTypeDefinition';
  FIELD_DEFINITION: 'FieldDefinition';
  INPUT_VALUE_DEFINITION: 'InputValueDefinition';
  INTERFACE_TYPE_DEFINITION: 'InterfaceTypeDefinition';
  UNION_TYPE_DEFINITION: 'UnionTypeDefinition';
  ENUM_TYPE_DEFINITION: 'EnumTypeDefinition';
  ENUM_VALUE_DEFINITION: 'EnumValueDefinition';
  INPUT_OBJECT_TYPE_DEFINITION: 'InputObjectTypeDefinition';

  // Directive Definitions
  DIRECTIVE_DEFINITION: 'DirectiveDefinition';

  // Type System Extensions
  SCHEMA_EXTENSION: 'SchemaExtension';

  // Type Extensions
  SCALAR_TYPE_EXTENSION: 'ScalarTypeExtension';
  OBJECT_TYPE_EXTENSION: 'ObjectTypeExtension';
  INTERFACE_TYPE_EXTENSION: 'InterfaceTypeExtension';
  UNION_TYPE_EXTENSION: 'UnionTypeExtension';
  ENUM_TYPE_EXTENSION: 'EnumTypeExtension';
  INPUT_OBJECT_TYPE_EXTENSION: 'InputObjectTypeExtension';
};

/**
 * The enum type representing the possible kind values of AST nodes.
 */
export type KindEnum = _Kind[keyof _Kind];