namespace FrameProcessor.Domain;

/// <summary>
/// A configured frame after validation and parsing. All raw strings from
/// <c>frames.json</c> have been converted to their typed values; consumers can use
/// the contents directly without re-validating.
/// </summary>
public sealed record Frame(
    FrameName Name,
    MacAddress Mac,
    Resolution Resolution,
    Orientation Orientation,
    DitherAlgorithm Dithering,
    IReadOnlyList<PaletteEntry> Palette);
