import { type NodeData, type ParentDefinitionData, type SchemaData } from '../../schema-building/types/types'; import type { ArgumentName, TypeName } from '../../types/types'; import type { ConstDirectiveNode, ConstValueNode, TypeNode } from 'graphql'; import { type DirectiveArgumentData, type DirectiveDefinitionData } from '../../directive-definition-data/types/types'; export type IsArgumentValueValidParams = { argumentValue: ConstValueNode; parentDefinitionDataByTypeName: Map; typeNode: TypeNode; }; export type ValidateCustomDirectiveParams = { argumentDataByName: Map; directiveNode: ConstDirectiveNode; parentDefinitionDataByTypeName: Map; requiredArgumentNames: Array; }; export type ValidateDirectivesParams = { data: NodeData | SchemaData; directiveCoords: string; directiveDefinitionData: DirectiveDefinitionData; directiveNodes: Array; parentDefinitionDataByTypeName: Map; };