import { GraphQLEnumType, GraphQLInputObjectType, GraphQLInterfaceType, GraphQLList, type GraphQLNamedType, GraphQLNonNull, GraphQLObjectType, GraphQLScalarType, GraphQLUnionType } from 'graphql'; export declare const TypeClassNameEnum: { readonly Scalar: "GraphQLScalarType"; readonly Object: "GraphQLObjectType"; readonly Interface: "GraphQLInterfaceType"; readonly Union: "GraphQLUnionType"; readonly Enum: "GraphQLEnumType"; readonly InputObject: "GraphQLInputObjectType"; readonly List: "GraphQLList"; readonly NonNull: "GraphQLNonNull"; }; export declare namespace TypeClassName { type Scalar = typeof TypeClassNameEnum.Scalar; type Object = typeof TypeClassNameEnum.Object; type Interface = typeof TypeClassNameEnum.Interface; type Union = typeof TypeClassNameEnum.Union; type Enum = typeof TypeClassNameEnum.Enum; type InputObject = typeof TypeClassNameEnum.InputObject; type List = typeof TypeClassNameEnum.List; type NonNull = typeof TypeClassNameEnum.NonNull; } export type TypeClassName = TypeClassName.Scalar | TypeClassName.Object | TypeClassName.Interface | TypeClassName.Union | TypeClassName.Enum | TypeClassName.InputObject | TypeClassName.List | TypeClassName.NonNull; export type TypeClassToName = C extends GraphQLScalarType ? TypeClassName.Scalar : C extends GraphQLObjectType ? TypeClassName.Object : C extends GraphQLInterfaceType ? TypeClassName.Interface : C extends GraphQLUnionType ? TypeClassName.Union : C extends GraphQLEnumType ? TypeClassName.Enum : C extends GraphQLInputObjectType ? TypeClassName.InputObject : C extends GraphQLList ? TypeClassName.List : C extends GraphQLNonNull ? TypeClassName.NonNull : never; export declare const typeClassToName: <$Node extends GraphQLNamedType>(node: $Node) => TypeClassToName<$Node>; export declare const namedTypeClassNameToClassMap: { readonly GraphQLScalarType: typeof GraphQLScalarType; readonly GraphQLObjectType: typeof GraphQLObjectType; readonly GraphQLInterfaceType: typeof GraphQLInterfaceType; readonly GraphQLUnionType: typeof GraphQLUnionType; readonly GraphQLEnumType: typeof GraphQLEnumType; readonly GraphQLInputObjectType: typeof GraphQLInputObjectType; }; export declare const typeClassNameToClassMap: { readonly GraphQLScalarType: typeof GraphQLScalarType; readonly GraphQLObjectType: typeof GraphQLObjectType; readonly GraphQLInterfaceType: typeof GraphQLInterfaceType; readonly GraphQLUnionType: typeof GraphQLUnionType; readonly GraphQLEnumType: typeof GraphQLEnumType; readonly GraphQLInputObjectType: typeof GraphQLInputObjectType; readonly GraphQLNonNull: typeof GraphQLNonNull; readonly GraphQLList: typeof GraphQLList; }; //# sourceMappingURL=type-class-name.d.ts.map