using System;
using System.Collections.Generic;
using System.Text.Json.Serialization;
using Jellyfin.Data.Enums;
using Jellyfin.Extensions.Json.Converters;
using MediaBrowser.Model.Entities;
namespace Jellyfin.Api.Models.PlaylistDtos;
///
/// Create new playlist dto.
///
public class CreatePlaylistDto
{
///
/// Gets or sets the name of the new playlist.
///
public required string Name { get; set; }
///
/// Gets or sets item ids to add to the playlist.
///
[JsonConverter(typeof(JsonCommaDelimitedArrayConverterFactory))]
public IReadOnlyList Ids { get; set; } = [];
///
/// Gets or sets the user id.
///
public Guid? UserId { get; set; }
///
/// Gets or sets the media type.
///
public MediaType? MediaType { get; set; }
///
/// Gets or sets the playlist users.
///
public IReadOnlyList Users { get; set; } = [];
///
/// Gets or sets a value indicating whether the playlist is public.
///
public bool Public { get; set; } = true;
}