using System;

namespace Library.Eaf.Management.ConfigurationData.CellAutomation;

[System.Runtime.Serialization.DataContractAttribute(IsReference = true)]
public class ModelObjectParameterDefinition : IConfigurationObject
{
    public ModelObjectParameterDefinition() { }
    public ModelObjectParameterDefinition(string name, ModelObjectParameterType valueType, object defaultValue) { }
    public ModelObjectParameterDefinition(string name, Type enumType, object defaultValue) { }

    [System.Runtime.Serialization.DataMemberAttribute]
    public virtual long Id { get; set; }
    [System.Runtime.Serialization.DataMemberAttribute]
    public virtual string Name { get; set; }
    [System.Runtime.Serialization.DataMemberAttribute]
    public virtual string Value { get; set; }
    [System.Runtime.Serialization.DataMemberAttribute]
    public virtual ModelObjectParameterType ValueType { get; set; }
    [System.Runtime.Serialization.DataMemberAttribute]
    public virtual string EnumType { get; set; }

    public virtual ModelObjectParameterDefinition? Clone() => null;
    public virtual bool IsValidValue(string value) => false;
}