28 lines
758 B
C#
28 lines
758 B
C#
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.Threading;
|
|
using BITKit;
|
|
using Cysharp.Threading.Tasks;
|
|
|
|
namespace Net.Project.B.Emoji
|
|
{
|
|
public interface IEmojiData<T>:IDescription
|
|
{
|
|
public T Clip { get; }
|
|
}
|
|
|
|
public struct EmojiData<T>:IEmojiData<T>
|
|
{
|
|
public string Name { get; set; }
|
|
public string Description { get; set; }
|
|
public T Clip { get; set; }
|
|
}
|
|
public interface IEmojiService<T>
|
|
{
|
|
public event Func<IEmojiData<T>, CancellationToken, UniTask> OnPlayAsync;
|
|
public UniTask<IReadOnlyCollection<IEmojiData<T>>> GetAllEmojis();
|
|
public UniTask Play(IEmojiData<T> emojiData,CancellationToken cancellationToken=default);
|
|
}
|
|
}
|