Initialisation

Added the packages and files for the backend server
This commit is contained in:
jackbeeby
2024-12-15 17:48:45 +11:00
parent 25066e1ee8
commit b412dfe2ca
2732 changed files with 330572 additions and 0 deletions

View File

@@ -0,0 +1,5 @@
import { GraphQLSchema } from 'graphql';
import { SchemaExtensions } from '@graphql-tools/utils';
export { extractExtensionsFromSchema } from '@graphql-tools/utils';
export declare function mergeExtensions(extensions: SchemaExtensions[]): SchemaExtensions;
export declare function applyExtensions(schema: GraphQLSchema, extensions: SchemaExtensions): GraphQLSchema;

View File

@@ -0,0 +1,5 @@
import { GraphQLSchema } from 'graphql';
import { SchemaExtensions } from '@graphql-tools/utils';
export { extractExtensionsFromSchema } from '@graphql-tools/utils';
export declare function mergeExtensions(extensions: SchemaExtensions[]): SchemaExtensions;
export declare function applyExtensions(schema: GraphQLSchema, extensions: SchemaExtensions): GraphQLSchema;

View File

@@ -0,0 +1,3 @@
export * from './merge-resolvers.cjs';
export * from './typedefs-mergers/index.cjs';
export * from './extensions.cjs';

3
node_modules/@graphql-tools/merge/typings/index.d.ts generated vendored Normal file
View File

@@ -0,0 +1,3 @@
export * from './merge-resolvers.js';
export * from './typedefs-mergers/index.js';
export * from './extensions.js';

View File

@@ -0,0 +1,37 @@
import { IResolvers, Maybe } from '@graphql-tools/utils';
/**
* Additional options for merging resolvers
*/
export interface MergeResolversOptions {
exclusions?: string[];
}
/**
* Deep merges multiple resolver definition objects into a single definition.
* @param resolversDefinitions Resolver definitions to be merged
* @param options Additional options
*
* ```js
* const { mergeResolvers } = require('@graphql-tools/merge');
* const clientResolver = require('./clientResolver');
* const productResolver = require('./productResolver');
*
* const resolvers = mergeResolvers([
* clientResolver,
* productResolver,
* ]);
* ```
*
* If you don't want to manually create the array of resolver objects, you can
* also use this function along with loadFiles:
*
* ```js
* const path = require('path');
* const { mergeResolvers } = require('@graphql-tools/merge');
* const { loadFilesSync } = require('@graphql-tools/load-files');
*
* const resolversArray = loadFilesSync(path.join(__dirname, './resolvers'));
*
* const resolvers = mergeResolvers(resolversArray)
* ```
*/
export declare function mergeResolvers<TSource, TContext>(resolversDefinitions: Maybe<IResolvers<TSource, TContext>> | Maybe<Maybe<IResolvers<TSource, TContext>>[]>, options?: MergeResolversOptions): IResolvers<TSource, TContext>;

View File

@@ -0,0 +1,37 @@
import { IResolvers, Maybe } from '@graphql-tools/utils';
/**
* Additional options for merging resolvers
*/
export interface MergeResolversOptions {
exclusions?: string[];
}
/**
* Deep merges multiple resolver definition objects into a single definition.
* @param resolversDefinitions Resolver definitions to be merged
* @param options Additional options
*
* ```js
* const { mergeResolvers } = require('@graphql-tools/merge');
* const clientResolver = require('./clientResolver');
* const productResolver = require('./productResolver');
*
* const resolvers = mergeResolvers([
* clientResolver,
* productResolver,
* ]);
* ```
*
* If you don't want to manually create the array of resolver objects, you can
* also use this function along with loadFiles:
*
* ```js
* const path = require('path');
* const { mergeResolvers } = require('@graphql-tools/merge');
* const { loadFilesSync } = require('@graphql-tools/load-files');
*
* const resolversArray = loadFilesSync(path.join(__dirname, './resolvers'));
*
* const resolvers = mergeResolvers(resolversArray)
* ```
*/
export declare function mergeResolvers<TSource, TContext>(resolversDefinitions: Maybe<IResolvers<TSource, TContext>> | Maybe<Maybe<IResolvers<TSource, TContext>>[]>, options?: MergeResolversOptions): IResolvers<TSource, TContext>;

View File

@@ -0,0 +1,3 @@
import { InputValueDefinitionNode } from 'graphql';
import { Config } from './index.cjs';
export declare function mergeArguments(args1: InputValueDefinitionNode[], args2: InputValueDefinitionNode[], config?: Config): InputValueDefinitionNode[];

View File

@@ -0,0 +1,3 @@
import { InputValueDefinitionNode } from 'graphql';
import { Config } from './index.js';
export declare function mergeArguments(args1: InputValueDefinitionNode[], args2: InputValueDefinitionNode[], config?: Config): InputValueDefinitionNode[];

View File

@@ -0,0 +1,4 @@
import { DirectiveNode, DirectiveDefinitionNode } from 'graphql';
import { Config } from './merge-typedefs.cjs';
export declare function mergeDirectives(d1?: ReadonlyArray<DirectiveNode>, d2?: ReadonlyArray<DirectiveNode>, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): DirectiveNode[];
export declare function mergeDirective(node: DirectiveDefinitionNode, existingNode?: DirectiveDefinitionNode): DirectiveDefinitionNode;

View File

@@ -0,0 +1,4 @@
import { DirectiveNode, DirectiveDefinitionNode } from 'graphql';
import { Config } from './merge-typedefs.js';
export declare function mergeDirectives(d1?: ReadonlyArray<DirectiveNode>, d2?: ReadonlyArray<DirectiveNode>, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): DirectiveNode[];
export declare function mergeDirective(node: DirectiveDefinitionNode, existingNode?: DirectiveDefinitionNode): DirectiveDefinitionNode;

View File

@@ -0,0 +1,3 @@
import { DirectiveDefinitionNode, EnumValueDefinitionNode } from 'graphql';
import { Config } from './merge-typedefs.cjs';
export declare function mergeEnumValues(first: ReadonlyArray<EnumValueDefinitionNode> | undefined, second: ReadonlyArray<EnumValueDefinitionNode> | undefined, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): EnumValueDefinitionNode[];

View File

@@ -0,0 +1,3 @@
import { DirectiveDefinitionNode, EnumValueDefinitionNode } from 'graphql';
import { Config } from './merge-typedefs.js';
export declare function mergeEnumValues(first: ReadonlyArray<EnumValueDefinitionNode> | undefined, second: ReadonlyArray<EnumValueDefinitionNode> | undefined, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): EnumValueDefinitionNode[];

View File

@@ -0,0 +1,3 @@
import { DirectiveDefinitionNode, EnumTypeDefinitionNode, EnumTypeExtensionNode } from 'graphql';
import { Config } from './merge-typedefs.cjs';
export declare function mergeEnum(e1: EnumTypeDefinitionNode | EnumTypeExtensionNode, e2: EnumTypeDefinitionNode | EnumTypeExtensionNode, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): EnumTypeDefinitionNode | EnumTypeExtensionNode;

View File

@@ -0,0 +1,3 @@
import { DirectiveDefinitionNode, EnumTypeDefinitionNode, EnumTypeExtensionNode } from 'graphql';
import { Config } from './merge-typedefs.js';
export declare function mergeEnum(e1: EnumTypeDefinitionNode | EnumTypeExtensionNode, e2: EnumTypeDefinitionNode | EnumTypeExtensionNode, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): EnumTypeDefinitionNode | EnumTypeExtensionNode;

View File

@@ -0,0 +1,11 @@
import { Config } from './merge-typedefs.cjs';
import { FieldDefinitionNode, InputValueDefinitionNode, NameNode, DirectiveDefinitionNode } from 'graphql';
type FieldDefNode = FieldDefinitionNode | InputValueDefinitionNode;
type NamedDefNode = {
name: NameNode;
};
export type OnFieldTypeConflict = (existingField: FieldDefNode, otherField: FieldDefNode, type: NamedDefNode, ignoreNullability: boolean | undefined) => FieldDefNode;
export declare function mergeFields<T extends FieldDefNode>(type: {
name: NameNode;
}, f1: ReadonlyArray<T> | undefined, f2: ReadonlyArray<T> | undefined, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): T[];
export {};

View File

@@ -0,0 +1,11 @@
import { Config } from './merge-typedefs.js';
import { FieldDefinitionNode, InputValueDefinitionNode, NameNode, DirectiveDefinitionNode } from 'graphql';
type FieldDefNode = FieldDefinitionNode | InputValueDefinitionNode;
type NamedDefNode = {
name: NameNode;
};
export type OnFieldTypeConflict = (existingField: FieldDefNode, otherField: FieldDefNode, type: NamedDefNode, ignoreNullability: boolean | undefined) => FieldDefNode;
export declare function mergeFields<T extends FieldDefNode>(type: {
name: NameNode;
}, f1: ReadonlyArray<T> | undefined, f2: ReadonlyArray<T> | undefined, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): T[];
export {};

View File

@@ -0,0 +1,14 @@
export * from './arguments.cjs';
export * from './directives.cjs';
export * from './enum-values.cjs';
export * from './enum.cjs';
export * from './fields.cjs';
export * from './input-type.cjs';
export * from './interface.cjs';
export * from './merge-named-type-array.cjs';
export * from './merge-nodes.cjs';
export * from './merge-typedefs.cjs';
export * from './scalar.cjs';
export * from './type.cjs';
export * from './union.cjs';
export * from './utils.cjs';

View File

@@ -0,0 +1,14 @@
export * from './arguments.js';
export * from './directives.js';
export * from './enum-values.js';
export * from './enum.js';
export * from './fields.js';
export * from './input-type.js';
export * from './interface.js';
export * from './merge-named-type-array.js';
export * from './merge-nodes.js';
export * from './merge-typedefs.js';
export * from './scalar.js';
export * from './type.js';
export * from './union.js';
export * from './utils.js';

View File

@@ -0,0 +1,3 @@
import { Config } from './merge-typedefs.cjs';
import { InputObjectTypeDefinitionNode, InputObjectTypeExtensionNode, DirectiveDefinitionNode } from 'graphql';
export declare function mergeInputType(node: InputObjectTypeDefinitionNode | InputObjectTypeExtensionNode, existingNode: InputObjectTypeDefinitionNode | InputObjectTypeExtensionNode, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): InputObjectTypeDefinitionNode | InputObjectTypeExtensionNode;

View File

@@ -0,0 +1,3 @@
import { Config } from './merge-typedefs.js';
import { InputObjectTypeDefinitionNode, InputObjectTypeExtensionNode, DirectiveDefinitionNode } from 'graphql';
export declare function mergeInputType(node: InputObjectTypeDefinitionNode | InputObjectTypeExtensionNode, existingNode: InputObjectTypeDefinitionNode | InputObjectTypeExtensionNode, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): InputObjectTypeDefinitionNode | InputObjectTypeExtensionNode;

View File

@@ -0,0 +1,3 @@
import { Config } from './merge-typedefs.cjs';
import { DirectiveDefinitionNode, InterfaceTypeDefinitionNode, InterfaceTypeExtensionNode } from 'graphql';
export declare function mergeInterface(node: InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode, existingNode: InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode;

View File

@@ -0,0 +1,3 @@
import { Config } from './merge-typedefs.js';
import { DirectiveDefinitionNode, InterfaceTypeDefinitionNode, InterfaceTypeExtensionNode } from 'graphql';
export declare function mergeInterface(node: InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode, existingNode: InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode;

View File

@@ -0,0 +1,3 @@
import { NamedTypeNode } from 'graphql';
import { Config } from '../index.cjs';
export declare function mergeNamedTypeArray(first?: ReadonlyArray<NamedTypeNode>, second?: ReadonlyArray<NamedTypeNode>, config?: Config): NamedTypeNode[];

View File

@@ -0,0 +1,3 @@
import { NamedTypeNode } from 'graphql';
import { Config } from '../index.js';
export declare function mergeNamedTypeArray(first?: ReadonlyArray<NamedTypeNode>, second?: ReadonlyArray<NamedTypeNode>, config?: Config): NamedTypeNode[];

View File

@@ -0,0 +1,9 @@
import { Config } from './merge-typedefs.cjs';
import { DefinitionNode, DirectiveDefinitionNode, SchemaDefinitionNode, SchemaExtensionNode } from 'graphql';
import { NamedDefinitionNode } from '@graphql-tools/utils';
export declare const schemaDefSymbol = "SCHEMA_DEF_SYMBOL";
export type MergedResultMap = Record<string, NamedDefinitionNode> & {
[schemaDefSymbol]: SchemaDefinitionNode | SchemaExtensionNode;
};
export declare function isNamedDefinitionNode(definitionNode: DefinitionNode): definitionNode is NamedDefinitionNode;
export declare function mergeGraphQLNodes(nodes: ReadonlyArray<DefinitionNode>, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): MergedResultMap;

View File

@@ -0,0 +1,9 @@
import { Config } from './merge-typedefs.js';
import { DefinitionNode, DirectiveDefinitionNode, SchemaDefinitionNode, SchemaExtensionNode } from 'graphql';
import { NamedDefinitionNode } from '@graphql-tools/utils';
export declare const schemaDefSymbol = "SCHEMA_DEF_SYMBOL";
export type MergedResultMap = Record<string, NamedDefinitionNode> & {
[schemaDefSymbol]: SchemaDefinitionNode | SchemaExtensionNode;
};
export declare function isNamedDefinitionNode(definitionNode: DefinitionNode): definitionNode is NamedDefinitionNode;
export declare function mergeGraphQLNodes(nodes: ReadonlyArray<DefinitionNode>, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): MergedResultMap;

View File

@@ -0,0 +1,86 @@
import { DefinitionNode, DocumentNode, ParseOptions } from 'graphql';
import { CompareFn } from './utils.cjs';
import { GetDocumentNodeFromSchemaOptions, TypeSource } from '@graphql-tools/utils';
import { OnFieldTypeConflict } from './fields.cjs';
type Omit<T, K extends keyof any> = Pick<T, Exclude<keyof T, K>>;
export interface Config extends ParseOptions, GetDocumentNodeFromSchemaOptions {
/**
* Produces `schema { query: ..., mutation: ..., subscription: ... }`
*
* Default: true
*/
useSchemaDefinition?: boolean;
/**
* Creates schema definition, even when no types are available
* Produces: `schema { query: Query }`
*
* Default: false
*/
forceSchemaDefinition?: boolean;
/**
* Throws an error on a merge conflict
*
* Default: false
*/
throwOnConflict?: boolean;
/**
* Descriptions are defined as preceding string literals, however an older
* experimental version of the SDL supported preceding comments as
* descriptions. Set to true to enable this deprecated behavior.
* This option is provided to ease adoption and will be removed in v16.
*
* Default: false
*/
commentDescriptions?: boolean;
/**
* Puts the next directive first.
*
* Default: false
*
* @example:
* Given:
* ```graphql
* type User { a: String @foo }
* type User { a: String @bar }
* ```
*
* Results:
* ```
* type User { a: @bar @foo }
* ```
*/
reverseDirectives?: boolean;
exclusions?: string[];
sort?: boolean | CompareFn<string>;
convertExtensions?: boolean;
consistentEnumMerge?: boolean;
ignoreFieldConflicts?: boolean;
/**
* Called if types of the same fields are different
*
* Default: false
*
* @example:
* Given:
* ```graphql
* type User { a: String }
* type User { a: Int }
* ```
*
* Instead of throwing `already defined with a different type` error,
* `onFieldTypeConflict` function is called.
*/
onFieldTypeConflict?: OnFieldTypeConflict;
reverseArguments?: boolean;
}
/**
* Merges multiple type definitions into a single `DocumentNode`
* @param types The type definitions to be merged
*/
export declare function mergeTypeDefs(typeSource: TypeSource): DocumentNode;
export declare function mergeTypeDefs(typeSource: TypeSource, config?: Partial<Config> & {
commentDescriptions: true;
}): string;
export declare function mergeTypeDefs(typeSource: TypeSource, config?: Omit<Partial<Config>, 'commentDescriptions'>): DocumentNode;
export declare function mergeGraphQLTypes(typeSource: TypeSource, config: Config): DefinitionNode[];
export {};

View File

@@ -0,0 +1,86 @@
import { DefinitionNode, DocumentNode, ParseOptions } from 'graphql';
import { CompareFn } from './utils.js';
import { GetDocumentNodeFromSchemaOptions, TypeSource } from '@graphql-tools/utils';
import { OnFieldTypeConflict } from './fields.js';
type Omit<T, K extends keyof any> = Pick<T, Exclude<keyof T, K>>;
export interface Config extends ParseOptions, GetDocumentNodeFromSchemaOptions {
/**
* Produces `schema { query: ..., mutation: ..., subscription: ... }`
*
* Default: true
*/
useSchemaDefinition?: boolean;
/**
* Creates schema definition, even when no types are available
* Produces: `schema { query: Query }`
*
* Default: false
*/
forceSchemaDefinition?: boolean;
/**
* Throws an error on a merge conflict
*
* Default: false
*/
throwOnConflict?: boolean;
/**
* Descriptions are defined as preceding string literals, however an older
* experimental version of the SDL supported preceding comments as
* descriptions. Set to true to enable this deprecated behavior.
* This option is provided to ease adoption and will be removed in v16.
*
* Default: false
*/
commentDescriptions?: boolean;
/**
* Puts the next directive first.
*
* Default: false
*
* @example:
* Given:
* ```graphql
* type User { a: String @foo }
* type User { a: String @bar }
* ```
*
* Results:
* ```
* type User { a: @bar @foo }
* ```
*/
reverseDirectives?: boolean;
exclusions?: string[];
sort?: boolean | CompareFn<string>;
convertExtensions?: boolean;
consistentEnumMerge?: boolean;
ignoreFieldConflicts?: boolean;
/**
* Called if types of the same fields are different
*
* Default: false
*
* @example:
* Given:
* ```graphql
* type User { a: String }
* type User { a: Int }
* ```
*
* Instead of throwing `already defined with a different type` error,
* `onFieldTypeConflict` function is called.
*/
onFieldTypeConflict?: OnFieldTypeConflict;
reverseArguments?: boolean;
}
/**
* Merges multiple type definitions into a single `DocumentNode`
* @param types The type definitions to be merged
*/
export declare function mergeTypeDefs(typeSource: TypeSource): DocumentNode;
export declare function mergeTypeDefs(typeSource: TypeSource, config?: Partial<Config> & {
commentDescriptions: true;
}): string;
export declare function mergeTypeDefs(typeSource: TypeSource, config?: Omit<Partial<Config>, 'commentDescriptions'>): DocumentNode;
export declare function mergeGraphQLTypes(typeSource: TypeSource, config: Config): DefinitionNode[];
export {};

View File

@@ -0,0 +1,3 @@
import { DirectiveDefinitionNode, ScalarTypeDefinitionNode, ScalarTypeExtensionNode } from 'graphql';
import { Config } from './merge-typedefs.cjs';
export declare function mergeScalar(node: ScalarTypeDefinitionNode | ScalarTypeExtensionNode, existingNode: ScalarTypeDefinitionNode | ScalarTypeExtensionNode, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): ScalarTypeDefinitionNode | ScalarTypeExtensionNode;

View File

@@ -0,0 +1,3 @@
import { DirectiveDefinitionNode, ScalarTypeDefinitionNode, ScalarTypeExtensionNode } from 'graphql';
import { Config } from './merge-typedefs.js';
export declare function mergeScalar(node: ScalarTypeDefinitionNode | ScalarTypeExtensionNode, existingNode: ScalarTypeDefinitionNode | ScalarTypeExtensionNode, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): ScalarTypeDefinitionNode | ScalarTypeExtensionNode;

View File

@@ -0,0 +1,8 @@
import { DirectiveDefinitionNode, SchemaDefinitionNode, SchemaExtensionNode } from 'graphql';
import { Config } from './merge-typedefs.cjs';
export declare const DEFAULT_OPERATION_TYPE_NAME_MAP: {
readonly query: "Query";
readonly mutation: "Mutation";
readonly subscription: "Subscription";
};
export declare function mergeSchemaDefs(node: SchemaDefinitionNode | SchemaExtensionNode, existingNode: SchemaDefinitionNode | SchemaExtensionNode, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): SchemaDefinitionNode | SchemaExtensionNode;

View File

@@ -0,0 +1,8 @@
import { DirectiveDefinitionNode, SchemaDefinitionNode, SchemaExtensionNode } from 'graphql';
import { Config } from './merge-typedefs.js';
export declare const DEFAULT_OPERATION_TYPE_NAME_MAP: {
readonly query: "Query";
readonly mutation: "Mutation";
readonly subscription: "Subscription";
};
export declare function mergeSchemaDefs(node: SchemaDefinitionNode | SchemaExtensionNode, existingNode: SchemaDefinitionNode | SchemaExtensionNode, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): SchemaDefinitionNode | SchemaExtensionNode;

View File

@@ -0,0 +1,3 @@
import { Config } from './merge-typedefs.cjs';
import { DirectiveDefinitionNode, ObjectTypeDefinitionNode, ObjectTypeExtensionNode } from 'graphql';
export declare function mergeType(node: ObjectTypeDefinitionNode | ObjectTypeExtensionNode, existingNode: ObjectTypeDefinitionNode | ObjectTypeExtensionNode, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): ObjectTypeDefinitionNode | ObjectTypeExtensionNode;

View File

@@ -0,0 +1,3 @@
import { Config } from './merge-typedefs.js';
import { DirectiveDefinitionNode, ObjectTypeDefinitionNode, ObjectTypeExtensionNode } from 'graphql';
export declare function mergeType(node: ObjectTypeDefinitionNode | ObjectTypeExtensionNode, existingNode: ObjectTypeDefinitionNode | ObjectTypeExtensionNode, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): ObjectTypeDefinitionNode | ObjectTypeExtensionNode;

View File

@@ -0,0 +1,3 @@
import { DirectiveDefinitionNode, UnionTypeDefinitionNode, UnionTypeExtensionNode } from 'graphql';
import { Config } from './merge-typedefs.cjs';
export declare function mergeUnion(first: UnionTypeDefinitionNode | UnionTypeExtensionNode, second: UnionTypeDefinitionNode | UnionTypeExtensionNode, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): UnionTypeDefinitionNode | UnionTypeExtensionNode;

View File

@@ -0,0 +1,3 @@
import { DirectiveDefinitionNode, UnionTypeDefinitionNode, UnionTypeExtensionNode } from 'graphql';
import { Config } from './merge-typedefs.js';
export declare function mergeUnion(first: UnionTypeDefinitionNode | UnionTypeExtensionNode, second: UnionTypeDefinitionNode | UnionTypeExtensionNode, config?: Config, directives?: Record<string, DirectiveDefinitionNode>): UnionTypeDefinitionNode | UnionTypeExtensionNode;

View File

@@ -0,0 +1,15 @@
import { TypeNode, NamedTypeNode, ListTypeNode, NonNullTypeNode, Source } from 'graphql';
export declare function isStringTypes(types: any): types is string;
export declare function isSourceTypes(types: any): types is Source;
export declare function extractType(type: TypeNode): NamedTypeNode;
export declare function isWrappingTypeNode(type: TypeNode): type is ListTypeNode | NonNullTypeNode;
export declare function isListTypeNode(type: TypeNode): type is ListTypeNode;
export declare function isNonNullTypeNode(type: TypeNode): type is NonNullTypeNode;
export declare function printTypeNode(type: TypeNode): string;
export declare enum CompareVal {
A_SMALLER_THAN_B = -1,
A_EQUALS_B = 0,
A_GREATER_THAN_B = 1
}
export type CompareFn<T> = (a: T | undefined, b: T | undefined) => -1 | 0 | 1;
export declare function defaultStringComparator(a: string | undefined, b: string | undefined): CompareVal;

View File

@@ -0,0 +1,15 @@
import { TypeNode, NamedTypeNode, ListTypeNode, NonNullTypeNode, Source } from 'graphql';
export declare function isStringTypes(types: any): types is string;
export declare function isSourceTypes(types: any): types is Source;
export declare function extractType(type: TypeNode): NamedTypeNode;
export declare function isWrappingTypeNode(type: TypeNode): type is ListTypeNode | NonNullTypeNode;
export declare function isListTypeNode(type: TypeNode): type is ListTypeNode;
export declare function isNonNullTypeNode(type: TypeNode): type is NonNullTypeNode;
export declare function printTypeNode(type: TypeNode): string;
export declare enum CompareVal {
A_SMALLER_THAN_B = -1,
A_EQUALS_B = 0,
A_GREATER_THAN_B = 1
}
export type CompareFn<T> = (a: T | undefined, b: T | undefined) => -1 | 0 | 1;
export declare function defaultStringComparator(a: string | undefined, b: string | undefined): CompareVal;