using System.Collections.Generic; using System.Threading; using UnityEngine; namespace Unity.VisualScripting { public interface IFuzzyOptionTree { bool multithreaded { get; } GUIContent header { get; } bool searchable { get; } ICollection favorites { get; } ICollection selected { get; } bool showBackgroundWorkerProgress { get; } IFuzzyOption Option(object item); void Prewarm(); IEnumerable Root(); IEnumerable Children(object parent); IEnumerable OrderedSearchResults(string query, CancellationToken cancellation); IEnumerable SearchResults(string query, CancellationToken cancellation); string SearchResultLabel(object item, string query); string FavoritesLabel(object item); bool CanFavorite(object item); void OnFavoritesChange(); } }