/*
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License").
 * You may not use this file except in compliance with the License.
 * A copy of the License is located at
 * 
 *  http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed
 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 * express or implied. See the License for the specific language governing
 * permissions and limitations under the License.
 */
/*
 * Do not modify this file. This file is generated from the snowball-2016-06-30.normal.json service model.
 */
using System;
using Amazon.Runtime;
namespace Amazon.Snowball
{
    /// 
    /// Constants used for properties of type AddressType.
    /// 
    public class AddressType : ConstantClass
    {
        /// 
        /// Constant AWS_SHIP for AddressType
        /// 
        public static readonly AddressType AWS_SHIP = new AddressType("AWS_SHIP");
        /// 
        /// Constant CUST_PICKUP for AddressType
        /// 
        public static readonly AddressType CUST_PICKUP = new AddressType("CUST_PICKUP");
        /// 
        /// This constant constructor does not need to be called if the constant
        /// you are attempting to use is already defined as a static instance of 
        /// this class.
        /// This constructor should be used to construct constants that are not
        /// defined as statics, for instance if attempting to use a feature that is
        /// newer than the current version of the SDK.
        /// 
        public AddressType(string value)
            : base(value)
        {
        }
        /// 
        /// Finds the constant for the unique value.
        /// 
        /// The unique value for the constant
        /// The constant for the unique value
        public static AddressType FindValue(string value)
        {
            return FindValue(value);
        }
        /// 
        /// Utility method to convert strings to the constant class.
        /// 
        /// The string value to convert to the constant class.
        /// 
        public static implicit operator AddressType(string value)
        {
            return FindValue(value);
        }
    }
    /// 
    /// Constants used for properties of type ClusterState.
    /// 
    public class ClusterState : ConstantClass
    {
        /// 
        /// Constant AwaitingQuorum for ClusterState
        /// 
        public static readonly ClusterState AwaitingQuorum = new ClusterState("AwaitingQuorum");
        /// 
        /// Constant Cancelled for ClusterState
        /// 
        public static readonly ClusterState Cancelled = new ClusterState("Cancelled");
        /// 
        /// Constant Complete for ClusterState
        /// 
        public static readonly ClusterState Complete = new ClusterState("Complete");
        /// 
        /// Constant InUse for ClusterState
        /// 
        public static readonly ClusterState InUse = new ClusterState("InUse");
        /// 
        /// Constant Pending for ClusterState
        /// 
        public static readonly ClusterState Pending = new ClusterState("Pending");
        /// 
        /// This constant constructor does not need to be called if the constant
        /// you are attempting to use is already defined as a static instance of 
        /// this class.
        /// This constructor should be used to construct constants that are not
        /// defined as statics, for instance if attempting to use a feature that is
        /// newer than the current version of the SDK.
        /// 
        public ClusterState(string value)
            : base(value)
        {
        }
        /// 
        /// Finds the constant for the unique value.
        /// 
        /// The unique value for the constant
        /// The constant for the unique value
        public static ClusterState FindValue(string value)
        {
            return FindValue(value);
        }
        /// 
        /// Utility method to convert strings to the constant class.
        /// 
        /// The string value to convert to the constant class.
        /// 
        public static implicit operator ClusterState(string value)
        {
            return FindValue(value);
        }
    }
    /// 
    /// Constants used for properties of type DeviceServiceName.
    /// 
    public class DeviceServiceName : ConstantClass
    {
        /// 
        /// Constant NFS_ON_DEVICE_SERVICE for DeviceServiceName
        /// 
        public static readonly DeviceServiceName NFS_ON_DEVICE_SERVICE = new DeviceServiceName("NFS_ON_DEVICE_SERVICE");
        /// 
        /// Constant S3_ON_DEVICE_SERVICE for DeviceServiceName
        /// 
        public static readonly DeviceServiceName S3_ON_DEVICE_SERVICE = new DeviceServiceName("S3_ON_DEVICE_SERVICE");
        /// 
        /// This constant constructor does not need to be called if the constant
        /// you are attempting to use is already defined as a static instance of 
        /// this class.
        /// This constructor should be used to construct constants that are not
        /// defined as statics, for instance if attempting to use a feature that is
        /// newer than the current version of the SDK.
        /// 
        public DeviceServiceName(string value)
            : base(value)
        {
        }
        /// 
        /// Finds the constant for the unique value.
        /// 
        /// The unique value for the constant
        /// The constant for the unique value
        public static DeviceServiceName FindValue(string value)
        {
            return FindValue(value);
        }
        /// 
        /// Utility method to convert strings to the constant class.
        /// 
        /// The string value to convert to the constant class.
        /// 
        public static implicit operator DeviceServiceName(string value)
        {
            return FindValue(value);
        }
    }
    /// 
    /// Constants used for properties of type ImpactLevel.
    /// 
    public class ImpactLevel : ConstantClass
    {
        /// 
        /// Constant IL2 for ImpactLevel
        /// 
        public static readonly ImpactLevel IL2 = new ImpactLevel("IL2");
        /// 
        /// Constant IL4 for ImpactLevel
        /// 
        public static readonly ImpactLevel IL4 = new ImpactLevel("IL4");
        /// 
        /// Constant IL5 for ImpactLevel
        /// 
        public static readonly ImpactLevel IL5 = new ImpactLevel("IL5");
        /// 
        /// Constant IL6 for ImpactLevel
        /// 
        public static readonly ImpactLevel IL6 = new ImpactLevel("IL6");
        /// 
        /// Constant IL99 for ImpactLevel
        /// 
        public static readonly ImpactLevel IL99 = new ImpactLevel("IL99");
        /// 
        /// This constant constructor does not need to be called if the constant
        /// you are attempting to use is already defined as a static instance of 
        /// this class.
        /// This constructor should be used to construct constants that are not
        /// defined as statics, for instance if attempting to use a feature that is
        /// newer than the current version of the SDK.
        /// 
        public ImpactLevel(string value)
            : base(value)
        {
        }
        /// 
        /// Finds the constant for the unique value.
        /// 
        /// The unique value for the constant
        /// The constant for the unique value
        public static ImpactLevel FindValue(string value)
        {
            return FindValue(value);
        }
        /// 
        /// Utility method to convert strings to the constant class.
        /// 
        /// The string value to convert to the constant class.
        /// 
        public static implicit operator ImpactLevel(string value)
        {
            return FindValue(value);
        }
    }
    /// 
    /// Constants used for properties of type JobState.
    /// 
    public class JobState : ConstantClass
    {
        /// 
        /// Constant Cancelled for JobState
        /// 
        public static readonly JobState Cancelled = new JobState("Cancelled");
        /// 
        /// Constant Complete for JobState
        /// 
        public static readonly JobState Complete = new JobState("Complete");
        /// 
        /// Constant InProgress for JobState
        /// 
        public static readonly JobState InProgress = new JobState("InProgress");
        /// 
        /// Constant InTransitToAWS for JobState
        /// 
        public static readonly JobState InTransitToAWS = new JobState("InTransitToAWS");
        /// 
        /// Constant InTransitToCustomer for JobState
        /// 
        public static readonly JobState InTransitToCustomer = new JobState("InTransitToCustomer");
        /// 
        /// Constant Listing for JobState
        /// 
        public static readonly JobState Listing = new JobState("Listing");
        /// 
        /// Constant New for JobState
        /// 
        public static readonly JobState New = new JobState("New");
        /// 
        /// Constant Pending for JobState
        /// 
        public static readonly JobState Pending = new JobState("Pending");
        /// 
        /// Constant PreparingAppliance for JobState
        /// 
        public static readonly JobState PreparingAppliance = new JobState("PreparingAppliance");
        /// 
        /// Constant PreparingShipment for JobState
        /// 
        public static readonly JobState PreparingShipment = new JobState("PreparingShipment");
        /// 
        /// Constant WithAWS for JobState
        /// 
        public static readonly JobState WithAWS = new JobState("WithAWS");
        /// 
        /// Constant WithAWSSortingFacility for JobState
        /// 
        public static readonly JobState WithAWSSortingFacility = new JobState("WithAWSSortingFacility");
        /// 
        /// Constant WithCustomer for JobState
        /// 
        public static readonly JobState WithCustomer = new JobState("WithCustomer");
        /// 
        /// This constant constructor does not need to be called if the constant
        /// you are attempting to use is already defined as a static instance of 
        /// this class.
        /// This constructor should be used to construct constants that are not
        /// defined as statics, for instance if attempting to use a feature that is
        /// newer than the current version of the SDK.
        /// 
        public JobState(string value)
            : base(value)
        {
        }
        /// 
        /// Finds the constant for the unique value.
        /// 
        /// The unique value for the constant
        /// The constant for the unique value
        public static JobState FindValue(string value)
        {
            return FindValue(value);
        }
        /// 
        /// Utility method to convert strings to the constant class.
        /// 
        /// The string value to convert to the constant class.
        /// 
        public static implicit operator JobState(string value)
        {
            return FindValue(value);
        }
    }
    /// 
    /// Constants used for properties of type JobType.
    /// 
    public class JobType : ConstantClass
    {
        /// 
        /// Constant EXPORT for JobType
        /// 
        public static readonly JobType EXPORT = new JobType("EXPORT");
        /// 
        /// Constant IMPORT for JobType
        /// 
        public static readonly JobType IMPORT = new JobType("IMPORT");
        /// 
        /// Constant LOCAL_USE for JobType
        /// 
        public static readonly JobType LOCAL_USE = new JobType("LOCAL_USE");
        /// 
        /// This constant constructor does not need to be called if the constant
        /// you are attempting to use is already defined as a static instance of 
        /// this class.
        /// This constructor should be used to construct constants that are not
        /// defined as statics, for instance if attempting to use a feature that is
        /// newer than the current version of the SDK.
        /// 
        public JobType(string value)
            : base(value)
        {
        }
        /// 
        /// Finds the constant for the unique value.
        /// 
        /// The unique value for the constant
        /// The constant for the unique value
        public static JobType FindValue(string value)
        {
            return FindValue(value);
        }
        /// 
        /// Utility method to convert strings to the constant class.
        /// 
        /// The string value to convert to the constant class.
        /// 
        public static implicit operator JobType(string value)
        {
            return FindValue(value);
        }
    }
    /// 
    /// Constants used for properties of type LongTermPricingType.
    /// 
    public class LongTermPricingType : ConstantClass
    {
        /// 
        /// Constant OneMonth for LongTermPricingType
        /// 
        public static readonly LongTermPricingType OneMonth = new LongTermPricingType("OneMonth");
        /// 
        /// Constant OneYear for LongTermPricingType
        /// 
        public static readonly LongTermPricingType OneYear = new LongTermPricingType("OneYear");
        /// 
        /// Constant ThreeYear for LongTermPricingType
        /// 
        public static readonly LongTermPricingType ThreeYear = new LongTermPricingType("ThreeYear");
        /// 
        /// This constant constructor does not need to be called if the constant
        /// you are attempting to use is already defined as a static instance of 
        /// this class.
        /// This constructor should be used to construct constants that are not
        /// defined as statics, for instance if attempting to use a feature that is
        /// newer than the current version of the SDK.
        /// 
        public LongTermPricingType(string value)
            : base(value)
        {
        }
        /// 
        /// Finds the constant for the unique value.
        /// 
        /// The unique value for the constant
        /// The constant for the unique value
        public static LongTermPricingType FindValue(string value)
        {
            return FindValue(value);
        }
        /// 
        /// Utility method to convert strings to the constant class.
        /// 
        /// The string value to convert to the constant class.
        /// 
        public static implicit operator LongTermPricingType(string value)
        {
            return FindValue(value);
        }
    }
    /// 
    /// Constants used for properties of type RemoteManagement.
    /// 
    public class RemoteManagement : ConstantClass
    {
        /// 
        /// Constant INSTALLED_AUTOSTART for RemoteManagement
        /// 
        public static readonly RemoteManagement INSTALLED_AUTOSTART = new RemoteManagement("INSTALLED_AUTOSTART");
        /// 
        /// Constant INSTALLED_ONLY for RemoteManagement
        /// 
        public static readonly RemoteManagement INSTALLED_ONLY = new RemoteManagement("INSTALLED_ONLY");
        /// 
        /// Constant NOT_INSTALLED for RemoteManagement
        /// 
        public static readonly RemoteManagement NOT_INSTALLED = new RemoteManagement("NOT_INSTALLED");
        /// 
        /// This constant constructor does not need to be called if the constant
        /// you are attempting to use is already defined as a static instance of 
        /// this class.
        /// This constructor should be used to construct constants that are not
        /// defined as statics, for instance if attempting to use a feature that is
        /// newer than the current version of the SDK.
        /// 
        public RemoteManagement(string value)
            : base(value)
        {
        }
        /// 
        /// Finds the constant for the unique value.
        /// 
        /// The unique value for the constant
        /// The constant for the unique value
        public static RemoteManagement FindValue(string value)
        {
            return FindValue(value);
        }
        /// 
        /// Utility method to convert strings to the constant class.
        /// 
        /// The string value to convert to the constant class.
        /// 
        public static implicit operator RemoteManagement(string value)
        {
            return FindValue(value);
        }
    }
    /// 
    /// Constants used for properties of type ServiceName.
    /// 
    public class ServiceName : ConstantClass
    {
        /// 
        /// Constant EKS_ANYWHERE for ServiceName
        /// 
        public static readonly ServiceName EKS_ANYWHERE = new ServiceName("EKS_ANYWHERE");
        /// 
        /// Constant KUBERNETES for ServiceName
        /// 
        public static readonly ServiceName KUBERNETES = new ServiceName("KUBERNETES");
        /// 
        /// This constant constructor does not need to be called if the constant
        /// you are attempting to use is already defined as a static instance of 
        /// this class.
        /// This constructor should be used to construct constants that are not
        /// defined as statics, for instance if attempting to use a feature that is
        /// newer than the current version of the SDK.
        /// 
        public ServiceName(string value)
            : base(value)
        {
        }
        /// 
        /// Finds the constant for the unique value.
        /// 
        /// The unique value for the constant
        /// The constant for the unique value
        public static ServiceName FindValue(string value)
        {
            return FindValue(value);
        }
        /// 
        /// Utility method to convert strings to the constant class.
        /// 
        /// The string value to convert to the constant class.
        /// 
        public static implicit operator ServiceName(string value)
        {
            return FindValue(value);
        }
    }
    /// 
    /// Constants used for properties of type ShipmentState.
    /// 
    public class ShipmentState : ConstantClass
    {
        /// 
        /// Constant RECEIVED for ShipmentState
        /// 
        public static readonly ShipmentState RECEIVED = new ShipmentState("RECEIVED");
        /// 
        /// Constant RETURNED for ShipmentState
        /// 
        public static readonly ShipmentState RETURNED = new ShipmentState("RETURNED");
        /// 
        /// This constant constructor does not need to be called if the constant
        /// you are attempting to use is already defined as a static instance of 
        /// this class.
        /// This constructor should be used to construct constants that are not
        /// defined as statics, for instance if attempting to use a feature that is
        /// newer than the current version of the SDK.
        /// 
        public ShipmentState(string value)
            : base(value)
        {
        }
        /// 
        /// Finds the constant for the unique value.
        /// 
        /// The unique value for the constant
        /// The constant for the unique value
        public static ShipmentState FindValue(string value)
        {
            return FindValue(value);
        }
        /// 
        /// Utility method to convert strings to the constant class.
        /// 
        /// The string value to convert to the constant class.
        /// 
        public static implicit operator ShipmentState(string value)
        {
            return FindValue(value);
        }
    }
    /// 
    /// Constants used for properties of type ShippingLabelStatus.
    /// 
    public class ShippingLabelStatus : ConstantClass
    {
        /// 
        /// Constant Failed for ShippingLabelStatus
        /// 
        public static readonly ShippingLabelStatus Failed = new ShippingLabelStatus("Failed");
        /// 
        /// Constant InProgress for ShippingLabelStatus
        /// 
        public static readonly ShippingLabelStatus InProgress = new ShippingLabelStatus("InProgress");
        /// 
        /// Constant Succeeded for ShippingLabelStatus
        /// 
        public static readonly ShippingLabelStatus Succeeded = new ShippingLabelStatus("Succeeded");
        /// 
        /// Constant TimedOut for ShippingLabelStatus
        /// 
        public static readonly ShippingLabelStatus TimedOut = new ShippingLabelStatus("TimedOut");
        /// 
        /// This constant constructor does not need to be called if the constant
        /// you are attempting to use is already defined as a static instance of 
        /// this class.
        /// This constructor should be used to construct constants that are not
        /// defined as statics, for instance if attempting to use a feature that is
        /// newer than the current version of the SDK.
        /// 
        public ShippingLabelStatus(string value)
            : base(value)
        {
        }
        /// 
        /// Finds the constant for the unique value.
        /// 
        /// The unique value for the constant
        /// The constant for the unique value
        public static ShippingLabelStatus FindValue(string value)
        {
            return FindValue(value);
        }
        /// 
        /// Utility method to convert strings to the constant class.
        /// 
        /// The string value to convert to the constant class.
        /// 
        public static implicit operator ShippingLabelStatus(string value)
        {
            return FindValue(value);
        }
    }
    /// 
    /// Constants used for properties of type ShippingOption.
    /// 
    public class ShippingOption : ConstantClass
    {
        /// 
        /// Constant EXPRESS for ShippingOption
        /// 
        public static readonly ShippingOption EXPRESS = new ShippingOption("EXPRESS");
        /// 
        /// Constant NEXT_DAY for ShippingOption
        /// 
        public static readonly ShippingOption NEXT_DAY = new ShippingOption("NEXT_DAY");
        /// 
        /// Constant SECOND_DAY for ShippingOption
        /// 
        public static readonly ShippingOption SECOND_DAY = new ShippingOption("SECOND_DAY");
        /// 
        /// Constant STANDARD for ShippingOption
        /// 
        public static readonly ShippingOption STANDARD = new ShippingOption("STANDARD");
        /// 
        /// This constant constructor does not need to be called if the constant
        /// you are attempting to use is already defined as a static instance of 
        /// this class.
        /// This constructor should be used to construct constants that are not
        /// defined as statics, for instance if attempting to use a feature that is
        /// newer than the current version of the SDK.
        /// 
        public ShippingOption(string value)
            : base(value)
        {
        }
        /// 
        /// Finds the constant for the unique value.
        /// 
        /// The unique value for the constant
        /// The constant for the unique value
        public static ShippingOption FindValue(string value)
        {
            return FindValue(value);
        }
        /// 
        /// Utility method to convert strings to the constant class.
        /// 
        /// The string value to convert to the constant class.
        /// 
        public static implicit operator ShippingOption(string value)
        {
            return FindValue(value);
        }
    }
    /// 
    /// Constants used for properties of type SnowballCapacity.
    /// 
    public class SnowballCapacity : ConstantClass
    {
        /// 
        /// Constant NoPreference for SnowballCapacity
        /// 
        public static readonly SnowballCapacity NoPreference = new SnowballCapacity("NoPreference");
        /// 
        /// Constant T100 for SnowballCapacity
        /// 
        public static readonly SnowballCapacity T100 = new SnowballCapacity("T100");
        /// 
        /// Constant T13 for SnowballCapacity
        /// 
        public static readonly SnowballCapacity T13 = new SnowballCapacity("T13");
        /// 
        /// Constant T14 for SnowballCapacity
        /// 
        public static readonly SnowballCapacity T14 = new SnowballCapacity("T14");
        /// 
        /// Constant T240 for SnowballCapacity
        /// 
        public static readonly SnowballCapacity T240 = new SnowballCapacity("T240");
        /// 
        /// Constant T32 for SnowballCapacity
        /// 
        public static readonly SnowballCapacity T32 = new SnowballCapacity("T32");
        /// 
        /// Constant T42 for SnowballCapacity
        /// 
        public static readonly SnowballCapacity T42 = new SnowballCapacity("T42");
        /// 
        /// Constant T50 for SnowballCapacity
        /// 
        public static readonly SnowballCapacity T50 = new SnowballCapacity("T50");
        /// 
        /// Constant T8 for SnowballCapacity
        /// 
        public static readonly SnowballCapacity T8 = new SnowballCapacity("T8");
        /// 
        /// Constant T80 for SnowballCapacity
        /// 
        public static readonly SnowballCapacity T80 = new SnowballCapacity("T80");
        /// 
        /// Constant T98 for SnowballCapacity
        /// 
        public static readonly SnowballCapacity T98 = new SnowballCapacity("T98");
        /// 
        /// This constant constructor does not need to be called if the constant
        /// you are attempting to use is already defined as a static instance of 
        /// this class.
        /// This constructor should be used to construct constants that are not
        /// defined as statics, for instance if attempting to use a feature that is
        /// newer than the current version of the SDK.
        /// 
        public SnowballCapacity(string value)
            : base(value)
        {
        }
        /// 
        /// Finds the constant for the unique value.
        /// 
        /// The unique value for the constant
        /// The constant for the unique value
        public static SnowballCapacity FindValue(string value)
        {
            return FindValue(value);
        }
        /// 
        /// Utility method to convert strings to the constant class.
        /// 
        /// The string value to convert to the constant class.
        /// 
        public static implicit operator SnowballCapacity(string value)
        {
            return FindValue(value);
        }
    }
    /// 
    /// Constants used for properties of type SnowballType.
    /// 
    public class SnowballType : ConstantClass
    {
        /// 
        /// Constant EDGE for SnowballType
        /// 
        public static readonly SnowballType EDGE = new SnowballType("EDGE");
        /// 
        /// Constant EDGE_C for SnowballType
        /// 
        public static readonly SnowballType EDGE_C = new SnowballType("EDGE_C");
        /// 
        /// Constant EDGE_CG for SnowballType
        /// 
        public static readonly SnowballType EDGE_CG = new SnowballType("EDGE_CG");
        /// 
        /// Constant EDGE_S for SnowballType
        /// 
        public static readonly SnowballType EDGE_S = new SnowballType("EDGE_S");
        /// 
        /// Constant RACK_5U_C for SnowballType
        /// 
        public static readonly SnowballType RACK_5U_C = new SnowballType("RACK_5U_C");
        /// 
        /// Constant SNC1_HDD for SnowballType
        /// 
        public static readonly SnowballType SNC1_HDD = new SnowballType("SNC1_HDD");
        /// 
        /// Constant SNC1_SSD for SnowballType
        /// 
        public static readonly SnowballType SNC1_SSD = new SnowballType("SNC1_SSD");
        /// 
        /// Constant STANDARD for SnowballType
        /// 
        public static readonly SnowballType STANDARD = new SnowballType("STANDARD");
        /// 
        /// Constant V3_5C for SnowballType
        /// 
        public static readonly SnowballType V3_5C = new SnowballType("V3_5C");
        /// 
        /// Constant V3_5S for SnowballType
        /// 
        public static readonly SnowballType V3_5S = new SnowballType("V3_5S");
        /// 
        /// This constant constructor does not need to be called if the constant
        /// you are attempting to use is already defined as a static instance of 
        /// this class.
        /// This constructor should be used to construct constants that are not
        /// defined as statics, for instance if attempting to use a feature that is
        /// newer than the current version of the SDK.
        /// 
        public SnowballType(string value)
            : base(value)
        {
        }
        /// 
        /// Finds the constant for the unique value.
        /// 
        /// The unique value for the constant
        /// The constant for the unique value
        public static SnowballType FindValue(string value)
        {
            return FindValue(value);
        }
        /// 
        /// Utility method to convert strings to the constant class.
        /// 
        /// The string value to convert to the constant class.
        /// 
        public static implicit operator SnowballType(string value)
        {
            return FindValue(value);
        }
    }
    /// 
    /// Constants used for properties of type StorageUnit.
    /// 
    public class StorageUnit : ConstantClass
    {
        /// 
        /// Constant TB for StorageUnit
        /// 
        public static readonly StorageUnit TB = new StorageUnit("TB");
        /// 
        /// This constant constructor does not need to be called if the constant
        /// you are attempting to use is already defined as a static instance of 
        /// this class.
        /// This constructor should be used to construct constants that are not
        /// defined as statics, for instance if attempting to use a feature that is
        /// newer than the current version of the SDK.
        /// 
        public StorageUnit(string value)
            : base(value)
        {
        }
        /// 
        /// Finds the constant for the unique value.
        /// 
        /// The unique value for the constant
        /// The constant for the unique value
        public static StorageUnit FindValue(string value)
        {
            return FindValue(value);
        }
        /// 
        /// Utility method to convert strings to the constant class.
        /// 
        /// The string value to convert to the constant class.
        /// 
        public static implicit operator StorageUnit(string value)
        {
            return FindValue(value);
        }
    }
    /// 
    /// Constants used for properties of type TransferOption.
    /// 
    public class TransferOption : ConstantClass
    {
        /// 
        /// Constant EXPORT for TransferOption
        /// 
        public static readonly TransferOption EXPORT = new TransferOption("EXPORT");
        /// 
        /// Constant IMPORT for TransferOption
        /// 
        public static readonly TransferOption IMPORT = new TransferOption("IMPORT");
        /// 
        /// Constant LOCAL_USE for TransferOption
        /// 
        public static readonly TransferOption LOCAL_USE = new TransferOption("LOCAL_USE");
        /// 
        /// This constant constructor does not need to be called if the constant
        /// you are attempting to use is already defined as a static instance of 
        /// this class.
        /// This constructor should be used to construct constants that are not
        /// defined as statics, for instance if attempting to use a feature that is
        /// newer than the current version of the SDK.
        /// 
        public TransferOption(string value)
            : base(value)
        {
        }
        /// 
        /// Finds the constant for the unique value.
        /// 
        /// The unique value for the constant
        /// The constant for the unique value
        public static TransferOption FindValue(string value)
        {
            return FindValue(value);
        }
        /// 
        /// Utility method to convert strings to the constant class.
        /// 
        /// The string value to convert to the constant class.
        /// 
        public static implicit operator TransferOption(string value)
        {
            return FindValue(value);
        }
    }
}