UNPKG

@graphql-inspector/core

Version:

Tooling for GraphQL. Compare GraphQL Schemas, check documents, find breaking changes, find similar types.

149 lines (148 loc) • 7.24 kB
import { DirectiveLocationEnum, GraphQLArgument, GraphQLDirective } from 'graphql'; import { Change, ChangeType, CriticalityLevel, DirectiveAddedChange, DirectiveArgumentAddedChange, DirectiveArgumentDefaultValueChangedChange, DirectiveArgumentDescriptionChangedChange, DirectiveArgumentRemovedChange, DirectiveArgumentTypeChangedChange, DirectiveDescriptionChangedChange, DirectiveLocationAddedChange, DirectiveLocationRemovedChange, DirectiveRemovedChange } from './change.cjs'; export declare function directiveRemovedFromMeta(args: DirectiveRemovedChange): { readonly criticality: { readonly level: CriticalityLevel.Breaking; readonly reason: "A directive could be in use of a client application. Removing it could break the client application."; }; readonly type: "DIRECTIVE_REMOVED"; readonly message: string; readonly path: `@${string}`; readonly meta: { removedDirectiveName: string; }; }; export declare function directiveRemoved(directive: GraphQLDirective): Change<typeof ChangeType.DirectiveRemoved>; export declare function directiveAddedFromMeta(args: DirectiveAddedChange): { readonly criticality: { readonly level: CriticalityLevel.NonBreaking; }; readonly type: "DIRECTIVE_ADDED"; readonly message: string; readonly path: `@${string}`; readonly meta: { addedDirectiveName: string; }; }; export declare function directiveAdded(directive: GraphQLDirective): Change<typeof ChangeType.DirectiveAdded>; export declare function directiveDescriptionChangedFromMeta(args: DirectiveDescriptionChangedChange): { readonly criticality: { readonly level: CriticalityLevel.NonBreaking; }; readonly type: "DIRECTIVE_DESCRIPTION_CHANGED"; readonly message: string; readonly path: `@${string}`; readonly meta: { directiveName: string; oldDirectiveDescription: string | null; newDirectiveDescription: string | null; }; }; export declare function directiveDescriptionChanged(oldDirective: GraphQLDirective, newDirective: GraphQLDirective): Change<typeof ChangeType.DirectiveDescriptionChanged>; export declare function directiveLocationAddedFromMeta(args: DirectiveLocationAddedChange): { readonly criticality: { readonly level: CriticalityLevel.NonBreaking; }; readonly type: "DIRECTIVE_LOCATION_ADDED"; readonly message: string; readonly path: `@${string}`; readonly meta: { directiveName: string; addedDirectiveLocation: string; }; }; export declare function directiveLocationAdded(directive: GraphQLDirective, location: DirectiveLocationEnum): Change<typeof ChangeType.DirectiveLocationAdded>; export declare function directiveLocationRemovedFromMeta(args: DirectiveLocationRemovedChange): { readonly criticality: { readonly level: CriticalityLevel.Breaking; readonly reason: "A directive could be in use of a client application. Removing it could break the client application."; }; readonly type: "DIRECTIVE_LOCATION_REMOVED"; readonly message: string; readonly path: `@${string}`; readonly meta: { directiveName: string; removedDirectiveLocation: string; }; }; export declare function directiveLocationRemoved(directive: GraphQLDirective, location: DirectiveLocationEnum): Change<typeof ChangeType.DirectiveLocationRemoved>; export declare function directiveArgumentAddedFromMeta(args: DirectiveArgumentAddedChange): { readonly criticality: { level: CriticalityLevel; reason: string; }; readonly type: "DIRECTIVE_ARGUMENT_ADDED"; readonly message: `Argument '${string}' was added to directive '${string}'`; readonly path: `@${string}`; readonly meta: { directiveName: string; addedDirectiveArgumentName: string; addedDirectiveArgumentTypeIsNonNull: boolean; }; }; export declare function directiveArgumentAdded(directive: GraphQLDirective, arg: GraphQLArgument): Change<typeof ChangeType.DirectiveArgumentAdded>; export declare function directiveArgumentRemovedFromMeta(args: DirectiveArgumentRemovedChange): { readonly criticality: { readonly level: CriticalityLevel.Breaking; readonly reason: "A directive argument could be in use of a client application. Removing the argument can break client applications."; }; readonly type: "DIRECTIVE_ARGUMENT_REMOVED"; readonly message: string; readonly path: `@${string}.${string}`; readonly meta: { directiveName: string; removedDirectiveArgumentName: string; }; }; export declare function directiveArgumentRemoved(directive: GraphQLDirective, arg: GraphQLArgument): Change<typeof ChangeType.DirectiveArgumentRemoved>; export declare function directiveArgumentDescriptionChangedFromMeta(args: DirectiveArgumentDescriptionChangedChange): { readonly criticality: { readonly level: CriticalityLevel.NonBreaking; }; readonly type: "DIRECTIVE_ARGUMENT_DESCRIPTION_CHANGED"; readonly message: string; readonly path: `@${string}.${string}`; readonly meta: { directiveName: string; directiveArgumentName: string; oldDirectiveArgumentDescription: string | null; newDirectiveArgumentDescription: string | null; }; }; export declare function directiveArgumentDescriptionChanged(directive: GraphQLDirective, oldArg: GraphQLArgument, newArg: GraphQLArgument): Change<typeof ChangeType.DirectiveArgumentDescriptionChanged>; export declare function directiveArgumentDefaultValueChangedFromMeta(args: DirectiveArgumentDefaultValueChangedChange): { readonly criticality: { readonly level: CriticalityLevel.Dangerous; readonly reason: "Changing the default value for an argument may change the runtime behaviour of a field if it was never provided."; }; readonly type: "DIRECTIVE_ARGUMENT_DEFAULT_VALUE_CHANGED"; readonly message: string; readonly path: `@${string}.${string}`; readonly meta: { directiveName: string; directiveArgumentName: string; oldDirectiveArgumentDefaultValue?: string; newDirectiveArgumentDefaultValue?: string; }; }; export declare function directiveArgumentDefaultValueChanged(directive: GraphQLDirective, oldArg: GraphQLArgument, newArg: GraphQLArgument): Change<typeof ChangeType.DirectiveArgumentDefaultValueChanged>; export declare function directiveArgumentTypeChangedFromMeta(args: DirectiveArgumentTypeChangedChange): { readonly criticality: { level: CriticalityLevel; reason: string; } | { level: CriticalityLevel; reason?: undefined; }; readonly type: "DIRECTIVE_ARGUMENT_TYPE_CHANGED"; readonly message: string; readonly path: `@${string}.${string}`; readonly meta: { directiveName: string; directiveArgumentName: string; oldDirectiveArgumentType: string; newDirectiveArgumentType: string; isSafeDirectiveArgumentTypeChange: boolean; }; }; export declare function directiveArgumentTypeChanged(directive: GraphQLDirective, oldArg: GraphQLArgument, newArg: GraphQLArgument): Change<typeof ChangeType.DirectiveArgumentTypeChanged>;