using System.Collections.Generic;
using Cysharp.Threading.Tasks;
using UnityEngine;

namespace Darkmatter.Core.Contracts.Features.DrawingCatalog
{
    public interface IDrawingTemplateCatalog
    {
        UniTask FetchAsync(); 
        IReadOnlyList<string> AllTemplateIds { get; }
        UniTask<Sprite> GetThumbnailAsync(string id);
        UniTask<IDrawingTemplate> LoadAsync(string id);
        void ReleaseAll();
        string GetNextTemplate(string currentId);
    }
}