using System.Diagnostics.CodeAnalysis;
using InABox.Core;

namespace InABox.Wpf;

public interface IMasterDetailControl<TMaster>
{
    TMaster? Master { get; set; }
}

public interface IMasterDetailControl<TMaster,TDetail> : IMasterDetailControl<TMaster>
{
    // If Master == null, then Master Detail is not active,
    //      and we should return .All() or .None() depending on circumstances
    // If Master != null, we need to filter by Master.ID (usually?)
    Filter<TDetail> MasterDetailFilter { get; }
}