namespace Caliburn.Micro.Core {
using System;
using System.Collections.Generic;
///
/// Used to gather the results from multiple child elements which may or may not prevent closing.
///
/// The type of child element.
public interface ICloseStrategy {
///
/// Executes the strategy.
///
/// Items that are requesting close.
/// The action to call when all enumeration is complete and the close results are aggregated.
/// The bool indicates whether close can occur. The enumerable indicates which children should close if the parent cannot.
void Execute(IEnumerable toClose, Action> callback);
}
}