package io.delphiplatform.api.v3.model.trackposition;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;

import org.openapitools.jackson.nullable.JsonNullable;

import java.time.LocalDate;

import lombok.Builder;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

@Builder
@Getter
@Setter
@EqualsAndHashCode
@ToString
@JsonPropertyOrder(alphabetic = true)
public class PublicPlaylistTrackPositionSummary {

    @JsonProperty("isrc")
    private String isrc;

    @JsonProperty("date")
    @org.springframework.format.annotation.DateTimeFormat(iso = org.springframework.format.annotation.DateTimeFormat.ISO.DATE)
    private JsonNullable<LocalDate> date;

    @JsonProperty("dsp")
    private JsonNullable<String> dsp;

    @JsonProperty("total_playlists")
    private JsonNullable<Integer> totalPlaylists;
}

