ttl = $ttl; } /** * Creates an instance from an array. * * @param array{ * ttl?: int|null * } $data * @phpstan-param array $data * @return self */ public static function fromArray(array $data): self { return new self( self::asIntOrNull($data['ttl'] ?? null) ); } /** * Converts the instance to an array. * * @return array */ public function toArray(): array { $result = []; if ($this->ttl !== null) { $result['ttl'] = $this->ttl; } return $result; } /** * @return int|null */ public function getTtl(): ?int { return $this->ttl; } }