progressToken = $progressToken; } /** * Creates an instance from an array. * * @param array{ * progressToken?: string|number|null * } $data * @phpstan-param array $data * @return self */ public static function fromArray(array $data): self { /** @var string|number|null $progressToken */ $progressToken = isset($data['progressToken']) ? self::asStringOrNumberOrNull($data['progressToken']) : null; return new self( $progressToken ); } /** * Converts the instance to an array. * * @return array */ public function toArray(): array { $result = []; if ($this->progressToken !== null) { $result['progressToken'] = $this->progressToken; } return $result; } /** * @return string|number|null */ public function getProgressToken() { return $this->progressToken; } }