UNPKG

@graphql-codegen/java-apollo-android

Version:

GraphQL Code Generator plugin for generating Java classes for Apollo-Android

49 lines (48 loc) 1.84 kB
import { FragmentDefinitionNode, GraphQLNamedType, GraphQLOutputType, GraphQLSchema, OperationDefinitionNode, SelectionNode } from 'graphql'; import { JavaDeclarationBlock } from '@graphql-codegen/java-common'; import { LoadedFragment } from '@graphql-codegen/visitor-plugin-common'; import { BaseJavaVisitor } from './base-java-visitor.js'; import { JavaApolloAndroidPluginConfig } from './plugin.js'; import { VisitorConfig } from './visitor-config.js'; export interface ChildField { type: GraphQLNamedType; rawType: GraphQLOutputType; isNonNull: boolean; isList: boolean; annotation: string; className: string; fieldName: string; isObject: boolean; isFragment: boolean; } export interface TransformSelectionSetOptions { nonStaticClass?: boolean; additionalFragments?: LoadedFragment[]; additionalFields?: ChildField[]; className: string; schemaType: GraphQLNamedType; implements?: string[]; selectionSet: ReadonlyArray<SelectionNode>; result: { [typeName: string]: JavaDeclarationBlock; }; } export declare class OperationVisitor extends BaseJavaVisitor<VisitorConfig> { private _availableFragments; private visitingFragment; constructor(_schema: GraphQLSchema, rawConfig: JavaApolloAndroidPluginConfig, _availableFragments: LoadedFragment[]); private printDocument; getPackage(): string; private addCtor; private getRootType; private createUniqueClassName; private transformSelectionSet; private getReaderFn; private buildMapperClass; private _resolveResponseFieldMethodForBaseType; FragmentDefinition(node: FragmentDefinitionNode): string; OperationDefinition(node: OperationDefinitionNode): string; private createVariablesClass; private _getWriterMethodByType; private createBuilderClass; }