<reponame>cuemby/pulumi-equinix<filename>sdk/dotnet/Inputs/GetMetalPlansFilter.cs// *** 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 Cuemby.Equinix.Inputs
{

    public sealed class GetMetalPlansFilterArgs : Pulumi.InvokeArgs
    {
        /// <summary>
        /// If is set to true, the values are joined with an AND, and the requests returns only the results that match all specified values. Default is `false`.
        /// </summary>
        [Input("all")]
        public bool? All { get; set; }

        /// <summary>
        /// The attribute used to filter. Filter attributes are case-sensitive
        /// </summary>
        [Input("attribute", required: true)]
        public string Attribute { get; set; } = null!;

        /// <summary>
        /// The type of comparison to apply. One of: `in` , `re`, `substring`, `less_than`, `less_than_or_equal`, `greater_than`, `greater_than_or_equal`. Default is `in`.
        /// </summary>
        [Input("matchBy")]
        public string? MatchBy { get; set; }

        [Input("values", required: true)]
        private List<string>? _values;

        /// <summary>
        /// The filter values. Filter values are case-sensitive. If you specify multiple values for a filter, the values are joined with an OR by default, and the request returns all results that match any of the specified values
        /// </summary>
        public List<string> Values
        {
            get => _values ?? (_values = new List<string>());
            set => _values = value;
        }

        public GetMetalPlansFilterArgs()
        {
        }
    }
}
