import { type GraphQLScalarSerializer, type GraphQLScalarType, GraphQLSchema } from 'graphql'; import { ConfigStore } from './config-store.js'; import { InputObjectRef } from './refs/input-object.js'; import { MutationRef } from './refs/mutation.js'; import { QueryRef } from './refs/query.js'; import { SubscriptionRef } from './refs/subscription.js'; import type { AbstractReturnShape, AddVersionedDefaultsToBuilderOptions, BaseEnum, EnumParam, EnumTypeOptions, EnumValues, InputFieldMap, InputFieldsFromShape, InputShape, InputShapeFromFields, InterfaceFieldsShape, InterfaceFieldThunk, InterfaceParam, InterfaceTypeOptions, MutationFieldsShape, MutationFieldThunk, NormalizeArgs, NormalizeSchemeBuilderOptions, ObjectFieldsShape, ObjectFieldThunk, ObjectParam, ObjectTypeOptions, OneOfInputShapeFromFields, OutputShape, ParentShape, PluginConstructorMap, QueryFieldsShape, QueryFieldThunk, RecursivelyNormalizeNullableFields, ScalarName, SchemaTypes, ShapeFromEnumValues, SubscriptionFieldsShape, SubscriptionFieldThunk, ValuesFromEnum } from './types/index.js'; export declare class SchemaBuilder { $inferSchemaTypes: Types; private queryRef; private mutationRef; private subscriptionRef; static plugins: Partial>; static optionNormalizers: Map) => Partial>; v4?: undefined; }>; static allowPluginReRegistration: boolean; configStore: ConfigStore; options: PothosSchemaTypes.SchemaBuilderOptions; defaultFieldNullability: boolean; defaultInputFieldRequiredness: boolean; constructor(options: PothosSchemaTypes.SchemaBuilderOptions); static registerPlugin>(name: T, plugin: PluginConstructorMap[T], normalizeOptions?: { v3?: (options: AddVersionedDefaultsToBuilderOptions) => Partial>; }): void; objectType[], Param extends ObjectParam>(param: Param, options: ObjectTypeOptions, Interfaces>, fields?: ObjectFieldsShape>): PothosSchemaTypes.ObjectRef, ParentShape>; objectFields>(param: Type, fields: ObjectFieldsShape>): void; objectField>(param: Type, fieldName: string, field: ObjectFieldThunk>): void; queryType(...args: NormalizeArgs<[ options: PothosSchemaTypes.QueryTypeOptions, fields?: QueryFieldsShape ], 0>): QueryRef; queryFields(fields: QueryFieldsShape): void; queryField(name: string, field: QueryFieldThunk): void; mutationType(...args: NormalizeArgs<[ options: PothosSchemaTypes.MutationTypeOptions, fields?: MutationFieldsShape ], 0>): MutationRef; mutationFields(fields: MutationFieldsShape): void; mutationField(name: string, field: MutationFieldThunk): void; subscriptionType(...args: NormalizeArgs<[ options: PothosSchemaTypes.SubscriptionTypeOptions, fields?: SubscriptionFieldsShape ], 0>): SubscriptionRef; subscriptionFields(fields: SubscriptionFieldsShape): void; subscriptionField(name: string, field: SubscriptionFieldThunk): void; args(fields: (t: PothosSchemaTypes.InputFieldBuilder) => Shape): Shape; interfaceType, const Interfaces extends InterfaceParam[], ResolveType>(param: Param, options: InterfaceTypeOptions, Interfaces, ResolveType>, fields?: InterfaceFieldsShape>): PothosSchemaTypes.InterfaceRef, ParentShape>; interfaceFields>(ref: Type, fields: InterfaceFieldsShape>): void; interfaceField>(ref: Type, fieldName: string, field: InterfaceFieldThunk>): void; unionType, ResolveType>(name: string, options: PothosSchemaTypes.UnionTypeOptions): PothosSchemaTypes.UnionRef, ParentShape>; enumType>(param: Param, options: EnumTypeOptions): PothosSchemaTypes.EnumRef : ShapeFromEnumValues>; scalarType>(name: Name, options: PothosSchemaTypes.ScalarTypeOptions, ParentShape>): PothosSchemaTypes.ScalarRef, ParentShape>; addScalarType>(name: Name, scalar: GraphQLScalarType, ...args: NormalizeArgs<[ options: Omit, OutputShape>, "serialize"> & { serialize?: GraphQLScalarSerializer>; } ]>): PothosSchemaTypes.ScalarRef, ParentShape, InputShape>; inputType | string, Fields extends Param extends PothosSchemaTypes.InputObjectRef ? InputFieldsFromShape & object, "InputObject"> : Param extends keyof Types["Inputs"] ? InputFieldsFromShape & object, "InputObject"> : InputFieldMap, IsOneOf extends boolean = boolean>(param: Param, options: PothosSchemaTypes.InputObjectTypeOptions & { isOneOf?: IsOneOf; }): PothosSchemaTypes.InputObjectRef : InputShapeFromFields>; inputRef(name: string): PothosSchemaTypes.ImplementableInputObjectRef, Normalize extends false ? T : RecursivelyNormalizeNullableFields>; objectRef(name: string): PothosSchemaTypes.ImplementableObjectRef; interfaceRef(name: string): PothosSchemaTypes.ImplementableInterfaceRef; toSchema(...args: NormalizeArgs<[ options?: PothosSchemaTypes.BuildSchemaOptions ]>): GraphQLSchema; } //# sourceMappingURL=builder.d.ts.map