import { NexusArgDef, NexusAsArgConfig } from './args'; import { InputDefinitionBlock } from './definitionBlocks'; import { NonNullConfig } from './_types'; export interface NexusInputObjectTypeConfig { /** * Name of the input object type */ name: TypeName; /** * Definition block for the input type */ definition(t: InputDefinitionBlock): void; /** * The description to annotate the GraphQL SDL */ description?: string | null; /** * Configures the nullability for the type, check the * documentation's "Getting Started" section to learn * more about GraphQL Nexus's assumptions and configuration * on nullability. */ nonNullDefaults?: NonNullConfig; } export declare class NexusInputObjectTypeDef { readonly name: TypeName; protected config: NexusInputObjectTypeConfig; constructor(name: TypeName, config: NexusInputObjectTypeConfig); get value(): NexusInputObjectTypeConfig; asArg(cfg?: NexusAsArgConfig): NexusArgDef; } export declare function inputObjectType(config: NexusInputObjectTypeConfig): NexusInputObjectTypeDef;