import { GraphQLEnumType, GraphQLFieldConfigArgumentMap, GraphQLFieldConfigMap, GraphQLInputFieldConfigMap, GraphQLInputObjectType, GraphQLInterfaceType, GraphQLNamedType, GraphQLObjectType, GraphQLScalarType, GraphQLUnionType } from 'graphql'; import type { MergeSchemaConfig } from './builder'; import { ArgsRecord } from './definitions/args'; import type { InputDefinitionBlock } from './definitions/definitionBlocks'; import { InterfaceDefinitionBlock } from './definitions/interfaceType'; import { ObjectDefinitionBlock } from './definitions/objectType'; import type { Maybe, SourceTypingDef } from './definitions/_types'; export interface RebuildConfig extends Omit { captureLeafType?: (type: GraphQLNamedType) => void; asNexusMethod?: string; sourceType?: SourceTypingDef; } export declare function rebuildNamedType(type: GraphQLNamedType, config: RebuildConfig): import("./definitions/inputObjectType").NexusInputObjectTypeDef | import("./definitions/enumType").NexusEnumTypeDef | import("./definitions/scalarType").NexusScalarTypeDef | import("./definitions/objectType").NexusObjectTypeDef | import("./definitions/interfaceType").NexusInterfaceTypeDef | import("./definitions/unionType").NexusUnionTypeDef; export declare function rebuildInputObjectType(type: GraphQLInputObjectType, config: RebuildConfig): import("./definitions/inputObjectType").NexusInputObjectTypeDef; export declare function rebuildUnionType(type: GraphQLUnionType, config: RebuildConfig): import("./definitions/unionType").NexusUnionTypeDef; export declare function rebuildScalarType(type: GraphQLScalarType, config: RebuildConfig): import("./definitions/scalarType").NexusScalarTypeDef; export declare function rebuildEnumType(type: GraphQLEnumType, { sourceType, asNexusMethod }: RebuildConfig): import("./definitions/enumType").NexusEnumTypeDef; export declare function rebuildInterfaceType(type: GraphQLInterfaceType, config: RebuildConfig): import("./definitions/interfaceType").NexusInterfaceTypeDef; export declare function rebuildObjectType(type: GraphQLObjectType, config: RebuildConfig): import("./definitions/objectType").NexusObjectTypeDef; export declare function rebuildOutputDefinition(typeName: string, t: ObjectDefinitionBlock | InterfaceDefinitionBlock, fields: GraphQLFieldConfigMap, interfaces: ReadonlyArray, config: RebuildConfig): void; export declare function rebuildInputDefinition(typeName: string, t: InputDefinitionBlock, fields: GraphQLInputFieldConfigMap, config: RebuildConfig): void; export declare function rebuildArgs(typeName: string, fieldName: string, argMap: Maybe, config: RebuildConfig): Maybe;