<?php

namespace App\Download\Action\Command;

use OneToMany\RichBundle\Contract\CommandInterface;

/**
 * @implements CommandInterface<DownloadMediaCommand>
 */
class DownloadMediaCommand implements CommandInterface
{
    public function __construct(
        public string $imdbId,
        public string $mediaType,
        public int|string|null $season = null,
        public int|string|null $episode = null,
        public string|null $url = null,
        public array|null $filter = null,
        public int|null $downloadId = null,
        public int|null $userId = null,
        public ?string $mercureAlertTopic = null,
    ) {}
}