import { AppSyncAuthConfiguration, TransformerPluginProvider, TransformHostProvider, TransformerLog, NestedStackProvider, SynthParameters, LogConfig } from '@aws-amplify/graphql-transformer-interfaces'; import type { AssetProvider, StackManagerProvider, TransformParameterProvider, TransformParameters, DataSourceStrategiesProvider, RDSLayerMappingProvider, RDSSNSTopicMappingProvider } from '@aws-amplify/graphql-transformer-interfaces'; import { DocumentNode } from 'graphql/language'; import { Construct } from 'constructs'; import { ResolverConfig } from '../config/transformer-config'; import { GraphQLApi } from '../graphql-api'; import { TransformerOutput } from '../transformer-context/output'; import { UserDefinedSlot } from './types'; export interface GraphQLTransformOptions { readonly transformers: TransformerPluginProvider[]; readonly stackMapping?: StackMapping; readonly authConfig?: AppSyncAuthConfiguration; readonly transformParameters?: Partial; readonly host?: TransformHostProvider; readonly userDefinedSlots?: Record; readonly resolverConfig?: ResolverConfig; } export interface TransformOption extends DataSourceStrategiesProvider, RDSLayerMappingProvider, RDSSNSTopicMappingProvider { scope: Construct; nestedStackProvider: NestedStackProvider; parameterProvider?: TransformParameterProvider; assetProvider: AssetProvider; synthParameters: SynthParameters; schema: string; logging?: true | LogConfig; } export type StackMapping = { [resourceId: string]: string; }; export declare class GraphQLTransform { private readonly options; private transformers; private stackMappingOverrides; private readonly authConfig; private readonly resolverConfig?; private readonly userDefinedSlots; private readonly transformParameters; private seenTransformations; private logs; constructor(options: GraphQLTransformOptions); preProcessSchema(schema: DocumentNode): DocumentNode; transform({ assetProvider, dataSourceStrategies, nestedStackProvider, parameterProvider, rdsLayerMapping, rdsSnsTopicMapping, schema, scope, sqlDirectiveDataSourceStrategies, synthParameters, logging, }: TransformOption): void; protected generateGraphQlApi(stackManager: StackManagerProvider, assetProvider: AssetProvider, synthParameters: SynthParameters, output: TransformerOutput, transformParameters: TransformParameters, logging?: true | LogConfig): GraphQLApi; private collectResolvers; private transformObject; private transformField; private transformArgument; private transformInterface; private transformScalar; private transformUnion; private transformEnum; private transformEnumValue; private transformInputObject; private transformInputField; getLogs(): TransformerLog[]; private ensureNoneDataSource; } //# sourceMappingURL=transform.d.ts.map