import { type ConstDirectiveNode, type ConstValueNode, type DirectiveDefinitionNode, type EnumValueDefinitionNode, type FieldDefinitionNode, type InputValueDefinitionNode, type InterfaceTypeDefinitionNode, type InterfaceTypeExtensionNode, Kind, type NamedTypeNode, type NameNode, type ObjectTypeDefinitionNode, type ObjectTypeExtensionNode, type StringValueNode, type TypeNode } from 'graphql'; import { type ExtractDirectiveLocationsResult } from './types/results'; export type MutableDirectiveDefinitionNode = { arguments: MutableInputValueNode[]; kind: Kind.DIRECTIVE_DEFINITION; locations: NameNode[]; name: NameNode; repeatable: boolean; description?: StringValueNode; }; export type MutableEnumNode = { kind: Kind.ENUM_TYPE_DEFINITION; name: NameNode; description?: StringValueNode; directives?: ConstDirectiveNode[]; values?: MutableEnumValueNode[]; }; export declare function getMutableEnumNode(nameNode: NameNode): MutableEnumNode; export type MutableEnumValueNode = { directives: ConstDirectiveNode[]; kind: Kind.ENUM_VALUE_DEFINITION; name: NameNode; description?: StringValueNode; }; export declare function getMutableEnumValueNode(node: EnumValueDefinitionNode): MutableEnumValueNode; export type MutableFieldNode = { arguments: MutableInputValueNode[]; directives: ConstDirectiveNode[]; kind: Kind.FIELD_DEFINITION; name: NameNode; type: MutableTypeNode; description?: StringValueNode; }; export declare function getMutableFieldNode(node: FieldDefinitionNode, hostPath: string, errors: Error[]): MutableFieldNode; export type MutableInputObjectNode = { kind: Kind.INPUT_OBJECT_TYPE_DEFINITION; name: NameNode; description?: StringValueNode; directives?: ConstDirectiveNode[]; fields?: InputValueDefinitionNode[]; }; export declare function getMutableInputObjectNode(nameNode: NameNode): MutableInputObjectNode; export type MutableInputValueNode = { directives: ConstDirectiveNode[]; kind: Kind.INPUT_VALUE_DEFINITION; name: NameNode; type: MutableTypeNode; defaultValue?: ConstValueNode; description?: StringValueNode; }; export declare function getMutableInputValueNode(node: InputValueDefinitionNode, hostPath: string, errors: Error[]): MutableInputValueNode; export type MutableInterfaceNode = { kind: Kind.INTERFACE_TYPE_DEFINITION; name: NameNode; description?: StringValueNode; directives?: ConstDirectiveNode[]; fields?: FieldDefinitionNode[]; interfaces?: NamedTypeNode[]; }; export declare function getMutableInterfaceNode(nameNode: NameNode): MutableInterfaceNode; export type MutableObjectNode = { kind: Kind.OBJECT_TYPE_DEFINITION; name: NameNode; description?: StringValueNode; directives?: ConstDirectiveNode[]; fields?: FieldDefinitionNode[]; interfaces?: NamedTypeNode[]; }; export declare function getMutableObjectNode(nameNode: NameNode): MutableObjectNode; export type MutableScalarNode = { kind: Kind.SCALAR_TYPE_DEFINITION; name: NameNode; description?: StringValueNode; directives?: ConstDirectiveNode[]; }; export declare function getMutableScalarNode(nameNode: NameNode): MutableScalarNode; export type MutableIntermediateTypeNode = { kind: Kind.NAMED_TYPE | Kind.LIST_TYPE | Kind.NON_NULL_TYPE; name?: NameNode; type?: MutableIntermediateTypeNode; }; export type MutableTypeNode = MutableNamedTypeNode | MutableListTypeNode | MutableNonNullTypeNode; export type MutableNamedTypeNode = { kind: Kind.NAMED_TYPE; name: NameNode; }; export type MutableListTypeNode = { kind: Kind.LIST_TYPE; type: MutableTypeNode; }; export type MutableNonNullTypeNode = { kind: Kind.NON_NULL_TYPE; type: MutableNamedTypeNode | MutableListTypeNode; }; export declare function getMutableTypeNode(node: TypeNode, typePath: string, errors: Error[]): MutableTypeNode; export type MutableUnionNode = { kind: Kind.UNION_TYPE_DEFINITION; name: NameNode; description?: StringValueNode; directives?: ConstDirectiveNode[]; types?: NamedTypeNode[]; }; export declare function getMutableUnionNode(nameNode: NameNode): MutableUnionNode; export type MutableDefinitionNode = MutableDirectiveDefinitionNode | MutableEnumNode | MutableInputObjectNode | MutableInterfaceNode | MutableObjectNode | MutableScalarNode | MutableUnionNode; export type CompositeOutputNode = InterfaceTypeDefinitionNode | InterfaceTypeExtensionNode | ObjectTypeDefinitionNode | ObjectTypeExtensionNode; export declare function getTypeNodeNamedTypeName(typeNode: TypeNode): string; export declare function getNamedTypeNode(typeNode: TypeNode): TypeNode; export declare function extractDirectiveLocations(node: DirectiveDefinitionNode): ExtractDirectiveLocationsResult;