aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
1,101 lines • 113 kB
TypeScript
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