using Myriad.Types; namespace Myriad.Builders; public class EmbedBuilder { private readonly List _fields = new(); private Embed _embed = new(); public EmbedBuilder Title(string? title) { _embed = _embed with { Title = title }; return this; } public EmbedBuilder Description(string? description) { _embed = _embed with { Description = description }; return this; } public EmbedBuilder Url(string? url) { _embed = _embed with { Url = url }; return this; } public EmbedBuilder Color(uint? color) { _embed = _embed with { Color = color }; return this; } public EmbedBuilder Footer(Embed.EmbedFooter? footer) { _embed = _embed with { Footer = footer }; return this; } public EmbedBuilder Image(Embed.EmbedImage? image) { _embed = _embed with { Image = image }; return this; } public EmbedBuilder Thumbnail(Embed.EmbedThumbnail? thumbnail) { _embed = _embed with { Thumbnail = thumbnail }; return this; } public EmbedBuilder Author(Embed.EmbedAuthor? author) { _embed = _embed with { Author = author }; return this; } public EmbedBuilder Timestamp(string? timestamp) { _embed = _embed with { Timestamp = timestamp }; return this; } public EmbedBuilder Field(Embed.Field field) { _fields.Add(field); return this; } public Embed Build() => _embed with { Fields = _fields.ToArray() }; }