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

namespace CG.Chat
{
    // 不用 record，避免 Unity C# 版本不相容
    public struct ChatMessage
    {
        public string role;
        public string content;

        public ChatMessage(string role, string content)
        {
            this.role = role;
            this.content = content;
        }
    }

    public interface IChatProvider
    {
        Task<string> SendChatAsync(IReadOnlyList<ChatMessage> messages, string model, CancellationToken ct);
    }
}
