import * as core from "@terrascript/core"; export interface CrlConfigurationArgs extends core.SchemaArgs { customCname?: string | core.StringOut; enabled?: boolean | core.BooleanOut; expirationInDays: number | core.NumberOut; s3BucketName?: string | core.StringOut; s3ObjectAcl?: string | core.StringOut; } export declare class CrlConfiguration extends core.Schema { customCname?: string | core.StringOut; enabled?: boolean | core.BooleanOut; expirationInDays: number | core.NumberOut; s3BucketName?: string | core.StringOut; s3ObjectAcl?: string | core.StringOut; } export interface OcspConfigurationArgs extends core.SchemaArgs { enabled: boolean | core.BooleanOut; ocspCustomCname?: string | core.StringOut; } export declare class OcspConfiguration extends core.Schema { enabled: boolean | core.BooleanOut; ocspCustomCname?: string | core.StringOut; } export interface RevocationConfigurationArgs extends core.SchemaArgs { crlConfiguration?: CrlConfiguration; ocspConfiguration?: OcspConfiguration; } export declare class RevocationConfiguration extends core.Schema { crlConfiguration?: CrlConfiguration; ocspConfiguration?: OcspConfiguration; } export interface SubjectArgs extends core.SchemaArgs { commonName?: string | core.StringOut; country?: string | core.StringOut; distinguishedNameQualifier?: string | core.StringOut; generationQualifier?: string | core.StringOut; givenName?: string | core.StringOut; initials?: string | core.StringOut; locality?: string | core.StringOut; organization?: string | core.StringOut; organizationalUnit?: string | core.StringOut; pseudonym?: string | core.StringOut; state?: string | core.StringOut; surname?: string | core.StringOut; title?: string | core.StringOut; } export declare class Subject extends core.Schema { commonName?: string | core.StringOut; country?: string | core.StringOut; distinguishedNameQualifier?: string | core.StringOut; generationQualifier?: string | core.StringOut; givenName?: string | core.StringOut; initials?: string | core.StringOut; locality?: string | core.StringOut; organization?: string | core.StringOut; organizationalUnit?: string | core.StringOut; pseudonym?: string | core.StringOut; state?: string | core.StringOut; surname?: string | core.StringOut; title?: string | core.StringOut; } export interface CertificateAuthorityConfigurationArgs extends core.SchemaArgs { keyAlgorithm: string | core.StringOut; signingAlgorithm: string | core.StringOut; subject: Subject; } export declare class CertificateAuthorityConfiguration extends core.Schema { keyAlgorithm: string | core.StringOut; signingAlgorithm: string | core.StringOut; subject: Subject; } export interface CertificateAuthorityArgs extends core.ResourceArgs { /** * (Required) Nested argument containing algorithms and certificate subject information. Defined below. */ certificateAuthorityConfiguration: CertificateAuthorityConfiguration; /** * (Optional) Whether the certificate authority is enabled or disabled. Defaults to `true`. */ enabled?: boolean | core.BooleanOut; /** * (Optional) The number of days to make a CA restorable after it has been deleted, must be between 7 t * o 30 days, with default to 30 days. */ permanentDeletionTimeInDays?: number | core.NumberOut; /** * (Optional) Nested argument containing revocation configuration. Defined below. */ revocationConfiguration?: RevocationConfiguration; /** * (Optional) Specifies a key-value map of user-defined tags that are attached to the certificate autho * rity. 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 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; /** * (Optional) The type of the certificate authority. Defaults to `SUBORDINATE`. Valid values: `ROOT` an * d `SUBORDINATE`. */ type?: string | core.StringOut; } export declare class CertificateAuthority extends core.Resource { /** * Amazon Resource Name (ARN) of the certificate authority. */ arn: string | core.StringOut; /** * Base64-encoded certificate authority (CA) certificate. Only available after the certificate authorit * y certificate has been imported. */ certificate: string | core.StringOut; /** * (Required) Nested argument containing algorithms and certificate subject information. Defined below. */ certificateAuthorityConfiguration: CertificateAuthorityConfiguration; /** * Base64-encoded certificate chain that includes any intermediate certificates and chains up to root o * n-premises certificate that you used to sign your private CA certificate. The chain does not include * your private CA certificate. Only available after the certificate authority certificate has been im * ported. */ certificateChain: string | core.StringOut; /** * The base64 PEM-encoded certificate signing request (CSR) for your private CA certificate. */ certificateSigningRequest: string | core.StringOut; /** * (Optional) Whether the certificate authority is enabled or disabled. Defaults to `true`. */ enabled?: boolean | core.BooleanOut; /** * Amazon Resource Name (ARN) of the certificate authority. */ id: string | core.StringOut; /** * Date and time after which the certificate authority is not valid. Only available after the certifica * te authority certificate has been imported. */ notAfter: string | core.StringOut; /** * Date and time before which the certificate authority is not valid. Only available after the certific * ate authority certificate has been imported. */ notBefore: string | core.StringOut; /** * (Optional) The number of days to make a CA restorable after it has been deleted, must be between 7 t * o 30 days, with default to 30 days. */ permanentDeletionTimeInDays?: number | core.NumberOut; /** * (Optional) Nested argument containing revocation configuration. Defined below. */ revocationConfiguration?: RevocationConfiguration; /** * Serial number of the certificate authority. Only available after the certificate authority certifica * te has been imported. */ serial: string | core.StringOut; /** * (**Deprecated** use the `enabled` attribute instead) Status of the certificate authority. */ status: string | core.StringOut; /** * (Optional) Specifies a key-value map of user-defined tags that are attached to the certificate autho * rity. 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 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; /** * (Optional) The type of the certificate authority. Defaults to `SUBORDINATE`. Valid values: `ROOT` an * d `SUBORDINATE`. */ type?: string | core.StringOut; constructor(name: string, args?: CertificateAuthorityArgs); getNamespace(): string; } //# sourceMappingURL=certificate_authority.d.ts.map