import * as core from "@terrascript/core"; export interface ActivationArgs extends core.ResourceArgs { /** * (Optional) The description of the resource that you want to register. */ description?: string | core.StringOut; /** * (Optional) UTC timestamp in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) by whi * ch this activation request should expire. The default value is 24 hours from resource creation time. * Terraform will only perform drift detection of its value when present in a configuration. */ expirationDate?: string | core.StringOut; /** * (Required) The IAM Role to attach to the managed instance. */ iamRole: string | core.StringOut; /** * (Optional) The default name of the registered managed instance. */ name?: string | core.StringOut; /** * (Optional) The maximum number of managed instances you want to register. The default value is 1 inst * ance. */ registrationLimit?: number | core.NumberOut; /** * (Optional) A map of tags to assign to the object. If configured with a provider [`default_tags` conf * iguration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-conf * iguration-block) present, tags with matching keys will overwrite those defined at the provider-level * . */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; } export class Activation extends core.Resource { /** * The code the system generates when it processes the activation. */ @core.attr(String, { computed: true }) public activationCode!: string | core.StringOut; /** * (Optional) The description of the resource that you want to register. */ @core.attr(String) public description?: string | core.StringOut; /** * (Optional) UTC timestamp in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) by whi * ch this activation request should expire. The default value is 24 hours from resource creation time. * Terraform will only perform drift detection of its value when present in a configuration. */ @core.attr(String, { computed: true }) public expirationDate?: string | core.StringOut; /** * If the current activation has expired. */ @core.attr(Boolean, { computed: true }) public expired!: boolean | core.BooleanOut; /** * (Required) The IAM Role to attach to the managed instance. */ @core.attr(String) public iamRole!: string | core.StringOut; /** * The activation ID. */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Optional) The default name of the registered managed instance. */ @core.attr(String) public name?: string | core.StringOut; /** * The number of managed instances that are currently registered using this activation. */ @core.attr(Number, { computed: true }) public registrationCount!: number | core.NumberOut; /** * (Optional) The maximum number of managed instances you want to register. The default value is 1 inst * ance. */ @core.attr(Number) public registrationLimit?: number | core.NumberOut; /** * (Optional) A map of tags to assign to the object. If configured with a provider [`default_tags` conf * iguration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-conf * iguration-block) present, tags with matching keys will overwrite those defined at the provider-level * . */ @core.attr(String, { kind: "map" }) public tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ @core.attr(String, { computed: true, kind: "map" }) public tagsAll?: core.Map | core.MapOut; constructor(name: string, args?: ActivationArgs) { super(name, "aws_ssm_activation", args); } public override getNamespace(): string { return "aws_ssm"; } }