UNPKG

3.17 kBTypeScriptView Raw
1import { DeclarationBlock, AvoidOptionalsConfig } from '@graphql-codegen/visitor-plugin-common';
2import { TypeGraphQLPluginConfig } from './config.js';
3import { FieldDefinitionNode, EnumTypeDefinitionNode, InputValueDefinitionNode, GraphQLSchema, ObjectTypeDefinitionNode, InterfaceTypeDefinitionNode, TypeNode, InputObjectTypeDefinitionNode, TypeDefinitionNode } from 'graphql';
4import { TypeScriptPluginParsedConfig, TsVisitor } from '@graphql-codegen/typescript';
5export declare type DecoratorConfig = {
6 type: string;
7 interface: string;
8 field: string;
9 input: string;
10 arguments: string;
11};
12export interface TypeGraphQLPluginParsedConfig extends TypeScriptPluginParsedConfig {
13 avoidOptionals: AvoidOptionalsConfig;
14 constEnums: boolean;
15 enumsAsTypes: boolean;
16 immutableTypes: boolean;
17 maybeValue: string;
18 decoratorName: DecoratorConfig;
19 decorateTypes?: string[];
20}
21interface Type {
22 type: string;
23 isNullable: boolean;
24 isArray: boolean;
25 isScalar: boolean;
26 isItemsNullable: boolean;
27}
28declare type DecoratorOptions = {
29 [key: string]: string;
30};
31export declare class TypeGraphQLVisitor<TRawConfig extends TypeGraphQLPluginConfig = TypeGraphQLPluginConfig, TParsedConfig extends TypeGraphQLPluginParsedConfig = TypeGraphQLPluginParsedConfig> extends TsVisitor<TRawConfig, TParsedConfig> {
32 typescriptVisitor: TsVisitor<TRawConfig, TParsedConfig>;
33 constructor(schema: GraphQLSchema, pluginConfig: TRawConfig, additionalConfig?: Partial<TParsedConfig>);
34 getDecoratorOptions(node: ObjectTypeDefinitionNode | InterfaceTypeDefinitionNode | FieldDefinitionNode | InputObjectTypeDefinitionNode | InputValueDefinitionNode): DecoratorOptions;
35 getWrapperDefinitions(): string[];
36 getFixDecoratorDefinition(): string;
37 getMaybeWrapper(): string;
38 protected buildArgumentsBlock(node: InterfaceTypeDefinitionNode | ObjectTypeDefinitionNode): string;
39 ObjectTypeDefinition(node: ObjectTypeDefinitionNode, key: number | string, parent: any): string;
40 InputObjectTypeDefinition(node: InputObjectTypeDefinitionNode): string;
41 getArgumentsObjectDeclarationBlock(node: InterfaceTypeDefinitionNode | ObjectTypeDefinitionNode, name: string, field: FieldDefinitionNode): DeclarationBlock;
42 getArgumentsObjectTypeDefinition(node: InterfaceTypeDefinitionNode | ObjectTypeDefinitionNode, name: string, field: FieldDefinitionNode): string;
43 InterfaceTypeDefinition(node: InterfaceTypeDefinitionNode, key: number | string, parent: any): string;
44 buildTypeString(type: Type): string;
45 parseType(rawType: TypeNode | string): Type;
46 fixDecorator(type: Type, typeString: string): string;
47 FieldDefinition(node: FieldDefinitionNode, key?: number | string, parent?: any, path?: any, ancestors?: TypeDefinitionNode[]): string;
48 InputValueDefinition(node: InputValueDefinitionNode, key?: number | string, parent?: any, path?: Array<string | number>, ancestors?: Array<TypeDefinitionNode>): string;
49 EnumTypeDefinition(node: EnumTypeDefinitionNode): string;
50 protected clearOptional(str: string): string;
51 protected hasTypeDecorators(typeName: string): boolean;
52}
53export {};