* SPDX-License-Identifier: AGPL-3.0-or-later */ namespace KTXM\ChronoManager\Import; final readonly class ImportObjectEvent implements ImportEvent { /** * @param list $errors */ public function __construct( public ?string $identifier, public ImportDisposition $disposition, public array $errors = [], ) {} public function isError(): bool { return $this->disposition === ImportDisposition::Error; } /** * @return array{identifier: ?string, disposition: string, errors: list} */ public function jsonSerialize(): array { return [ 'identifier' => $this->identifier, 'disposition' => $this->disposition->value, 'errors' => $this->errors, ]; } }