using System;
using System.Collections.Generic;
using System.Threading.Tasks;
namespace Xamarin.PropertyEditing
{
public interface IAvailabilityConstraint
{
///
/// Gets a list of properties associated with the constraint.
///
///
/// This list can be empty (or null) if the constraint is not based on regular properties. Properties listed here will
/// be monitored for changes and the availability re-queried when they do change. The list of properties will not be monitored
/// for changes.
///
IReadOnlyList ConstrainingProperties { get; }
/// is null.
Task GetIsAvailableAsync (IObjectEditor editor);
}
}