aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
306 lines (305 loc) • 15.4 kB
TypeScript
import * as cdk from "../../core";
import * as constructs from "constructs";
import * as cfn_parse from "../../core/lib/helpers-internal";
/**
* The `AWS::Chatbot::MicrosoftTeamsChannelConfiguration` resource configures a Microsoft Teams channel to allow users to use AWS Chatbot with AWS CloudFormation templates.
*
* This resource requires some setup to be done in the AWS Chatbot console. To provide the required Microsoft Teams team and tenant IDs, you must perform the initial authorization flow with Microsoft Teams in the AWS Chatbot console, then copy and paste the IDs from the console. For more details, see [Configure a Microsoft Teams client](https://docs.aws.amazon.com/chatbot/latest/adminguide/teams-setup.html#teams-client-setup) in the *AWS Chatbot Administrator Guide* .
*
* @cloudformationResource AWS::Chatbot::MicrosoftTeamsChannelConfiguration
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html
*/
export declare class CfnMicrosoftTeamsChannelConfiguration extends cdk.CfnResource implements cdk.IInspectable {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME: string;
/**
* Build a CfnMicrosoftTeamsChannelConfiguration from CloudFormation properties
*
* 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): CfnMicrosoftTeamsChannelConfiguration;
/**
* Amazon Resource Name (ARN) of the configuration
*
* @cloudformationAttribute Arn
*/
readonly attrArn: string;
/**
* The name of the configuration.
*/
configurationName: string;
/**
* The list of IAM policy ARNs that are applied as channel guardrails.
*/
guardrailPolicies?: Array<string>;
/**
* The ARN of the IAM role that defines the permissions for AWS Chatbot .
*/
iamRoleArn: string;
/**
* Specifies the logging level for this configuration. This property affects the log entries pushed to Amazon CloudWatch Logs.
*/
loggingLevel?: string;
/**
* The ARNs of the SNS topics that deliver notifications to AWS Chatbot .
*/
snsTopicArns?: Array<string>;
/**
* The ID of the Microsoft Team authorized with AWS Chatbot .
*/
teamId: string;
/**
* The id of the Microsoft Teams channel.
*/
teamsChannelId: string;
/**
* The ID of the Microsoft Teams tenant.
*/
teamsTenantId: string;
/**
* Enables use of a user role requirement in your chat configuration.
*/
userRoleRequired?: boolean | cdk.IResolvable;
/**
* @param scope Scope in which this resource is defined
* @param id Construct identifier for this resource (unique in its scope)
* @param props Resource properties
*/
constructor(scope: constructs.Construct, id: string, props: CfnMicrosoftTeamsChannelConfigurationProps);
protected get cfnProperties(): Record<string, any>;
/**
* Examines the CloudFormation resource and discloses attributes
*
* @param inspector tree inspector to collect and process attributes
*/
inspect(inspector: cdk.TreeInspector): void;
protected renderProperties(props: Record<string, any>): Record<string, any>;
}
/**
* Properties for defining a `CfnMicrosoftTeamsChannelConfiguration`
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html
*/
export interface CfnMicrosoftTeamsChannelConfigurationProps {
/**
* The name of the configuration.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-configurationname
*/
readonly configurationName: string;
/**
* The list of IAM policy ARNs that are applied as channel guardrails.
*
* The AWS managed 'AdministratorAccess' policy is applied as a default if this is not set.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-guardrailpolicies
*/
readonly guardrailPolicies?: Array<string>;
/**
* The ARN of the IAM role that defines the permissions for AWS Chatbot .
*
* This is a user-defined role that AWS Chatbot will assume. This is not the service-linked role. For more information, see [IAM Policies for AWS Chatbot](https://docs.aws.amazon.com/chatbot/latest/adminguide/chatbot-iam-policies.html) .
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-iamrolearn
*/
readonly iamRoleArn: string;
/**
* Specifies the logging level for this configuration. This property affects the log entries pushed to Amazon CloudWatch Logs.
*
* Logging levels include `ERROR` , `INFO` , or `NONE` .
*
* @default - "NONE"
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-logginglevel
*/
readonly loggingLevel?: string;
/**
* The ARNs of the SNS topics that deliver notifications to AWS Chatbot .
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-snstopicarns
*/
readonly snsTopicArns?: Array<string>;
/**
* The ID of the Microsoft Team authorized with AWS Chatbot .
*
* To get the team ID, you must perform the initial authorization flow with Microsoft Teams in the AWS Chatbot console. Then you can copy and paste the team ID from the console. For more details, see steps 1-4 in [Get started with Microsoft Teams](https://docs.aws.amazon.com/chatbot/latest/adminguide/teams-setup.html#teams-client-setup) in the *AWS Chatbot Administrator Guide* .
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-teamid
*/
readonly teamId: string;
/**
* The id of the Microsoft Teams channel.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-teamschannelid
*/
readonly teamsChannelId: string;
/**
* The ID of the Microsoft Teams tenant.
*
* To get the tenant ID, you must perform the initial authorization flow with Microsoft Teams in the AWS Chatbot console. Then you can copy and paste the tenant ID from the console. For more details, see steps 1-4 in [Get started with Microsoft Teams](https://docs.aws.amazon.com/chatbot/latest/adminguide/teams-setup.html#teams-client-setup) in the *AWS Chatbot Administrator Guide* .
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-teamstenantid
*/
readonly teamsTenantId: string;
/**
* Enables use of a user role requirement in your chat configuration.
*
* @default - false
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-microsoftteamschannelconfiguration.html#cfn-chatbot-microsoftteamschannelconfiguration-userrolerequired
*/
readonly userRoleRequired?: boolean | cdk.IResolvable;
}
/**
* The `AWS::Chatbot::SlackChannelConfiguration` resource configures a Slack channel to allow users to use AWS Chatbot with AWS CloudFormation templates.
*
* This resource requires some setup to be done in the AWS Chatbot console. To provide the required Slack workspace ID, you must perform the initial authorization flow with Slack in the AWS Chatbot console, then copy and paste the workspace ID from the console. For more details, see [Configure a Slack client](https://docs.aws.amazon.com/chatbot/latest/adminguide/slack-setup.html#slack-client-setup) in the *AWS Chatbot User Guide* .
*
* @cloudformationResource AWS::Chatbot::SlackChannelConfiguration
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html
*/
export declare class CfnSlackChannelConfiguration extends cdk.CfnResource implements cdk.IInspectable {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME: string;
/**
* Build a CfnSlackChannelConfiguration from CloudFormation properties
*
* 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): CfnSlackChannelConfiguration;
/**
* Amazon Resource Name (ARN) of the configuration
*
* @cloudformationAttribute Arn
*/
readonly attrArn: string;
/**
* The name of the configuration.
*/
configurationName: string;
/**
* The list of IAM policy ARNs that are applied as channel guardrails.
*/
guardrailPolicies?: Array<string>;
/**
* The ARN of the IAM role that defines the permissions for AWS Chatbot .
*/
iamRoleArn: string;
/**
* Specifies the logging level for this configuration. This property affects the log entries pushed to Amazon CloudWatch Logs.
*/
loggingLevel?: string;
/**
* The ID of the Slack channel.
*/
slackChannelId: string;
/**
* The ID of the Slack workspace authorized with AWS Chatbot .
*/
slackWorkspaceId: string;
/**
* The ARNs of the SNS topics that deliver notifications to AWS Chatbot .
*/
snsTopicArns?: Array<string>;
/**
* Enables use of a user role requirement in your chat configuration.
*/
userRoleRequired?: boolean | cdk.IResolvable;
/**
* @param scope Scope in which this resource is defined
* @param id Construct identifier for this resource (unique in its scope)
* @param props Resource properties
*/
constructor(scope: constructs.Construct, id: string, props: CfnSlackChannelConfigurationProps);
protected get cfnProperties(): Record<string, any>;
/**
* Examines the CloudFormation resource and discloses attributes
*
* @param inspector tree inspector to collect and process attributes
*/
inspect(inspector: cdk.TreeInspector): void;
protected renderProperties(props: Record<string, any>): Record<string, any>;
}
/**
* Properties for defining a `CfnSlackChannelConfiguration`
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html
*/
export interface CfnSlackChannelConfigurationProps {
/**
* The name of the configuration.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html#cfn-chatbot-slackchannelconfiguration-configurationname
*/
readonly configurationName: string;
/**
* The list of IAM policy ARNs that are applied as channel guardrails.
*
* The AWS managed 'AdministratorAccess' policy is applied as a default if this is not set.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html#cfn-chatbot-slackchannelconfiguration-guardrailpolicies
*/
readonly guardrailPolicies?: Array<string>;
/**
* The ARN of the IAM role that defines the permissions for AWS Chatbot .
*
* This is a user-defined role that AWS Chatbot will assume. This is not the service-linked role. For more information, see [IAM Policies for AWS Chatbot](https://docs.aws.amazon.com/chatbot/latest/adminguide/chatbot-iam-policies.html) .
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html#cfn-chatbot-slackchannelconfiguration-iamrolearn
*/
readonly iamRoleArn: string;
/**
* Specifies the logging level for this configuration. This property affects the log entries pushed to Amazon CloudWatch Logs.
*
* Logging levels include `ERROR` , `INFO` , or `NONE` .
*
* @default - "NONE"
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html#cfn-chatbot-slackchannelconfiguration-logginglevel
*/
readonly loggingLevel?: string;
/**
* The ID of the Slack channel.
*
* To get the ID, open Slack, right click on the channel name in the left pane, then choose Copy Link. The channel ID is the 9-character string at the end of the URL. For example, `ABCBBLZZZ` .
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html#cfn-chatbot-slackchannelconfiguration-slackchannelid
*/
readonly slackChannelId: string;
/**
* The ID of the Slack workspace authorized with AWS Chatbot .
*
* To get the workspace ID, you must perform the initial authorization flow with Slack in the AWS Chatbot console. Then you can copy and paste the workspace ID from the console. For more details, see steps 1-4 in [Setting Up AWS Chatbot with Slack](https://docs.aws.amazon.com/chatbot/latest/adminguide/setting-up.html#Setup_intro) in the *AWS Chatbot User Guide* .
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html#cfn-chatbot-slackchannelconfiguration-slackworkspaceid
*/
readonly slackWorkspaceId: string;
/**
* The ARNs of the SNS topics that deliver notifications to AWS Chatbot .
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html#cfn-chatbot-slackchannelconfiguration-snstopicarns
*/
readonly snsTopicArns?: Array<string>;
/**
* Enables use of a user role requirement in your chat configuration.
*
* @default - false
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-chatbot-slackchannelconfiguration.html#cfn-chatbot-slackchannelconfiguration-userrolerequired
*/
readonly userRoleRequired?: boolean | cdk.IResolvable;
}