import * as core from "@terrascript/core"; export interface LogSettingsArgs extends core.SchemaArgs { destination: string | core.StringOut; kmsKeyArn?: string | core.StringOut; logType: string | core.StringOut; resourceArn: string | core.StringOut; resourcePrefix: string | core.StringOut; } export class LogSettings extends core.Schema { @core.attr(String) public destination!: string | core.StringOut; @core.attr(String) public kmsKeyArn?: string | core.StringOut; @core.attr(String) public logType!: string | core.StringOut; @core.attr(String) public resourceArn!: string | core.StringOut; @core.attr(String, { computed: true }) public resourcePrefix!: string | core.StringOut; } export interface ConversationLogsArgs extends core.SchemaArgs { iamRoleArn: string | core.StringOut; logSettings?: core.Array | core.ArrayOut; } export class ConversationLogs extends core.Schema { @core.attr(String) public iamRoleArn!: string | core.StringOut; @core.attr(LogSettings, { kind: "array" }) public logSettings?: core.Array | core.ArrayOut; } export interface BotAliasArgs extends core.ResourceArgs { /** * (Required) The name of the bot. */ botName: string | core.StringOut; /** * (Required) The name of the bot. */ botVersion: string | core.StringOut; /** * (Optional) The settings that determine how Amazon Lex uses conversation logs for the alias. Attribut * es are documented under [conversation_logs](#conversation_logs). */ conversationLogs?: ConversationLogs; /** * (Optional) A description of the alias. Must be less than or equal to 200 characters in length. */ description?: string | core.StringOut; /** * (Required) The name of the alias. The name is not case sensitive. Must be less than or equal to 100 * characters in length. */ name: string | core.StringOut; } export class BotAlias extends core.Resource { /** * The ARN of the bot alias. */ @core.attr(String, { computed: true }) public arn!: string | core.StringOut; /** * (Required) The name of the bot. */ @core.attr(String) public botName!: string | core.StringOut; /** * (Required) The name of the bot. */ @core.attr(String) public botVersion!: string | core.StringOut; /** * Checksum of the bot alias. */ @core.attr(String, { computed: true }) public checksum!: string | core.StringOut; /** * (Optional) The settings that determine how Amazon Lex uses conversation logs for the alias. Attribut * es are documented under [conversation_logs](#conversation_logs). */ @core.attr(ConversationLogs) public conversationLogs?: ConversationLogs; /** * The date that the bot alias was created. */ @core.attr(String, { computed: true }) public createdDate!: string | core.StringOut; /** * (Optional) A description of the alias. Must be less than or equal to 200 characters in length. */ @core.attr(String) public description?: string | core.StringOut; @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * The date that the bot alias was updated. When you create a resource, the creation date and the last * updated date are the same. */ @core.attr(String, { computed: true }) public lastUpdatedDate!: string | core.StringOut; /** * (Required) The name of the alias. The name is not case sensitive. Must be less than or equal to 100 * characters in length. */ @core.attr(String) public name!: string | core.StringOut; constructor(name: string, args?: BotAliasArgs) { super(name, "aws_lex_bot_alias", args); } public override getNamespace(): string { return "aws_lex"; } }