@aws-amplify/graphql-transformer-interfaces
Version:
Amplify GraphQL transformer interface definitions
41 lines • 3.17 kB
TypeScript
import { DocumentNode } from 'graphql';
import { AppSyncAuthConfiguration, GraphQLAPIProvider } from '../graphql-api-provider';
import { DataSourceStrategiesProvider, RDSLayerMappingProvider, RDSSNSTopicMappingProvider } from '../model-datasource';
import { TransformerDataSourceManagerProvider } from './transformer-datasource-provider';
import { TransformerProviderRegistry } from './transformer-provider-registry';
import { TransformerContextOutputProvider } from './transformer-context-output-provider';
import { StackManagerProvider } from './stack-manager-provider';
import { TransformerResourceHelperProvider } from './resource-resource-provider';
import { TransformParameters } from './transform-parameters';
import { TransformerResolversManagerProvider } from './transformer-resolver-provider';
import { SynthParameters } from './synth-parameters';
export interface TransformerContextMetadataProvider {
set: <T>(key: string, value: T) => void;
get: <T>(key: string) => T | undefined;
has: (key: string) => boolean;
}
export type TransformerSecrets = {
[key: string]: any;
};
export interface TransformerContextProvider extends DataSourceStrategiesProvider, RDSLayerMappingProvider, RDSSNSTopicMappingProvider {
metadata: TransformerContextMetadataProvider;
resolvers: TransformerResolversManagerProvider;
dataSources: TransformerDataSourceManagerProvider;
providerRegistry: TransformerProviderRegistry;
inputDocument: DocumentNode;
output: TransformerContextOutputProvider;
stackManager: StackManagerProvider;
api: GraphQLAPIProvider;
resourceHelper: TransformerResourceHelperProvider;
authConfig: AppSyncAuthConfiguration;
transformParameters: TransformParameters;
synthParameters: SynthParameters;
isProjectUsingDataStore: () => boolean;
getResolverConfig: <ResolverConfig>() => ResolverConfig | undefined;
}
export type TransformerBeforeStepContextProvider = Pick<TransformerContextProvider, 'inputDocument' | 'dataSourceStrategies' | 'sqlDirectiveDataSourceStrategies' | 'transformParameters' | 'isProjectUsingDataStore' | 'getResolverConfig' | 'authConfig' | 'stackManager' | 'synthParameters'>;
export type TransformerSchemaVisitStepContextProvider = Pick<TransformerContextProvider, 'inputDocument' | 'dataSourceStrategies' | 'sqlDirectiveDataSourceStrategies' | 'output' | 'providerRegistry' | 'transformParameters' | 'isProjectUsingDataStore' | 'getResolverConfig' | 'metadata' | 'authConfig' | 'resourceHelper' | 'synthParameters'>;
export type TransformerValidationStepContextProvider = Pick<TransformerContextProvider, 'inputDocument' | 'dataSourceStrategies' | 'sqlDirectiveDataSourceStrategies' | 'output' | 'providerRegistry' | 'dataSources' | 'transformParameters' | 'isProjectUsingDataStore' | 'getResolverConfig' | 'metadata' | 'authConfig' | 'resourceHelper' | 'resolvers' | 'stackManager' | 'synthParameters'>;
export type TransformerPrepareStepContextProvider = TransformerValidationStepContextProvider;
export type TransformerTransformSchemaStepContextProvider = TransformerValidationStepContextProvider;
//# sourceMappingURL=transformer-context-provider.d.ts.map