|null $_meta @since 2025-11-25 * @param string|number|null $requestId @since 2025-11-25 * @param string|null $reason @since 2025-11-25 */ public function __construct( ?array $_meta = null, $requestId = null, ?string $reason = null ) { parent::__construct($_meta); $this->requestId = $requestId; $this->reason = $reason; } /** * Creates an instance from an array. * * @param array{ * _meta?: array|null, * requestId?: string|number|null, * reason?: string|null * } $data * @phpstan-param array $data * @return self */ public static function fromArray(array $data): self { /** @var string|number|null $requestId */ $requestId = isset($data['requestId']) ? self::asStringOrNumberOrNull($data['requestId']) : null; return new self( self::asArrayOrNull($data['_meta'] ?? null), $requestId, self::asStringOrNull($data['reason'] ?? null) ); } /** * Converts the instance to an array. * * @return array */ public function toArray(): array { $result = parent::toArray(); if ($this->requestId !== null) { $result['requestId'] = $this->requestId; } if ($this->reason !== null) { $result['reason'] = $this->reason; } return $result; } /** * @return string|number|null */ public function getRequestId() { return $this->requestId; } /** * @return string|null */ public function getReason(): ?string { return $this->reason; } }