Mirror: The spec-compliant minimum of client-side GraphQL.
at v1.2.0 7.6 kB view raw
1import type * as GraphQL from 'graphql'; 2 3import type { Or, Location } from './types'; 4import type { Kind, OperationTypeNode } from './kind'; 5 6import type { 7 StringValueNode, 8 ConstDirectiveNode, 9 ConstValueNode, 10 NamedTypeNode, 11 TypeNode, 12 NameNode, 13} from './ast'; 14 15/** Type System Definition */ 16export declare type TypeSystemDefinitionNode = Or< 17 GraphQL.TypeSystemDefinitionNode, 18 SchemaDefinitionNode | TypeDefinitionNode | DirectiveDefinitionNode 19>; 20 21export type SchemaDefinitionNode = Or< 22 GraphQL.SchemaDefinitionNode, 23 { 24 readonly kind: Kind.SCHEMA_DEFINITION; 25 readonly loc?: Location; 26 readonly description?: StringValueNode; 27 readonly directives?: ReadonlyArray<ConstDirectiveNode>; 28 readonly operationTypes: ReadonlyArray<OperationTypeDefinitionNode>; 29 } 30>; 31 32export type OperationTypeDefinitionNode = Or< 33 GraphQL.OperationTypeDefinitionNode, 34 { 35 readonly kind: Kind.OPERATION_TYPE_DEFINITION; 36 readonly loc?: Location; 37 readonly operation: OperationTypeNode; 38 readonly type: NamedTypeNode; 39 } 40>; 41 42/** Type Definition */ 43export declare type TypeDefinitionNode = Or< 44 GraphQL.TypeDefinitionNode, 45 | ScalarTypeDefinitionNode 46 | ObjectTypeDefinitionNode 47 | InterfaceTypeDefinitionNode 48 | UnionTypeDefinitionNode 49 | EnumTypeDefinitionNode 50 | InputObjectTypeDefinitionNode 51>; 52 53export type ScalarTypeDefinitionNode = Or< 54 GraphQL.ScalarTypeDefinitionNode, 55 { 56 readonly kind: Kind.SCALAR_TYPE_DEFINITION; 57 readonly loc?: Location; 58 readonly description?: StringValueNode; 59 readonly name: NameNode; 60 readonly directives?: ReadonlyArray<ConstDirectiveNode>; 61 } 62>; 63 64export type ObjectTypeDefinitionNode = Or< 65 GraphQL.ObjectTypeDefinitionNode, 66 { 67 readonly kind: Kind.OBJECT_TYPE_DEFINITION; 68 readonly loc?: Location; 69 readonly description?: StringValueNode; 70 readonly name: NameNode; 71 readonly interfaces?: ReadonlyArray<NamedTypeNode>; 72 readonly directives?: ReadonlyArray<ConstDirectiveNode>; 73 readonly fields?: ReadonlyArray<FieldDefinitionNode>; 74 } 75>; 76 77export type FieldDefinitionNode = Or< 78 GraphQL.FieldDefinitionNode, 79 { 80 readonly kind: Kind.FIELD_DEFINITION; 81 readonly loc?: Location; 82 readonly description?: StringValueNode; 83 readonly name: NameNode; 84 readonly arguments?: ReadonlyArray<InputValueDefinitionNode>; 85 readonly type: TypeNode; 86 readonly directives?: ReadonlyArray<ConstDirectiveNode>; 87 } 88>; 89 90export type InputValueDefinitionNode = Or< 91 GraphQL.InputValueDefinitionNode, 92 { 93 readonly kind: Kind.INPUT_VALUE_DEFINITION; 94 readonly loc?: Location; 95 readonly description?: StringValueNode; 96 readonly name: NameNode; 97 readonly type: TypeNode; 98 readonly defaultValue?: ConstValueNode; 99 readonly directives?: ReadonlyArray<ConstDirectiveNode>; 100 } 101>; 102 103export type InterfaceTypeDefinitionNode = Or< 104 GraphQL.InterfaceTypeDefinitionNode, 105 { 106 readonly kind: Kind.INTERFACE_TYPE_DEFINITION; 107 readonly loc?: Location; 108 readonly description?: StringValueNode; 109 readonly name: NameNode; 110 readonly interfaces?: ReadonlyArray<NamedTypeNode>; 111 readonly directives?: ReadonlyArray<ConstDirectiveNode>; 112 readonly fields?: ReadonlyArray<FieldDefinitionNode>; 113 } 114>; 115 116export type UnionTypeDefinitionNode = Or< 117 GraphQL.UnionTypeDefinitionNode, 118 { 119 readonly kind: Kind.UNION_TYPE_DEFINITION; 120 readonly loc?: Location; 121 readonly description?: StringValueNode; 122 readonly name: NameNode; 123 readonly directives?: ReadonlyArray<ConstDirectiveNode>; 124 readonly types?: ReadonlyArray<NamedTypeNode>; 125 } 126>; 127 128export type EnumTypeDefinitionNode = Or< 129 GraphQL.EnumTypeDefinitionNode, 130 { 131 readonly kind: Kind.ENUM_TYPE_DEFINITION; 132 readonly loc?: Location; 133 readonly description?: StringValueNode; 134 readonly name: NameNode; 135 readonly directives?: ReadonlyArray<ConstDirectiveNode>; 136 readonly values?: ReadonlyArray<EnumValueDefinitionNode>; 137 } 138>; 139 140export type EnumValueDefinitionNode = Or< 141 GraphQL.EnumValueDefinitionNode, 142 { 143 readonly kind: Kind.ENUM_VALUE_DEFINITION; 144 readonly loc?: Location; 145 readonly description?: StringValueNode; 146 readonly name: NameNode; 147 readonly directives?: ReadonlyArray<ConstDirectiveNode>; 148 } 149>; 150 151export type InputObjectTypeDefinitionNode = Or< 152 GraphQL.InputObjectTypeDefinitionNode, 153 { 154 readonly kind: Kind.INPUT_OBJECT_TYPE_DEFINITION; 155 readonly loc?: Location; 156 readonly description?: StringValueNode; 157 readonly name: NameNode; 158 readonly directives?: ReadonlyArray<ConstDirectiveNode>; 159 readonly fields?: ReadonlyArray<InputValueDefinitionNode>; 160 } 161>; 162 163export type DirectiveDefinitionNode = Or< 164 GraphQL.DirectiveDefinitionNode, 165 { 166 readonly kind: Kind.DIRECTIVE_DEFINITION; 167 readonly loc?: Location; 168 readonly description?: StringValueNode; 169 readonly name: NameNode; 170 readonly arguments?: ReadonlyArray<InputValueDefinitionNode>; 171 readonly repeatable: boolean; 172 readonly locations: ReadonlyArray<NameNode>; 173 } 174>; 175 176export type TypeSystemExtensionNode = Or< 177 GraphQL.TypeSystemExtensionNode, 178 SchemaExtensionNode | TypeExtensionNode 179>; 180 181export type SchemaExtensionNode = Or< 182 GraphQL.SchemaExtensionNode, 183 { 184 readonly kind: Kind.SCHEMA_EXTENSION; 185 readonly loc?: Location; 186 readonly directives?: ReadonlyArray<ConstDirectiveNode>; 187 readonly operationTypes?: ReadonlyArray<OperationTypeDefinitionNode>; 188 } 189>; 190 191export declare type TypeExtensionNode = Or< 192 GraphQL.TypeExtensionNode, 193 | ScalarTypeExtensionNode 194 | ObjectTypeExtensionNode 195 | InterfaceTypeExtensionNode 196 | UnionTypeExtensionNode 197 | EnumTypeExtensionNode 198 | InputObjectTypeExtensionNode 199>; 200 201export type ScalarTypeExtensionNode = Or< 202 GraphQL.ScalarTypeExtensionNode, 203 { 204 readonly kind: Kind.SCALAR_TYPE_EXTENSION; 205 readonly loc?: Location; 206 readonly name: NameNode; 207 readonly directives?: ReadonlyArray<ConstDirectiveNode>; 208 } 209>; 210 211export type ObjectTypeExtensionNode = Or< 212 GraphQL.ObjectTypeExtensionNode, 213 { 214 readonly kind: Kind.OBJECT_TYPE_EXTENSION; 215 readonly loc?: Location; 216 readonly name: NameNode; 217 readonly interfaces?: ReadonlyArray<NamedTypeNode>; 218 readonly directives?: ReadonlyArray<ConstDirectiveNode>; 219 readonly fields?: ReadonlyArray<FieldDefinitionNode>; 220 } 221>; 222 223export type InterfaceTypeExtensionNode = Or< 224 GraphQL.InterfaceTypeExtensionNode, 225 { 226 readonly kind: Kind.INTERFACE_TYPE_EXTENSION; 227 readonly loc?: Location; 228 readonly name: NameNode; 229 readonly interfaces?: ReadonlyArray<NamedTypeNode>; 230 readonly directives?: ReadonlyArray<ConstDirectiveNode>; 231 readonly fields?: ReadonlyArray<FieldDefinitionNode>; 232 } 233>; 234 235export type UnionTypeExtensionNode = Or< 236 GraphQL.UnionTypeExtensionNode, 237 { 238 readonly kind: Kind.UNION_TYPE_EXTENSION; 239 readonly loc?: Location; 240 readonly name: NameNode; 241 readonly directives?: ReadonlyArray<ConstDirectiveNode>; 242 readonly types?: ReadonlyArray<NamedTypeNode>; 243 } 244>; 245 246export type EnumTypeExtensionNode = Or< 247 GraphQL.EnumTypeExtensionNode, 248 { 249 readonly kind: Kind.ENUM_TYPE_EXTENSION; 250 readonly loc?: Location; 251 readonly name: NameNode; 252 readonly directives?: ReadonlyArray<ConstDirectiveNode>; 253 readonly values?: ReadonlyArray<EnumValueDefinitionNode>; 254 } 255>; 256 257export type InputObjectTypeExtensionNode = Or< 258 GraphQL.InputObjectTypeExtensionNode, 259 { 260 readonly kind: Kind.INPUT_OBJECT_TYPE_EXTENSION; 261 readonly loc?: Location; 262 readonly name: NameNode; 263 readonly directives?: ReadonlyArray<ConstDirectiveNode>; 264 readonly fields?: ReadonlyArray<InputValueDefinitionNode>; 265 } 266>;