using JetBrains.Annotations;
  using Questionable.Controller;
  using Questionable.Functions;
 +using Questionable.Model;
  using Questionable.Model.Questing;
+ using Questionable.Windows;
  using Questionable.Windows.QuestComponents;
  
  namespace Questionable.External;
          return true;
      }
  
+     private bool ImportQuestPriority(string encodedQuestPriority)
+     {
+         List<ElementId> questElements = PriorityWindow.DecodeQuestPriority(encodedQuestPriority);
+         _questController.ImportQuestPriority(questElements);
+         return true;
+     }
+ 
+     private bool ClearQuestPriority()
+     {
+         _questController.ClearQuestPriority();
+         return true;
+     }
+     
+     private bool AddQuestPriority(string questId)
+     {
+         if (ElementId.TryFromString(questId, out var elementId) && elementId != null &&
+             _questRegistry.TryGetQuest(elementId, out var quest))
+         {
+             return _questController.AddQuestPriority(elementId);
+         }
+         return true;
+     }
+     
+     private bool InsertQuestPriority(int index, string questId)
+     {
+         if (ElementId.TryFromString(questId, out var elementId) && elementId != null &&
+             _questRegistry.TryGetQuest(elementId, out var quest))
+         {
+             return _questController.InsertQuestPriority(index, elementId);
+         }
+         return true;
+     }
+ 
      public void Dispose()
      {
 +        _isQuestLocked.UnregisterFunc();
          _startSingleQuest.UnregisterFunc();
          _startQuest.UnregisterFunc();
          _getCurrentlyActiveEventQuests.UnregisterFunc();