name; } /** * @return string * @since 30.0.0 */ public function getDescription(): string { return $this->description; } /** * @return EShapeType * @since 30.0.0 */ public function getShapeType(): EShapeType { return $this->shapeType; } /** * @return array{name: string, description: string, type: int} * @since 30.0.0 */ public function jsonSerialize(): array { return [ 'name' => $this->getName(), 'description' => $this->getDescription(), 'type' => $this->getShapeType()->value, ]; } }