// *** 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;
using Pulumi;

namespace TencentCloudIAC.PulumiPackage.Tencentcloud.Cdn.Outputs
{

    [OutputType]
    public sealed class GetDomainsDomainListResult
    {
        /// <summary>
        /// Acceleration region.
        /// </summary>
        public readonly string Area;
        /// <summary>
        /// CNAME address of domain name.
        /// </summary>
        public readonly string Cname;
        /// <summary>
        /// Domain name creation time.
        /// </summary>
        public readonly string CreateTime;
        /// <summary>
        /// Acceleration domain name.
        /// </summary>
        public readonly string Domain;
        /// <summary>
        /// Whether to enable full-path cache.
        /// </summary>
        public readonly bool FullUrlCache;
        /// <summary>
        /// HTTPS acceleration configuration. It's a list and consist of at most one item.
        /// </summary>
        public readonly ImmutableArray<Outputs.GetDomainsDomainListHttpsConfigResult> HttpsConfigs;
        /// <summary>
        /// Domain name ID.
        /// </summary>
        public readonly string Id;
        /// <summary>
        /// Origin server configuration.
        /// </summary>
        public readonly ImmutableArray<Outputs.GetDomainsDomainListOriginResult> Origins;
        /// <summary>
        /// The project CDN belongs to.
        /// </summary>
        public readonly int ProjectId;
        /// <summary>
        /// Sharding back to source configuration switch.
        /// </summary>
        public readonly string RangeOriginSwitch;
        /// <summary>
        /// Request header configuration.
        /// </summary>
        public readonly ImmutableArray<Outputs.GetDomainsDomainListRequestHeaderResult> RequestHeaders;
        /// <summary>
        /// Advanced path cache configuration.
        /// </summary>
        public readonly ImmutableArray<Outputs.GetDomainsDomainListRuleCachResult> RuleCaches;
        /// <summary>
        /// Service type of acceleration domain name. The available value include `web`, `download` and `media`.
        /// </summary>
        public readonly string ServiceType;
        /// <summary>
        /// Acceleration service status.
        /// </summary>
        public readonly string Status;
        /// <summary>
        /// Tags of cdn domain.
        /// </summary>
        public readonly ImmutableDictionary<string, object> Tags;
        /// <summary>
        /// Last modified time of domain name.
        /// </summary>
        public readonly string UpdateTime;

        [OutputConstructor]
        private GetDomainsDomainListResult(
            string area,

            string cname,

            string createTime,

            string domain,

            bool fullUrlCache,

            ImmutableArray<Outputs.GetDomainsDomainListHttpsConfigResult> httpsConfigs,

            string id,

            ImmutableArray<Outputs.GetDomainsDomainListOriginResult> origins,

            int projectId,

            string rangeOriginSwitch,

            ImmutableArray<Outputs.GetDomainsDomainListRequestHeaderResult> requestHeaders,

            ImmutableArray<Outputs.GetDomainsDomainListRuleCachResult> ruleCaches,

            string serviceType,

            string status,

            ImmutableDictionary<string, object> tags,

            string updateTime)
        {
            Area = area;
            Cname = cname;
            CreateTime = createTime;
            Domain = domain;
            FullUrlCache = fullUrlCache;
            HttpsConfigs = httpsConfigs;
            Id = id;
            Origins = origins;
            ProjectId = projectId;
            RangeOriginSwitch = rangeOriginSwitch;
            RequestHeaders = requestHeaders;
            RuleCaches = ruleCaches;
            ServiceType = serviceType;
            Status = status;
            Tags = tags;
            UpdateTime = updateTime;
        }
    }
}
