UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

1,101 lines 113 kB
import * as constructs from 'constructs'; import * as cdk from '../../core'; import * as cfn_parse from '../../core/lib/helpers-internal'; /** * Properties for defining a `CfnApiCache` * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html */ export interface CfnApiCacheProps { /** * Caching behavior. * * - *FULL_REQUEST_CACHING* : All requests are fully cached. * - *PER_RESOLVER_CACHING* : Individual resolvers that you specify are cached. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-apicachingbehavior */ readonly apiCachingBehavior: string; /** * The GraphQL API ID. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-apiid */ readonly apiId: string; /** * TTL in seconds for cache entries. * * Valid values are 1–3,600 seconds. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-ttl */ readonly ttl: number; /** * The cache instance type. Valid values are * * - `SMALL` * - `MEDIUM` * - `LARGE` * - `XLARGE` * - `LARGE_2X` * - `LARGE_4X` * - `LARGE_8X` (not available in all regions) * - `LARGE_12X` * * Historically, instance types were identified by an EC2-style value. As of July 2020, this is deprecated, and the generic identifiers above should be used. * * The following legacy instance types are available, but their use is discouraged: * * - *T2_SMALL* : A t2.small instance type. * - *T2_MEDIUM* : A t2.medium instance type. * - *R4_LARGE* : A r4.large instance type. * - *R4_XLARGE* : A r4.xlarge instance type. * - *R4_2XLARGE* : A r4.2xlarge instance type. * - *R4_4XLARGE* : A r4.4xlarge instance type. * - *R4_8XLARGE* : A r4.8xlarge instance type. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-type */ readonly type: string; /** * At-rest encryption flag for cache. You cannot update this setting after creation. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-atrestencryptionenabled */ readonly atRestEncryptionEnabled?: boolean | cdk.IResolvable; /** * Transit encryption flag when connecting to cache. You cannot update this setting after creation. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-transitencryptionenabled */ readonly transitEncryptionEnabled?: boolean | cdk.IResolvable; } /** * A CloudFormation `AWS::AppSync::ApiCache` * * The `AWS::AppSync::ApiCache` resource represents the input of a `CreateApiCache` operation. * * @cloudformationResource AWS::AppSync::ApiCache * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html */ export declare class CfnApiCache extends cdk.CfnResource implements cdk.IInspectable { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME = "AWS::AppSync::ApiCache"; /** * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnApiCache; /** * Caching behavior. * * - *FULL_REQUEST_CACHING* : All requests are fully cached. * - *PER_RESOLVER_CACHING* : Individual resolvers that you specify are cached. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-apicachingbehavior */ apiCachingBehavior: string; /** * The GraphQL API ID. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-apiid */ apiId: string; /** * TTL in seconds for cache entries. * * Valid values are 1–3,600 seconds. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-ttl */ ttl: number; /** * The cache instance type. Valid values are * * - `SMALL` * - `MEDIUM` * - `LARGE` * - `XLARGE` * - `LARGE_2X` * - `LARGE_4X` * - `LARGE_8X` (not available in all regions) * - `LARGE_12X` * * Historically, instance types were identified by an EC2-style value. As of July 2020, this is deprecated, and the generic identifiers above should be used. * * The following legacy instance types are available, but their use is discouraged: * * - *T2_SMALL* : A t2.small instance type. * - *T2_MEDIUM* : A t2.medium instance type. * - *R4_LARGE* : A r4.large instance type. * - *R4_XLARGE* : A r4.xlarge instance type. * - *R4_2XLARGE* : A r4.2xlarge instance type. * - *R4_4XLARGE* : A r4.4xlarge instance type. * - *R4_8XLARGE* : A r4.8xlarge instance type. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-type */ type: string; /** * At-rest encryption flag for cache. You cannot update this setting after creation. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-atrestencryptionenabled */ atRestEncryptionEnabled: boolean | cdk.IResolvable | undefined; /** * Transit encryption flag when connecting to cache. You cannot update this setting after creation. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apicache.html#cfn-appsync-apicache-transitencryptionenabled */ transitEncryptionEnabled: boolean | cdk.IResolvable | undefined; /** * Create a new `AWS::AppSync::ApiCache`. * * @param scope - scope in which this resource is defined * @param id - scoped id of the resource * @param props - resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnApiCacheProps); /** * Examines the CloudFormation resource and discloses attributes. * * @param inspector - tree inspector to collect and process attributes * */ inspect(inspector: cdk.TreeInspector): void; protected get cfnProperties(): { [key: string]: any; }; protected renderProperties(props: { [key: string]: any; }): { [key: string]: any; }; } /** * Properties for defining a `CfnApiKey` * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html */ export interface CfnApiKeyProps { /** * Unique AWS AppSync GraphQL API ID for this API key. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-apiid */ readonly apiId: string; /** * The API key ID. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-apikeyid */ readonly apiKeyId?: string; /** * Unique description of your API key. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-description */ readonly description?: string; /** * The time after which the API key expires. The date is represented as seconds since the epoch, rounded down to the nearest hour. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-expires */ readonly expires?: number; } /** * A CloudFormation `AWS::AppSync::ApiKey` * * The `AWS::AppSync::ApiKey` resource creates a unique key that you can distribute to clients who are executing GraphQL operations with AWS AppSync that require an API key. * * @cloudformationResource AWS::AppSync::ApiKey * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html */ export declare class CfnApiKey extends cdk.CfnResource implements cdk.IInspectable { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME = "AWS::AppSync::ApiKey"; /** * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnApiKey; /** * The API key. * @cloudformationAttribute ApiKey */ readonly attrApiKey: string; /** * The Amazon Resource Name (ARN) of the API key, such as `arn:aws:appsync:us-east-1:123456789012:apis/graphqlapiid/apikey/apikeya1bzhi` . * @cloudformationAttribute Arn */ readonly attrArn: string; /** * Unique AWS AppSync GraphQL API ID for this API key. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-apiid */ apiId: string; /** * The API key ID. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-apikeyid */ apiKeyId: string | undefined; /** * Unique description of your API key. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-description */ description: string | undefined; /** * The time after which the API key expires. The date is represented as seconds since the epoch, rounded down to the nearest hour. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-apikey.html#cfn-appsync-apikey-expires */ expires: number | undefined; /** * Create a new `AWS::AppSync::ApiKey`. * * @param scope - scope in which this resource is defined * @param id - scoped id of the resource * @param props - resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnApiKeyProps); /** * Examines the CloudFormation resource and discloses attributes. * * @param inspector - tree inspector to collect and process attributes * */ inspect(inspector: cdk.TreeInspector): void; protected get cfnProperties(): { [key: string]: any; }; protected renderProperties(props: { [key: string]: any; }): { [key: string]: any; }; } /** * Properties for defining a `CfnDataSource` * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html */ export interface CfnDataSourceProps { /** * Unique AWS AppSync GraphQL API identifier where this data source will be created. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-apiid */ readonly apiId: string; /** * Friendly name for you to identify your AppSync data source after creation. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-name */ readonly name: string; /** * The type of the data source. * * - *AWS_LAMBDA* : The data source is an AWS Lambda function. * - *AMAZON_DYNAMODB* : The data source is an Amazon DynamoDB table. * - *AMAZON_ELASTICSEARCH* : The data source is an Amazon OpenSearch Service domain. * - *AMAZON_EVENTBRIDGE* : The data source is an Amazon EventBridge event bus. * - *AMAZON_OPENSEARCH_SERVICE* : The data source is an Amazon OpenSearch Service domain. * - *NONE* : There is no data source. This type is used when you wish to invoke a GraphQL operation without connecting to a data source, such as performing data transformation with resolvers or triggering a subscription to be invoked from a mutation. * - *HTTP* : The data source is an HTTP endpoint. * - *RELATIONAL_DATABASE* : The data source is a relational database. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-type */ readonly type: string; /** * The description of the data source. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-description */ readonly description?: string; /** * AWS Region and TableName for an Amazon DynamoDB table in your account. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-dynamodbconfig */ readonly dynamoDbConfig?: CfnDataSource.DynamoDBConfigProperty | cdk.IResolvable; /** * AWS Region and Endpoints for an Amazon OpenSearch Service domain in your account. * * As of September 2021, Amazon Elasticsearch Service is Amazon OpenSearch Service . This property is deprecated. For new data sources, use *OpenSearchServiceConfig* to specify an OpenSearch Service data source. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-elasticsearchconfig */ readonly elasticsearchConfig?: CfnDataSource.ElasticsearchConfigProperty | cdk.IResolvable; /** * An EventBridge configuration that contains a valid ARN of an event bus. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-eventbridgeconfig */ readonly eventBridgeConfig?: CfnDataSource.EventBridgeConfigProperty | cdk.IResolvable; /** * Endpoints for an HTTP data source. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-httpconfig */ readonly httpConfig?: CfnDataSource.HttpConfigProperty | cdk.IResolvable; /** * An ARN of a Lambda function in valid ARN format. This can be the ARN of a Lambda function that exists in the current account or in another account. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-lambdaconfig */ readonly lambdaConfig?: CfnDataSource.LambdaConfigProperty | cdk.IResolvable; /** * AWS Region and Endpoints for an Amazon OpenSearch Service domain in your account. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-opensearchserviceconfig */ readonly openSearchServiceConfig?: CfnDataSource.OpenSearchServiceConfigProperty | cdk.IResolvable; /** * Relational Database configuration of the relational database data source. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-relationaldatabaseconfig */ readonly relationalDatabaseConfig?: CfnDataSource.RelationalDatabaseConfigProperty | cdk.IResolvable; /** * The AWS Identity and Access Management service role ARN for the data source. The system assumes this role when accessing the data source. * * Required if `Type` is specified as `AWS_LAMBDA` , `AMAZON_DYNAMODB` , `AMAZON_ELASTICSEARCH` , `AMAZON_EVENTBRIDGE` , or `AMAZON_OPENSEARCH_SERVICE` . * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-servicerolearn */ readonly serviceRoleArn?: string; } /** * A CloudFormation `AWS::AppSync::DataSource` * * The `AWS::AppSync::DataSource` resource creates data sources for resolvers in AWS AppSync to connect to, such as Amazon DynamoDB , AWS Lambda , and Amazon OpenSearch Service . Resolvers use these data sources to fetch data when clients make GraphQL calls. * * @cloudformationResource AWS::AppSync::DataSource * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html */ export declare class CfnDataSource extends cdk.CfnResource implements cdk.IInspectable { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME = "AWS::AppSync::DataSource"; /** * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnDataSource; /** * The Amazon Resource Name (ARN) of the API key, such as `arn:aws:appsync:us-east-1:123456789012:apis/graphqlapiid/datasources/datasourcename` . * @cloudformationAttribute DataSourceArn */ readonly attrDataSourceArn: string; /** * Friendly name for you to identify your AWS AppSync data source after creation. * @cloudformationAttribute Name */ readonly attrName: string; /** * Unique AWS AppSync GraphQL API identifier where this data source will be created. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-apiid */ apiId: string; /** * Friendly name for you to identify your AppSync data source after creation. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-name */ name: string; /** * The type of the data source. * * - *AWS_LAMBDA* : The data source is an AWS Lambda function. * - *AMAZON_DYNAMODB* : The data source is an Amazon DynamoDB table. * - *AMAZON_ELASTICSEARCH* : The data source is an Amazon OpenSearch Service domain. * - *AMAZON_EVENTBRIDGE* : The data source is an Amazon EventBridge event bus. * - *AMAZON_OPENSEARCH_SERVICE* : The data source is an Amazon OpenSearch Service domain. * - *NONE* : There is no data source. This type is used when you wish to invoke a GraphQL operation without connecting to a data source, such as performing data transformation with resolvers or triggering a subscription to be invoked from a mutation. * - *HTTP* : The data source is an HTTP endpoint. * - *RELATIONAL_DATABASE* : The data source is a relational database. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-type */ type: string; /** * The description of the data source. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-description */ description: string | undefined; /** * AWS Region and TableName for an Amazon DynamoDB table in your account. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-dynamodbconfig */ dynamoDbConfig: CfnDataSource.DynamoDBConfigProperty | cdk.IResolvable | undefined; /** * AWS Region and Endpoints for an Amazon OpenSearch Service domain in your account. * * As of September 2021, Amazon Elasticsearch Service is Amazon OpenSearch Service . This property is deprecated. For new data sources, use *OpenSearchServiceConfig* to specify an OpenSearch Service data source. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-elasticsearchconfig */ elasticsearchConfig: CfnDataSource.ElasticsearchConfigProperty | cdk.IResolvable | undefined; /** * An EventBridge configuration that contains a valid ARN of an event bus. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-eventbridgeconfig */ eventBridgeConfig: CfnDataSource.EventBridgeConfigProperty | cdk.IResolvable | undefined; /** * Endpoints for an HTTP data source. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-httpconfig */ httpConfig: CfnDataSource.HttpConfigProperty | cdk.IResolvable | undefined; /** * An ARN of a Lambda function in valid ARN format. This can be the ARN of a Lambda function that exists in the current account or in another account. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-lambdaconfig */ lambdaConfig: CfnDataSource.LambdaConfigProperty | cdk.IResolvable | undefined; /** * AWS Region and Endpoints for an Amazon OpenSearch Service domain in your account. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-opensearchserviceconfig */ openSearchServiceConfig: CfnDataSource.OpenSearchServiceConfigProperty | cdk.IResolvable | undefined; /** * Relational Database configuration of the relational database data source. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-relationaldatabaseconfig */ relationalDatabaseConfig: CfnDataSource.RelationalDatabaseConfigProperty | cdk.IResolvable | undefined; /** * The AWS Identity and Access Management service role ARN for the data source. The system assumes this role when accessing the data source. * * Required if `Type` is specified as `AWS_LAMBDA` , `AMAZON_DYNAMODB` , `AMAZON_ELASTICSEARCH` , `AMAZON_EVENTBRIDGE` , or `AMAZON_OPENSEARCH_SERVICE` . * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html#cfn-appsync-datasource-servicerolearn */ serviceRoleArn: string | undefined; /** * Create a new `AWS::AppSync::DataSource`. * * @param scope - scope in which this resource is defined * @param id - scoped id of the resource * @param props - resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnDataSourceProps); /** * Examines the CloudFormation resource and discloses attributes. * * @param inspector - tree inspector to collect and process attributes * */ inspect(inspector: cdk.TreeInspector): void; protected get cfnProperties(): { [key: string]: any; }; protected renderProperties(props: { [key: string]: any; }): { [key: string]: any; }; } export declare namespace CfnDataSource { /** * The `AuthorizationConfig` property type specifies the authorization type and configuration for an AWS AppSync http data source. * * `AuthorizationConfig` is a property of the [AWS AppSync DataSource HttpConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-httpconfig.html) property type. * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-authorizationconfig.html */ interface AuthorizationConfigProperty { /** * The authorization type that the HTTP endpoint requires. * * - *AWS_IAM* : The authorization type is Signature Version 4 (SigV4). * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-authorizationconfig.html#cfn-appsync-datasource-authorizationconfig-authorizationtype */ readonly authorizationType: string; /** * The AWS Identity and Access Management settings. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-authorizationconfig.html#cfn-appsync-datasource-authorizationconfig-awsiamconfig */ readonly awsIamConfig?: CfnDataSource.AwsIamConfigProperty | cdk.IResolvable; } } export declare namespace CfnDataSource { /** * Use the `AwsIamConfig` property type to specify `AwsIamConfig` for a AWS AppSync authorizaton. * * `AwsIamConfig` is a property of the [AWS AppSync DataSource AuthorizationConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-httpconfig-authorizationconfig.html) resource. * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-awsiamconfig.html */ interface AwsIamConfigProperty { /** * The signing Region for AWS Identity and Access Management authorization. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-awsiamconfig.html#cfn-appsync-datasource-awsiamconfig-signingregion */ readonly signingRegion?: string; /** * The signing service name for AWS Identity and Access Management authorization. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-awsiamconfig.html#cfn-appsync-datasource-awsiamconfig-signingservicename */ readonly signingServiceName?: string; } } export declare namespace CfnDataSource { /** * Describes a Delta Sync configuration. * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-deltasyncconfig.html */ interface DeltaSyncConfigProperty { /** * The number of minutes that an Item is stored in the data source. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-deltasyncconfig.html#cfn-appsync-datasource-deltasyncconfig-basetablettl */ readonly baseTableTtl: string; /** * The Delta Sync table name. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-deltasyncconfig.html#cfn-appsync-datasource-deltasyncconfig-deltasynctablename */ readonly deltaSyncTableName: string; /** * The number of minutes that a Delta Sync log entry is stored in the Delta Sync table. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-deltasyncconfig.html#cfn-appsync-datasource-deltasyncconfig-deltasynctablettl */ readonly deltaSyncTableTtl: string; } } export declare namespace CfnDataSource { /** * The `DynamoDBConfig` property type specifies the `AwsRegion` and `TableName` for an Amazon DynamoDB table in your account for an AWS AppSync data source. * * `DynamoDBConfig` is a property of the [AWS::AppSync::DataSource](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html) property type. * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html */ interface DynamoDBConfigProperty { /** * The AWS Region. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-awsregion */ readonly awsRegion: string; /** * The `DeltaSyncConfig` for a versioned datasource. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-deltasyncconfig */ readonly deltaSyncConfig?: CfnDataSource.DeltaSyncConfigProperty | cdk.IResolvable; /** * The table name. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-tablename */ readonly tableName: string; /** * Set to `TRUE` to use AWS Identity and Access Management with this data source. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-usecallercredentials */ readonly useCallerCredentials?: boolean | cdk.IResolvable; /** * Set to TRUE to use Conflict Detection and Resolution with this data source. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-dynamodbconfig.html#cfn-appsync-datasource-dynamodbconfig-versioned */ readonly versioned?: boolean | cdk.IResolvable; } } export declare namespace CfnDataSource { /** * The `ElasticsearchConfig` property type specifies the `AwsRegion` and `Endpoints` for an Amazon OpenSearch Service domain in your account for an AWS AppSync data source. * * ElasticsearchConfig is a property of the [AWS::AppSync::DataSource](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html) property type. * * As of September 2021, Amazon Elasticsearch Service is Amazon OpenSearch Service . This property is deprecated. For new data sources, use *OpenSearchServiceConfig* to specify an OpenSearch Service data source. * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-elasticsearchconfig.html */ interface ElasticsearchConfigProperty { /** * The AWS Region. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-elasticsearchconfig.html#cfn-appsync-datasource-elasticsearchconfig-awsregion */ readonly awsRegion: string; /** * The endpoint. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-elasticsearchconfig.html#cfn-appsync-datasource-elasticsearchconfig-endpoint */ readonly endpoint: string; } } export declare namespace CfnDataSource { /** * The data source. This can be an API destination, resource, or AWS service. * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-eventbridgeconfig.html */ interface EventBridgeConfigProperty { /** * The event bus pipeline's ARN. For more information about event buses, see [EventBridge event buses](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-bus.html) . * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-eventbridgeconfig.html#cfn-appsync-datasource-eventbridgeconfig-eventbusarn */ readonly eventBusArn: string; } } export declare namespace CfnDataSource { /** * Use the `HttpConfig` property type to specify `HttpConfig` for an AWS AppSync data source. * * `HttpConfig` is a property of the [AWS::AppSync::DataSource](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html) resource. * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-httpconfig.html */ interface HttpConfigProperty { /** * The authorization configuration. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-httpconfig.html#cfn-appsync-datasource-httpconfig-authorizationconfig */ readonly authorizationConfig?: CfnDataSource.AuthorizationConfigProperty | cdk.IResolvable; /** * The endpoint. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-httpconfig.html#cfn-appsync-datasource-httpconfig-endpoint */ readonly endpoint: string; } } export declare namespace CfnDataSource { /** * The `LambdaConfig` property type specifies the Lambda function ARN for an AWS AppSync data source. * * `LambdaConfig` is a property of the [AWS::AppSync::DataSource](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html) property type. * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-lambdaconfig.html */ interface LambdaConfigProperty { /** * The ARN for the Lambda function. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-lambdaconfig.html#cfn-appsync-datasource-lambdaconfig-lambdafunctionarn */ readonly lambdaFunctionArn: string; } } export declare namespace CfnDataSource { /** * The `OpenSearchServiceConfig` property type specifies the `AwsRegion` and `Endpoints` for an Amazon OpenSearch Service domain in your account for an AWS AppSync data source. * * `OpenSearchServiceConfig` is a property of the [AWS::AppSync::DataSource](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html) property type. * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-opensearchserviceconfig.html */ interface OpenSearchServiceConfigProperty { /** * The AWS Region. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-opensearchserviceconfig.html#cfn-appsync-datasource-opensearchserviceconfig-awsregion */ readonly awsRegion: string; /** * The endpoint. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-opensearchserviceconfig.html#cfn-appsync-datasource-opensearchserviceconfig-endpoint */ readonly endpoint: string; } } export declare namespace CfnDataSource { /** * Use the `RdsHttpEndpointConfig` property type to specify the `RdsHttpEndpoint` for an AWS AppSync relational database. * * `RdsHttpEndpointConfig` is a property of the [AWS AppSync DataSource RelationalDatabaseConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-relationaldatabaseconfig.html) resource. * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html */ interface RdsHttpEndpointConfigProperty { /** * AWS Region for RDS HTTP endpoint. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html#cfn-appsync-datasource-rdshttpendpointconfig-awsregion */ readonly awsRegion: string; /** * The ARN for database credentials stored in AWS Secrets Manager . * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html#cfn-appsync-datasource-rdshttpendpointconfig-awssecretstorearn */ readonly awsSecretStoreArn: string; /** * Logical database name. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html#cfn-appsync-datasource-rdshttpendpointconfig-databasename */ readonly databaseName?: string; /** * Amazon RDS cluster Amazon Resource Name (ARN). * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html#cfn-appsync-datasource-rdshttpendpointconfig-dbclusteridentifier */ readonly dbClusterIdentifier: string; /** * Logical schema name. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-rdshttpendpointconfig.html#cfn-appsync-datasource-rdshttpendpointconfig-schema */ readonly schema?: string; } } export declare namespace CfnDataSource { /** * Use the `RelationalDatabaseConfig` property type to specify `RelationalDatabaseConfig` for an AWS AppSync data source. * * `RelationalDatabaseConfig` is a property of the [AWS::AppSync::DataSource](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.html) property type. * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-relationaldatabaseconfig.html */ interface RelationalDatabaseConfigProperty { /** * Information about the Amazon RDS resource. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-relationaldatabaseconfig.html#cfn-appsync-datasource-relationaldatabaseconfig-rdshttpendpointconfig */ readonly rdsHttpEndpointConfig?: CfnDataSource.RdsHttpEndpointConfigProperty | cdk.IResolvable; /** * The type of relational data source. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-datasource-relationaldatabaseconfig.html#cfn-appsync-datasource-relationaldatabaseconfig-relationaldatabasesourcetype */ readonly relationalDatabaseSourceType: string; } } /** * Properties for defining a `CfnDomainName` * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html */ export interface CfnDomainNameProps { /** * The Amazon Resource Name (ARN) of the certificate. This will be an AWS Certificate Manager certificate. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html#cfn-appsync-domainname-certificatearn */ readonly certificateArn: string; /** * The domain name. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html#cfn-appsync-domainname-domainname */ readonly domainName: string; /** * The decription for your domain name. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html#cfn-appsync-domainname-description */ readonly description?: string; } /** * A CloudFormation `AWS::AppSync::DomainName` * * The `AWS::AppSync::DomainName` resource creates a `DomainNameConfig` object to configure a custom domain. * * @cloudformationResource AWS::AppSync::DomainName * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html */ export declare class CfnDomainName extends cdk.CfnResource implements cdk.IInspectable { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME = "AWS::AppSync::DomainName"; /** * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnDomainName; /** * The domain name provided by AWS AppSync . * @cloudformationAttribute AppSyncDomainName */ readonly attrAppSyncDomainName: string; /** * The domain name. * @cloudformationAttribute DomainName */ readonly attrDomainName: string; /** * The ID of your Amazon Route 53 hosted zone. * @cloudformationAttribute HostedZoneId */ readonly attrHostedZoneId: string; /** * The Amazon Resource Name (ARN) of the certificate. This will be an AWS Certificate Manager certificate. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html#cfn-appsync-domainname-certificatearn */ certificateArn: string; /** * The domain name. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html#cfn-appsync-domainname-domainname */ domainName: string; /** * The decription for your domain name. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainname.html#cfn-appsync-domainname-description */ description: string | undefined; /** * Create a new `AWS::AppSync::DomainName`. * * @param scope - scope in which this resource is defined * @param id - scoped id of the resource * @param props - resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnDomainNameProps); /** * Examines the CloudFormation resource and discloses attributes. * * @param inspector - tree inspector to collect and process attributes * */ inspect(inspector: cdk.TreeInspector): void; protected get cfnProperties(): { [key: string]: any; }; protected renderProperties(props: { [key: string]: any; }): { [key: string]: any; }; } /** * Properties for defining a `CfnDomainNameApiAssociation` * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainnameapiassociation.html */ export interface CfnDomainNameApiAssociationProps { /** * The API ID. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainnameapiassociation.html#cfn-appsync-domainnameapiassociation-apiid */ readonly apiId: string; /** * The domain name. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainnameapiassociation.html#cfn-appsync-domainnameapiassociation-domainname */ readonly domainName: string; } /** * A CloudFormation `AWS::AppSync::DomainNameApiAssociation` * * The `AWS::AppSync::DomainNameApiAssociation` resource represents the mapping of your custom domain name to the assigned API URL. * * @cloudformationResource AWS::AppSync::DomainNameApiAssociation * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainnameapiassociation.html */ export declare class CfnDomainNameApiAssociation extends cdk.CfnResource implements cdk.IInspectable { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME = "AWS::AppSync::DomainNameApiAssociation"; /** * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnDomainNameApiAssociation; /** * * @cloudformationAttribute ApiAssociationIdentifier */ readonly attrApiAssociationIdentifier: string; /** * The API ID. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainnameapiassociation.html#cfn-appsync-domainnameapiassociation-apiid */ apiId: string; /** * The domain name. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-domainnameapiassociation.html#cfn-appsync-domainnameapiassociation-domainname */ domainName: string; /** * Create a new `AWS::AppSync::DomainNameApiAssociation`. * * @param scope - scope in which this resource is defined * @param id - scoped id of the resource * @param props - resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnDomainNameApiAssociationProps); /** * Examines the CloudFormation resource and discloses attributes. * * @param inspector - tree inspector to collect and process attributes * */ inspect(inspector: cdk.TreeInspector): void; protected get cfnProperties(): { [key: string]: any; }; protected renderProperties(props: { [key: string]: any; }): { [key: string]: any; }; } /** * Properties for defining a `CfnFunctionConfiguration` * * @struct * @stability external * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html */ export interface CfnFunctionConfigurationProps { /** * The AWS AppSync GraphQL API that you want to attach using this function. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-apiid */ readonly apiId: string; /** * The name of data source this function will attach. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-datasourcename */ readonly dataSourceName: string; /** * The name of the function. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-name */ readonly name: string; /** * The `resolver` code that contains the request and response functions. When code is used, the `runtime` is required. The runtime value must be `APPSYNC_JS` . * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-code */ readonly code?: string; /** * The Amazon S3 endpoint. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-codes3location */ readonly codeS3Location?: string; /** * The `Function` description. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-description */ readonly description?: string; /** * The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-functionversion */ readonly functionVersion?: string; /** * The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a `BatchInvoke` operation. * * @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-functionconfiguration.html#cfn-appsync-functionconfiguration-maxbatchsi