UNPKG

@graphql-inspector/action

Version:

GraphQL Inspector functionality for GitHub Actions

24 lines (23 loc) 1.28 kB
/// <reference types="node_modules/.pnpm/dependency-graph@0.11.0/node_modules/dependency-graph/lib" /> import { DepGraph } from 'dependency-graph'; import type { DocumentNode, FieldNode, FragmentDefinitionNode, FragmentSpreadNode, InlineFragmentNode, OperationDefinitionNode, Source } from 'graphql'; import { GraphQLError } from 'graphql'; export type CalculateOperationComplexityConfig = { scalarCost: number; objectCost: number; depthCostFactor: number; }; export type ValidateOperationComplexityConfig = { maxComplexityScore: number; complexityScalarCost: number; complexityObjectCost: number; complexityDepthCostFactor: number; }; export declare function validateComplexity({ source, doc, maxComplexityScore, config, fragmentGraph, }: { source: Source; doc: DocumentNode; maxComplexityScore: number; config: CalculateOperationComplexityConfig; fragmentGraph: DepGraph<FragmentDefinitionNode>; }): GraphQLError | void; export declare function calculateOperationComplexity(node: FieldNode | FragmentDefinitionNode | InlineFragmentNode | OperationDefinitionNode | FragmentSpreadNode, config: CalculateOperationComplexityConfig, getFragmentByName: (fragmentName: string) => FragmentDefinitionNode | undefined, depth?: number): number;