import * as core from "@terrascript/core"; export interface ServerCertificateArgs extends core.ResourceArgs { certificateBody: string | core.StringOut; certificateChain?: string | core.StringOut; /** * (Optional) The name of the Server Certificate. Do not include the */ name?: string | core.StringOut; /** * (Optional) Creates a unique name beginning with the specified */ namePrefix?: string | core.StringOut; /** * (Optional) The IAM path for the server certificate. If it is not */ path?: string | core.StringOut; privateKey: string | core.StringOut; /** * (Optional) Map of resource tags for the server certificate. If configured with a provider [`default_ * tags` configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default * _tags-configuration-block) present, tags with matching keys will overwrite those defined at the prov * ider-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 ServerCertificate extends core.Resource { /** * The Amazon Resource Name (ARN) specifying the server certificate. */ @core.attr(String, { computed: true }) public arn!: string | core.StringOut; @core.attr(String) public certificateBody!: string | core.StringOut; @core.attr(String) public certificateChain?: string | core.StringOut; /** * Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) on which the cert * ificate is set to expire. */ @core.attr(String, { computed: true }) public expiration!: string | core.StringOut; /** * The unique Server Certificate name */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Optional) The name of the Server Certificate. Do not include the */ @core.attr(String, { computed: true }) public name?: string | core.StringOut; /** * (Optional) Creates a unique name beginning with the specified */ @core.attr(String) public namePrefix?: string | core.StringOut; /** * (Optional) The IAM path for the server certificate. If it is not */ @core.attr(String) public path?: string | core.StringOut; @core.attr(String) public privateKey!: string | core.StringOut; /** * (Optional) Map of resource tags for the server certificate. If configured with a provider [`default_ * tags` configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default * _tags-configuration-block) present, tags with matching keys will overwrite those defined at the prov * ider-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; /** * Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) when the server c * ertificate was uploaded. */ @core.attr(String, { computed: true }) public uploadDate!: string | core.StringOut; constructor(name: string, args?: ServerCertificateArgs) { super(name, "aws_iam_server_certificate", args); } public override getNamespace(): string { return "aws_iam"; } }