import * as core from "@terrascript/core"; export interface TrafficPolicyArgs extends core.ResourceArgs { /** * (Optional) Comment for the traffic policy. */ comment?: string | core.StringOut; /** * (Required) Policy document. This is a JSON formatted string. For more information about building Rou * te53 traffic policy documents, see the [AWS Route53 Traffic Policy document format](https://docs.aws * .amazon.com/Route53/latest/APIReference/api-policies-traffic-policy-document-format.html) */ document: string | core.StringOut; /** * (Required) Name of the traffic policy. */ name: string | core.StringOut; } export class TrafficPolicy extends core.Resource { /** * (Optional) Comment for the traffic policy. */ @core.attr(String) public comment?: string | core.StringOut; /** * (Required) Policy document. This is a JSON formatted string. For more information about building Rou * te53 traffic policy documents, see the [AWS Route53 Traffic Policy document format](https://docs.aws * .amazon.com/Route53/latest/APIReference/api-policies-traffic-policy-document-format.html) */ @core.attr(String) public document!: string | core.StringOut; /** * ID of the traffic policy */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Required) Name of the traffic policy. */ @core.attr(String) public name!: string | core.StringOut; /** * DNS type of the resource record sets that Amazon Route 53 creates when you use a traffic policy to c * reate a traffic policy instance. */ @core.attr(String, { computed: true }) public type!: string | core.StringOut; /** * Version number of the traffic policy. This value is automatically incremented by AWS after each upda * te of this resource. */ @core.attr(Number, { computed: true }) public version!: number | core.NumberOut; constructor(name: string, args?: TrafficPolicyArgs) { super(name, "aws_route53_traffic_policy", args); } public override getNamespace(): string { return "aws_route53"; } }