[ SongResource::JSON_STRUCTURE, ], 'current_song', 'playback_position', ]; public function __construct(private readonly QueueState $state) { parent::__construct($state); } /** @return array */ public function toArray($request): array { return [ 'type' => 'queue-states', 'songs' => SongResource::collection($this->state->songs), 'current_song' => $this->state->currentSong ? new SongResource($this->state->currentSong) : null, 'playback_position' => $this->state->playbackPosition, ]; } }