using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace EVCB_OCPP.Packet.Messages.SubTypes
{
    public class SampledValue
    {
        [Required]
        public string value { set; get; }

       
        [JsonConverter(typeof(StringEnumConverter))]
        public ReadingContext? context { set; get; }
       
        [JsonConverter(typeof(StringEnumConverter))]
        public ValueFormat? format { set; get; }
        
        [JsonConverter(typeof(StringEnumConverter))]
        public Measurand? measurand { set; get; }
      
        [JsonConverter(typeof(StringEnumConverter))]
        public Phase? phase { set; get; }
      
        [JsonConverter(typeof(StringEnumConverter))]
        public Location? location { set; get; }
      
        [JsonConverter(typeof(StringEnumConverter))]
        public UnitOfMeasure? unit { set; get; }


    }
}
