// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;

namespace Pulumi.Yandex.Outputs
{

    [OutputType]
    public sealed class CmCertificateChallenge
    {
        /// <summary>
        /// Time the challenge was created.
        /// </summary>
        public readonly string? CreatedAt;
        /// <summary>
        /// DNS record name (only for DNS challenge).
        /// </summary>
        public readonly string? DnsName;
        /// <summary>
        /// DNS record type: `"TXT"` or `"CNAME"` (only for DNS challenge).
        /// </summary>
        public readonly string? DnsType;
        /// <summary>
        /// DNS record value (only for DNS challenge).
        /// </summary>
        public readonly string? DnsValue;
        /// <summary>
        /// Validated domain.
        /// </summary>
        public readonly string? Domain;
        /// <summary>
        /// The content that should be made accessible with the given `http_url` (only for HTTP challenge).
        /// </summary>
        public readonly string? HttpContent;
        /// <summary>
        /// URL where the challenge content http_content should be placed (only for HTTP challenge).
        /// </summary>
        public readonly string? HttpUrl;
        /// <summary>
        /// Current status message.
        /// </summary>
        public readonly string? Message;
        /// <summary>
        /// Challenge type `"DNS"` or `"HTTP"`.
        /// </summary>
        public readonly string? Type;
        /// <summary>
        /// Last time the challenge was updated.
        /// </summary>
        public readonly string? UpdatedAt;

        [OutputConstructor]
        private CmCertificateChallenge(
            string? createdAt,

            string? dnsName,

            string? dnsType,

            string? dnsValue,

            string? domain,

            string? httpContent,

            string? httpUrl,

            string? message,

            string? type,

            string? updatedAt)
        {
            CreatedAt = createdAt;
            DnsName = dnsName;
            DnsType = dnsType;
            DnsValue = dnsValue;
            Domain = domain;
            HttpContent = httpContent;
            HttpUrl = httpUrl;
            Message = message;
            Type = type;
            UpdatedAt = updatedAt;
        }
    }
}
