@graphql-codegen/typescript-apollo-angular
Version:
GraphQL Code Generator plugin for generating ready-to-use Angular Components based on GraphQL operations
43 lines (42 loc) • 1.9 kB
text/typescript
import { GraphQLSchema, OperationDefinitionNode } from 'graphql';
import { Types } from '@graphql-codegen/plugin-helpers';
import { ClientSideBasePluginConfig, ClientSideBaseVisitor, LoadedFragment } from '@graphql-codegen/visitor-plugin-common';
import { ApolloAngularRawPluginConfig } from './config.cjs';
export interface ApolloAngularPluginConfig extends ClientSideBasePluginConfig {
apolloAngularVersion: number;
ngModule?: string;
namedClient?: string;
serviceName?: string;
serviceProvidedInRoot?: boolean;
serviceProvidedIn?: string;
sdkClass?: boolean;
querySuffix?: string;
mutationSuffix?: string;
subscriptionSuffix?: string;
apolloAngularPackage: string;
additionalDI?: string[];
addExplicitOverride: boolean;
}
export declare class ApolloAngularVisitor extends ClientSideBaseVisitor<ApolloAngularRawPluginConfig, ApolloAngularPluginConfig> {
private _allOperations;
private _externalImportPrefix;
private _operationsToInclude;
private dependencyInjections;
private dependencyInjectionArgs;
constructor(schema: GraphQLSchema, fragments: LoadedFragment[], _allOperations: OperationDefinitionNode[], rawConfig: ApolloAngularRawPluginConfig, documents?: Types.DocumentFile[]);
getImports(): string[];
private _extractNgModule;
private _parseNgModule;
private _operationHasDirective;
private _removeDirective;
private _removeDirectives;
private _extractDirective;
protected _prepareDocument(documentStr: string): string;
private _namedClient;
private _extractNamedClient;
private _providedIn;
private _getDocumentNodeVariable;
private _operationSuffix;
protected buildOperation(node: OperationDefinitionNode, documentVariableName: string, operationType: string, operationResultType: string, operationVariablesTypes: string): string;
get sdkClass(): string;
}