// *** 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 AlbVirtualHostRouteHttpRouteRedirectAction
    {
        public readonly bool? RemoveQuery;
        /// <summary>
        /// Replaces hostname.
        /// </summary>
        public readonly string? ReplaceHost;
        /// <summary>
        /// Replace path.
        /// </summary>
        public readonly string? ReplacePath;
        /// <summary>
        /// Replaces port.
        /// </summary>
        public readonly int? ReplacePort;
        /// <summary>
        /// Replace only matched prefix. Example:&lt;br/&gt; match:{ prefix_match: "/some" } &lt;br/&gt; 
        /// redirect: { replace_prefix: "/other" } &lt;br/&gt; will redirect "/something" to "/otherthing".
        /// </summary>
        public readonly string? ReplacePrefix;
        /// <summary>
        /// Replaces scheme. If the original scheme is `http` or `https`, will also remove the 
        /// 80 or 443 port, if present.
        /// </summary>
        public readonly string? ReplaceScheme;
        /// <summary>
        /// The HTTP status code to use in the redirect response. Supported values are: 
        /// moved_permanently, found, see_other, temporary_redirect, permanent_redirect.
        /// </summary>
        public readonly string? ResponseCode;

        [OutputConstructor]
        private AlbVirtualHostRouteHttpRouteRedirectAction(
            bool? removeQuery,

            string? replaceHost,

            string? replacePath,

            int? replacePort,

            string? replacePrefix,

            string? replaceScheme,

            string? responseCode)
        {
            RemoveQuery = removeQuery;
            ReplaceHost = replaceHost;
            ReplacePath = replacePath;
            ReplacePort = replacePort;
            ReplacePrefix = replacePrefix;
            ReplaceScheme = replaceScheme;
            ResponseCode = responseCode;
        }
    }
}
