import * as core from "@terrascript/core"; export interface DsResourceArgs { /** * (Required) Identifier of the CloudFormation resource type. For example, `vpc-12345678`. */ identifier: string | core.StringOut; /** * (Optional) Amazon Resource Name (ARN) of the IAM Role to assume for operations. */ roleArn?: string | core.StringOut; /** * (Required) CloudFormation resource type name. For example, `AWS::EC2::VPC`. */ typeName: string | core.StringOut; /** * (Optional) Identifier of the CloudFormation resource type version. */ typeVersionId?: string | core.StringOut; } export class DsResource extends core.Data { @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Required) Identifier of the CloudFormation resource type. For example, `vpc-12345678`. */ @core.attr(String) public identifier!: string | core.StringOut; /** * JSON string matching the CloudFormation resource type schema with current configuration. Underlying * attributes can be referenced via the [`jsondecode()` function](https://www.terraform.io/docs/languag * e/functions/jsondecode.html), for example, `jsondecode(data.aws_cloudcontrolapi_resource.example.pro * perties)["example"]`. */ @core.attr(String, { computed: true }) public properties!: string | core.StringOut; /** * (Optional) Amazon Resource Name (ARN) of the IAM Role to assume for operations. */ @core.attr(String) public roleArn?: string | core.StringOut; /** * (Required) CloudFormation resource type name. For example, `AWS::EC2::VPC`. */ @core.attr(String) public typeName!: string | core.StringOut; /** * (Optional) Identifier of the CloudFormation resource type version. */ @core.attr(String) public typeVersionId?: string | core.StringOut; constructor(name: string, args?: DsResourceArgs) { super(name, "aws_cloudcontrolapi_resource", args); } public override getNamespace(): string { return "aws_cloudcontrolapi"; } }