|null $_meta @since 2024-11-05 */ public function __construct( CompleteResultCompletion $completion, ?array $_meta = null ) { parent::__construct($_meta); $this->completion = $completion; } /** * Creates an instance from an array. * * @param array{ * _meta?: array|null, * completion: array|\WP\McpSchema\Server\Core\DTO\CompleteResultCompletion * } $data * @phpstan-param array $data * @return self */ public static function fromArray(array $data): self { self::assertRequired($data, ['completion']); /** @var \WP\McpSchema\Server\Core\DTO\CompleteResultCompletion $completion */ $completion = is_array($data['completion']) ? CompleteResultCompletion::fromArray(self::asArray($data['completion'])) : $data['completion']; return new self( $completion, self::asArrayOrNull($data['_meta'] ?? null) ); } /** * Converts the instance to an array. * * @return array */ public function toArray(): array { $result = parent::toArray(); $result['completion'] = $this->completion->toArray(); return $result; } /** * @return \WP\McpSchema\Server\Core\DTO\CompleteResultCompletion */ public function getCompletion(): CompleteResultCompletion { return $this->completion; } }