UNPKG

@pothos/core

Version:

Pothos (formerly GiraphQL) is a plugin based schema builder for creating code-first GraphQL schemas in typescript

68 lines 9.92 kB
import { InputListRef } from '../refs/input-list'; import type { ArgBuilder, FieldRequiredness, InputOrArgRef, InputShapeFromTypeParam, InputType, InputTypeParam, NormalizeArgs, SchemaTypes } from '../types'; export declare class InputFieldBuilder<Types extends SchemaTypes, Kind extends keyof PothosSchemaTypes.InputFieldOptionsByKind> { kind: Kind; builder: PothosSchemaTypes.SchemaBuilder<Types>; /** * Create a Boolean input field * @param {PothosSchemaTypes.InputFieldOptions} [options={}] - Options for this field */ boolean: <Req extends FieldRequiredness<"Boolean">>(...args: NormalizeArgs<[options: Omit<PothosSchemaTypes.InputFieldOptionsByKind<Types, "Boolean", Req>[Kind], "type">], 0>) => InputOrArgRef<Types, FieldRequiredness<"Boolean"> extends Req ? Types["DefaultInputFieldRequiredness"] extends false ? ("Boolean" extends infer T ? T extends "Boolean" ? T extends keyof Types["inputShapes"] ? Types["inputShapes"][T] : T extends import("..").BaseEnum ? import("..").ValuesFromEnum<T> : never : never : never) | null | undefined : "Boolean" extends infer T_1 ? T_1 extends "Boolean" ? T_1 extends keyof Types["inputShapes"] ? Types["inputShapes"][T_1] : T_1 extends import("..").BaseEnum ? import("..").ValuesFromEnum<T_1> : never : never : never : Req extends true ? "Boolean" extends infer T_2 ? T_2 extends "Boolean" ? T_2 extends keyof Types["inputShapes"] ? Types["inputShapes"][T_2] : T_2 extends import("..").BaseEnum ? import("..").ValuesFromEnum<T_2> : never : never : never : ("Boolean" extends infer T_3 ? T_3 extends "Boolean" ? T_3 extends keyof Types["inputShapes"] ? Types["inputShapes"][T_3] : T_3 extends import("..").BaseEnum ? import("..").ValuesFromEnum<T_3> : never : never : never) | null | undefined, Kind>; /** * Create a Float input field * @param {PothosSchemaTypes.InputFieldOptions} [options={}] - Options for this field */ float: <Req extends FieldRequiredness<"Float">>(...args: NormalizeArgs<[options: Omit<PothosSchemaTypes.InputFieldOptionsByKind<Types, "Float", Req>[Kind], "type">], 0>) => InputOrArgRef<Types, FieldRequiredness<"Float"> extends Req ? Types["DefaultInputFieldRequiredness"] extends false ? ("Float" extends infer T ? T extends "Float" ? T extends keyof Types["inputShapes"] ? Types["inputShapes"][T] : T extends import("..").BaseEnum ? import("..").ValuesFromEnum<T> : never : never : never) | null | undefined : "Float" extends infer T_1 ? T_1 extends "Float" ? T_1 extends keyof Types["inputShapes"] ? Types["inputShapes"][T_1] : T_1 extends import("..").BaseEnum ? import("..").ValuesFromEnum<T_1> : never : never : never : Req extends true ? "Float" extends infer T_2 ? T_2 extends "Float" ? T_2 extends keyof Types["inputShapes"] ? Types["inputShapes"][T_2] : T_2 extends import("..").BaseEnum ? import("..").ValuesFromEnum<T_2> : never : never : never : ("Float" extends infer T_3 ? T_3 extends "Float" ? T_3 extends keyof Types["inputShapes"] ? Types["inputShapes"][T_3] : T_3 extends import("..").BaseEnum ? import("..").ValuesFromEnum<T_3> : never : never : never) | null | undefined, Kind>; /** * Create a ID input field * @param {PothosSchemaTypes.InputFieldOptions} [options={}] - Options for this field */ id: <Req extends FieldRequiredness<"ID">>(...args: NormalizeArgs<[options: Omit<PothosSchemaTypes.InputFieldOptionsByKind<Types, "ID", Req>[Kind], "type">], 0>) => InputOrArgRef<Types, FieldRequiredness<"ID"> extends Req ? Types["DefaultInputFieldRequiredness"] extends false ? ("ID" extends infer T ? T extends "ID" ? T extends keyof Types["inputShapes"] ? Types["inputShapes"][T] : T extends import("..").BaseEnum ? import("..").ValuesFromEnum<T> : never : never : never) | null | undefined : "ID" extends infer T_1 ? T_1 extends "ID" ? T_1 extends keyof Types["inputShapes"] ? Types["inputShapes"][T_1] : T_1 extends import("..").BaseEnum ? import("..").ValuesFromEnum<T_1> : never : never : never : Req extends true ? "ID" extends infer T_2 ? T_2 extends "ID" ? T_2 extends keyof Types["inputShapes"] ? Types["inputShapes"][T_2] : T_2 extends import("..").BaseEnum ? import("..").ValuesFromEnum<T_2> : never : never : never : ("ID" extends infer T_3 ? T_3 extends "ID" ? T_3 extends keyof Types["inputShapes"] ? Types["inputShapes"][T_3] : T_3 extends import("..").BaseEnum ? import("..").ValuesFromEnum<T_3> : never : never : never) | null | undefined, Kind>; /** * Create a Int input field * @param {PothosSchemaTypes.InputFieldOptions} [options={}] - Options for this field */ int: <Req extends FieldRequiredness<"Int">>(...args: NormalizeArgs<[options: Omit<PothosSchemaTypes.InputFieldOptionsByKind<Types, "Int", Req>[Kind], "type">], 0>) => InputOrArgRef<Types, FieldRequiredness<"Int"> extends Req ? Types["DefaultInputFieldRequiredness"] extends false ? ("Int" extends infer T ? T extends "Int" ? T extends keyof Types["inputShapes"] ? Types["inputShapes"][T] : T extends import("..").BaseEnum ? import("..").ValuesFromEnum<T> : never : never : never) | null | undefined : "Int" extends infer T_1 ? T_1 extends "Int" ? T_1 extends keyof Types["inputShapes"] ? Types["inputShapes"][T_1] : T_1 extends import("..").BaseEnum ? import("..").ValuesFromEnum<T_1> : never : never : never : Req extends true ? "Int" extends infer T_2 ? T_2 extends "Int" ? T_2 extends keyof Types["inputShapes"] ? Types["inputShapes"][T_2] : T_2 extends import("..").BaseEnum ? import("..").ValuesFromEnum<T_2> : never : never : never : ("Int" extends infer T_3 ? T_3 extends "Int" ? T_3 extends keyof Types["inputShapes"] ? Types["inputShapes"][T_3] : T_3 extends import("..").BaseEnum ? import("..").ValuesFromEnum<T_3> : never : never : never) | null | undefined, Kind>; /** * Create a String input field * @param {PothosSchemaTypes.InputFieldOptions} [options={}] - Options for this field */ string: <Req extends FieldRequiredness<"String">>(...args: NormalizeArgs<[options: Omit<PothosSchemaTypes.InputFieldOptionsByKind<Types, "String", Req>[Kind], "type">], 0>) => InputOrArgRef<Types, FieldRequiredness<"String"> extends Req ? Types["DefaultInputFieldRequiredness"] extends false ? ("String" extends infer T ? T extends "String" ? T extends keyof Types["inputShapes"] ? Types["inputShapes"][T] : T extends import("..").BaseEnum ? import("..").ValuesFromEnum<T> : never : never : never) | null | undefined : "String" extends infer T_1 ? T_1 extends "String" ? T_1 extends keyof Types["inputShapes"] ? Types["inputShapes"][T_1] : T_1 extends import("..").BaseEnum ? import("..").ValuesFromEnum<T_1> : never : never : never : Req extends true ? "String" extends infer T_2 ? T_2 extends "String" ? T_2 extends keyof Types["inputShapes"] ? Types["inputShapes"][T_2] : T_2 extends import("..").BaseEnum ? import("..").ValuesFromEnum<T_2> : never : never : never : ("String" extends infer T_3 ? T_3 extends "String" ? T_3 extends keyof Types["inputShapes"] ? Types["inputShapes"][T_3] : T_3 extends import("..").BaseEnum ? import("..").ValuesFromEnum<T_3> : never : never : never) | null | undefined, Kind>; /** * Create a Boolean list input field * @param {PothosSchemaTypes.InputFieldOptions} [options={}] - Options for this field */ booleanList: <Req extends FieldRequiredness<["Boolean"]>>(...args: NormalizeArgs<[options: Omit<PothosSchemaTypes.InputFieldOptionsByKind<Types, ["Boolean"], Req>[Kind], "type">], 0>) => InputOrArgRef<Types, InputShapeFromTypeParam<Types, ["Boolean"], Req>, Kind>; /** * Create a Float list input field * @param {PothosSchemaTypes.InputFieldOptions} [options={}] - Options for this field */ floatList: <Req extends FieldRequiredness<["Float"]>>(...args: NormalizeArgs<[options: Omit<PothosSchemaTypes.InputFieldOptionsByKind<Types, ["Float"], Req>[Kind], "type">], 0>) => InputOrArgRef<Types, InputShapeFromTypeParam<Types, ["Float"], Req>, Kind>; /** * Create a ID list input field * @param {PothosSchemaTypes.InputFieldOptions} [options={}] - Options for this field */ idList: <Req extends FieldRequiredness<["ID"]>>(...args: NormalizeArgs<[options: Omit<PothosSchemaTypes.InputFieldOptionsByKind<Types, ["ID"], Req>[Kind], "type">], 0>) => InputOrArgRef<Types, InputShapeFromTypeParam<Types, ["ID"], Req>, Kind>; /** * Create a Int list input field * @param {PothosSchemaTypes.InputFieldOptions} [options={}] - Options for this field */ intList: <Req extends FieldRequiredness<["Int"]>>(...args: NormalizeArgs<[options: Omit<PothosSchemaTypes.InputFieldOptionsByKind<Types, ["Int"], Req>[Kind], "type">], 0>) => InputOrArgRef<Types, InputShapeFromTypeParam<Types, ["Int"], Req>, Kind>; /** * Create a String list input field * @param {PothosSchemaTypes.InputFieldOptions} [options={}] - Options for this field */ stringList: <Req extends FieldRequiredness<["String"]>>(...args: NormalizeArgs<[options: Omit<PothosSchemaTypes.InputFieldOptionsByKind<Types, ["String"], Req>[Kind], "type">], 0>) => InputOrArgRef<Types, InputShapeFromTypeParam<Types, ["String"], Req>, Kind>; constructor(builder: PothosSchemaTypes.SchemaBuilder<Types>, kind: Kind); listRef: <T extends InputTypeParam<Types>, Required extends boolean = true>(type: T, options?: { required?: Required; }) => InputListRef<Types, InputShapeFromTypeParam<Types, T, Required>[]>; argBuilder(): ArgBuilder<Types>; /** * Create in input field or argument for the current type * @param {PothosSchemaTypes.InputFieldOptions} [options={}] - Options for this field */ field<Type extends InputType<Types> | [InputType<Types>], Req extends FieldRequiredness<Type>>(options: PothosSchemaTypes.InputFieldOptionsByKind<Types, Type, Req>[Kind]): InputOrArgRef<Types, InputShapeFromTypeParam<Types, Type, Req>, Kind>; private helper; } //# sourceMappingURL=input.d.ts.map