<?php

declare(strict_types=1);

namespace App\DTO;

use JsonSerializable;

class SyncExecutionResult implements JsonSerializable
{
    public function __construct(
        public readonly int $itemsUpdated,
        public readonly array $additions = [],
        public readonly array $deletions = [],
        public readonly array $modifications = [],
    ) {}

    public function jsonSerialize(): array
    {
        return [
            'itemsUpdated'  => $this->itemsUpdated,
            'additions'     => $this->additions,
            'deletions'     => $this->deletions,
            'modifications' => $this->modifications,
        ];
    }
}
