import { Arg, ClassType, StringKeyOf, InstanceOf, InputType, InputFieldType, Removable } from "../../.."; import { GQLBasicType } from "./GQLBasicType"; export declare class Args extends GQLBasicType { protected _classType?: T; private _args; get classType(): T; get args(): Arg>, any>[]; protected constructor(classTypeOrInputType?: T | InputType); /** * Create a new Args type */ static create(classType: T): Args; static create(name: StringKeyOf, type: InputFieldType): Args>; static create(inputType: InputType): Args>; static create(): Args>; /** * Set the arguments list of the type * @param args The arguments list */ setArgs(...args: Arg>>[]): this; /** * Add some arguments in the type * @param name The argument name * @param type The argument type */ addArgs(...args: Arg>>[]): this; /** * Remove some arguments in the type * @param args The argument IDs */ removeArgs(...args: Removable>>>): this; /** * Add a suffix to the name ("Args" by default) * @param suffix The suffix to add @default "Args" */ suffix(suffix?: string): void; build(): any; /** * Copy the args type */ copy(): Args; }