using DeepDrftModels.Enums;

namespace DeepDrftModels.DTOs;

/// <summary>
/// Wire payload for <c>POST api/event/play</c> (Phase 16 §2.2 / §4.3). The client sends only what it
/// cheaply knows — the track key and the client-computed completion bucket; the server resolves the
/// release. No duration or raw position is transmitted (a privacy plus — only a coarse bucket leaves
/// the browser). <see cref="AnonId"/> is reserved for wave 16.3 and stays null in wave 16.1.
/// </summary>
public class PlayEventDto
{
    public string? TrackEntryKey { get; set; }

    public PlayBucket Bucket { get; set; }

    public string? AnonId { get; set; }
}
