import * as core from "@terrascript/core"; export interface ClusterIamRolesArgs extends core.ResourceArgs { /** * (Required) The name of the Redshift Cluster IAM Roles. */ clusterIdentifier: string | core.StringOut; /** * (Optional) The Amazon Resource Name (ARN) for the IAM role that was set as default for the cluster w * hen the cluster was created. */ defaultIamRoleArn?: string | core.StringOut; /** * (Optional) A list of IAM Role ARNs to associate with the cluster. A Maximum of 10 can be associated * to the cluster at any time. */ iamRoleArns?: core.Array | core.ArrayOut; } export class ClusterIamRoles extends core.Resource { /** * (Required) The name of the Redshift Cluster IAM Roles. */ @core.attr(String) public clusterIdentifier!: string | core.StringOut; /** * (Optional) The Amazon Resource Name (ARN) for the IAM role that was set as default for the cluster w * hen the cluster was created. */ @core.attr(String, { computed: true }) public defaultIamRoleArn?: string | core.StringOut; /** * (Optional) A list of IAM Role ARNs to associate with the cluster. A Maximum of 10 can be associated * to the cluster at any time. */ @core.attr(String, { computed: true, kind: "array" }) public iamRoleArns?: core.Array | core.ArrayOut; /** * The Redshift Cluster ID. */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; constructor(name: string, args?: ClusterIamRolesArgs) { super(name, "aws_redshift_cluster_iam_roles", args); } public override getNamespace(): string { return "aws_redshift"; } }