using System;

namespace Toolbox.Docking.Api.Data
{
    /// <summary>
    /// Toolbox data value with associated metadata
    /// </summary>
    [Serializable]
    public sealed class TbDescribedData
    {
        /// <summary>
        /// Initializes a new instance of the TbDescribedData class 
        /// </summary>
        /// <param name="data">The Toolbox data value object</param>
        /// <param name="metadata">The assigned metadata</param>
        public TbDescribedData(TbData data, TbMetadata metadata)
        {
            Data = data;
            Metadata = metadata;
        }
        /// <summary>
        /// The data value.
        /// </summary>
        public TbData Data { get; }
        /// <summary>
        /// The assigned metadata.
        /// </summary>
        public TbMetadata Metadata { get; }
    }
}