// *** 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.CS.Outputs
{

    [OutputType]
    public sealed class GetRegistryEnterpriseSyncRulesRuleResult
    {
        /// <summary>
        /// ID of Container Registry Enterprise Edition sync rule.
        /// </summary>
        public readonly string Id;
        /// <summary>
        /// ID of Container Registry Enterprise Edition local instance.
        /// </summary>
        public readonly string InstanceId;
        /// <summary>
        /// Name of Container Registry Enterprise Edition sync rule.
        /// </summary>
        public readonly string Name;
        /// <summary>
        /// Name of Container Registry Enterprise Edition local namespace.
        /// </summary>
        public readonly string NamespaceName;
        /// <summary>
        /// Region of Container Registry Enterprise Edition local instance.
        /// </summary>
        public readonly string RegionId;
        /// <summary>
        /// Name of Container Registry Enterprise Edition local repo.
        /// </summary>
        public readonly string RepoName;
        /// <summary>
        /// `FROM` or `TO`, the direction of synchronization. `FROM` indicates that the local instance is the source instance. `TO` indicates that the local instance is the target instance to be synchronized.
        /// </summary>
        public readonly string SyncDirection;
        /// <summary>
        /// `REPO` or `NAMESPACE`,the scope that the synchronization rule applies.
        /// </summary>
        public readonly string SyncScope;
        /// <summary>
        /// `PASSIVE` or `INITIATIVE`, the policy configured to trigger the synchronization rule.
        /// </summary>
        public readonly string SyncTrigger;
        /// <summary>
        /// The regular expression used to filter image tags for synchronization in the source repository.
        /// </summary>
        public readonly string TagFilter;
        /// <summary>
        /// ID of Container Registry Enterprise Edition target instance.
        /// </summary>
        public readonly string TargetInstanceId;
        /// <summary>
        /// Name of Container Registry Enterprise Edition target namespace.
        /// </summary>
        public readonly string TargetNamespaceName;
        /// <summary>
        /// Region of Container Registry Enterprise Edition target instance.
        /// </summary>
        public readonly string TargetRegionId;
        /// <summary>
        /// Name of Container Registry Enterprise Edition target repo.
        /// </summary>
        public readonly string TargetRepoName;

        [OutputConstructor]
        private GetRegistryEnterpriseSyncRulesRuleResult(
            string id,

            string instanceId,

            string name,

            string namespaceName,

            string regionId,

            string repoName,

            string syncDirection,

            string syncScope,

            string syncTrigger,

            string tagFilter,

            string targetInstanceId,

            string targetNamespaceName,

            string targetRegionId,

            string targetRepoName)
        {
            Id = id;
            InstanceId = instanceId;
            Name = name;
            NamespaceName = namespaceName;
            RegionId = regionId;
            RepoName = repoName;
            SyncDirection = syncDirection;
            SyncScope = syncScope;
            SyncTrigger = syncTrigger;
            TagFilter = tagFilter;
            TargetInstanceId = targetInstanceId;
            TargetNamespaceName = targetNamespaceName;
            TargetRegionId = targetRegionId;
            TargetRepoName = targetRepoName;
        }
    }
}
