using System.Collections.Generic;
namespace Flow.Launcher.Plugin
{
///
/// Synchronous Plugin Model for Flow Launcher
///
/// If the Querying or Init method requires high IO transmission
/// or performaing CPU intense jobs (performing better with cancellation), please try the IAsyncPlugin interface
///
///
public interface IPlugin
{
///
/// Querying when user's search changes
///
/// This method will be called within a Task.Run,
/// so please avoid synchrously wait for long.
///
///
/// Query to search
///
List Query(Query query);
///
/// Initialize plugin
///
///
void Init(PluginInitContext context);
}
}