$features */ public function __construct( private string $name, private bool $direct, private array $features ) { } public function name(): string { return $this->name; } public function label(): string { return $this->name; } public function description(): string { return ''; } public function inputSchema(): array { return ['type' => 'object']; } public function outputSchema(): ?array { return null; } public function annotations(): array { return []; } public function isDirect(): bool { return $this->direct; } public function permission(array $input): bool|WP_Error { return true; } public function execute(array $input): mixed { return []; } public function diviFeatures(array $input): array { return $this->features; } }