<reponame>rhysmdnz/pulumi-alicloud-rhys-hacks// *** 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.AliCloud.RocketMQ.Outputs
{

    [OutputType]
    public sealed class GetTopicsTopicResult
    {
        /// <summary>
        /// The id of the topic.
        /// </summary>
        public readonly string Id;
        /// <summary>
        /// Indicates whether namespaces are available. Read [Fields in PublishInfoDo](https://www.alibabacloud.com/help/doc-detail/29590.html) for further details.
        /// </summary>
        public readonly bool IndependentNaming;
        /// <summary>
        /// ID of the ONS Instance that owns the topics.
        /// </summary>
        public readonly string InstanceId;
        /// <summary>
        /// The type of the message. Read [Fields in PublishInfoDo](https://www.alibabacloud.com/help/doc-detail/29590.html) for further details.
        /// </summary>
        public readonly int MessageType;
        /// <summary>
        /// The ID of the topic owner, which is the Alibaba Cloud UID.
        /// </summary>
        public readonly string Owner;
        /// <summary>
        /// This attribute is used to set the read-write mode for the topic.
        /// </summary>
        public readonly int Perm;
        /// <summary>
        /// The relation ID. Read [Fields in PublishInfoDo](https://www.alibabacloud.com/help/doc-detail/29590.html) for further details.
        /// </summary>
        public readonly int Relation;
        /// <summary>
        /// The name of the relation, for example, owner, publishable, subscribable, and publishable and subscribable.
        /// </summary>
        public readonly string RelationName;
        /// <summary>
        /// Remark of the topic.
        /// </summary>
        public readonly string Remark;
        /// <summary>
        /// A map of tags assigned to the Ons instance.
        /// </summary>
        public readonly ImmutableDictionary<string, object> Tags;
        /// <summary>
        /// The name of the topic.
        /// </summary>
        public readonly string Topic;
        /// <summary>
        /// The name of the topic.
        /// </summary>
        public readonly string TopicName;

        [OutputConstructor]
        private GetTopicsTopicResult(
            string id,

            bool independentNaming,

            string instanceId,

            int messageType,

            string owner,

            int perm,

            int relation,

            string relationName,

            string remark,

            ImmutableDictionary<string, object> tags,

            string topic,

            string topicName)
        {
            Id = id;
            IndependentNaming = independentNaming;
            InstanceId = instanceId;
            MessageType = messageType;
            Owner = owner;
            Perm = perm;
            Relation = relation;
            RelationName = relationName;
            Remark = remark;
            Tags = tags;
            Topic = topic;
            TopicName = topicName;
        }
    }
}
