@aws-amplify/graphql-transformer-interfaces 3.3.1 → 3.3.3-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  import { DocumentNode } from 'graphql';
2
2
  import { AppSyncAuthConfiguration, GraphQLAPIProvider } from '../graphql-api-provider';
3
- import { CustomSqlDataSourceStrategy, ProvisionedConcurrencyConfig, RDSLayerMapping, VpcConfig } from '../model-datasource';
4
- import { TransformerDataSourceManagerProvider, DataSourceType } from './transformer-datasource-provider';
3
+ import { DataSourceStrategiesProvider, RDSLayerMappingProvider } from '../model-datasource';
4
+ import { TransformerDataSourceManagerProvider } from './transformer-datasource-provider';
5
5
  import { TransformerProviderRegistry } from './transformer-provider-registry';
6
6
  import { TransformerContextOutputProvider } from './transformer-context-output-provider';
7
7
  import { StackManagerProvider } from './stack-manager-provider';
@@ -11,23 +11,20 @@ import { TransformerResolversManagerProvider } from './transformer-resolver-prov
11
11
  import { SynthParameters } from './synth-parameters';
12
12
 
13
13
  export interface TransformerContextMetadataProvider {
14
- set<T>(key: string, value: T): void;
15
- get<T>(key: string): T | undefined;
16
- has(key: string): boolean;
14
+ set: <T>(key: string, value: T) => void;
15
+ get: <T>(key: string) => T | undefined;
16
+ has: (key: string) => boolean;
17
17
  }
18
18
 
19
19
  export type TransformerSecrets = { [key: string]: any };
20
20
 
21
- export interface TransformerContextProvider {
21
+ export interface TransformerContextProvider extends DataSourceStrategiesProvider, RDSLayerMappingProvider {
22
22
  metadata: TransformerContextMetadataProvider;
23
23
  resolvers: TransformerResolversManagerProvider;
24
24
  dataSources: TransformerDataSourceManagerProvider;
25
25
  providerRegistry: TransformerProviderRegistry;
26
26
 
27
27
  inputDocument: DocumentNode;
28
- modelToDatasourceMap: Map<string, DataSourceType>;
29
- customSqlDataSourceStrategies?: CustomSqlDataSourceStrategy[];
30
- datasourceSecretParameterLocations: Map<string, TransformerSecrets>;
31
28
  output: TransformerContextOutputProvider;
32
29
  stackManager: StackManagerProvider;
33
30
  api: GraphQLAPIProvider;
@@ -35,20 +32,16 @@ export interface TransformerContextProvider {
35
32
  authConfig: AppSyncAuthConfiguration;
36
33
  transformParameters: TransformParameters;
37
34
  synthParameters: SynthParameters;
38
- customQueries: Map<string, string>;
39
35
 
40
- isProjectUsingDataStore(): boolean;
41
- getResolverConfig<ResolverConfig>(): ResolverConfig | undefined;
42
- readonly sqlLambdaVpcConfig?: VpcConfig;
43
- readonly rdsLayerMapping?: RDSLayerMapping;
44
- readonly sqlLambdaProvisionedConcurrencyConfig?: ProvisionedConcurrencyConfig;
36
+ isProjectUsingDataStore: () => boolean;
37
+ getResolverConfig: <ResolverConfig>() => ResolverConfig | undefined;
45
38
  }
46
39
 
47
40
  export type TransformerBeforeStepContextProvider = Pick<
48
41
  TransformerContextProvider,
49
42
  | 'inputDocument'
50
- | 'modelToDatasourceMap'
51
- | 'customSqlDataSourceStrategies'
43
+ | 'dataSourceStrategies'
44
+ | 'sqlDirectiveDataSourceStrategies'
52
45
  | 'transformParameters'
53
46
  | 'isProjectUsingDataStore'
54
47
  | 'getResolverConfig'
@@ -60,8 +53,8 @@ export type TransformerBeforeStepContextProvider = Pick<
60
53
  export type TransformerSchemaVisitStepContextProvider = Pick<
61
54
  TransformerContextProvider,
62
55
  | 'inputDocument'
63
- | 'modelToDatasourceMap'
64
- | 'customSqlDataSourceStrategies'
56
+ | 'dataSourceStrategies'
57
+ | 'sqlDirectiveDataSourceStrategies'
65
58
  | 'output'
66
59
  | 'providerRegistry'
67
60
  | 'transformParameters'
@@ -75,8 +68,8 @@ export type TransformerSchemaVisitStepContextProvider = Pick<
75
68
  export type TransformerValidationStepContextProvider = Pick<
76
69
  TransformerContextProvider,
77
70
  | 'inputDocument'
78
- | 'modelToDatasourceMap'
79
- | 'customSqlDataSourceStrategies'
71
+ | 'dataSourceStrategies'
72
+ | 'sqlDirectiveDataSourceStrategies'
80
73
  | 'output'
81
74
  | 'providerRegistry'
82
75
  | 'dataSources'
@@ -26,46 +26,3 @@ export interface TransformerDataSourceManagerProvider {
26
26
  }
27
27
 
28
28
  export interface DataSourceProvider extends BackedDataSource {}
29
-
30
- /**
31
- * Supported transformable database types. TODO: Remove this when we normalize database type handling throughout
32
- */
33
- export type DBType = 'DDB' | SQLDBType;
34
-
35
- /**
36
- * Supported transformable SQL database types. TODO: Remove this when we normalize database type handling throughout
37
- */
38
- export type SQLDBType = 'MySQL' | 'Postgres';
39
-
40
- // TODO: add strategy for the RDS. TODO: Move this to amplify-graphql-api-construct
41
- export type DataSourceProvisionStrategy = DynamoDBProvisionStrategy | SQLLambdaModelProvisionStrategy;
42
-
43
- /**
44
- * Provisioning configuration for a DynamoDB datasource. TODO: Remove this type in favor of strategy definitions in
45
- * amplify-graphql-api-construct
46
- */
47
- export const enum DynamoDBProvisionStrategy {
48
- /**
49
- * Use default CloudFormation resource of `AWS::DynamoDB::Table`
50
- */
51
- DEFAULT = 'DEFAULT',
52
- /**
53
- * Use custom resource type `Custom::AmplifyDynamoDBTable`
54
- */
55
- AMPLIFY_TABLE = 'AMPLIFY_TABLE',
56
- }
57
-
58
- // TODO: Remove this type in favor of fully-specified SQLLambdaModelDataSourceStrategy from amplify-graphql-api-construct
59
- export const enum SQLLambdaModelProvisionStrategy {
60
- /**
61
- * A strategy that creates a Lambda to connect to a pre-existing SQL table to resolve model data.
62
- */
63
- DEFAULT = 'DEFAULT',
64
- }
65
-
66
- // TODO: Replace usages of this type with ModelDataSourceStrategy
67
- export interface DataSourceType {
68
- dbType: DBType;
69
- provisionDB: boolean;
70
- provisionStrategy: DataSourceProvisionStrategy;
71
- }