$problems Unmet dependencies, in a stable order. */ public function __construct( private readonly array $problems ) {} /** * Whether abilities may be registered at all (no blocking problem). */ public function can_register_abilities(): bool { foreach ( $this->problems as $problem ) { if ( $problem->blocking ) { return false; } } return true; } /** * Whether WooCommerce Multilingual is available for currency and sync-aware abilities. */ public function has_wcml(): bool { foreach ( $this->problems as $problem ) { if ( DependencyProblem::WCML === $problem->dependency ) { return false; } } return true; } /** * All unmet dependencies. * * @return list */ public function problems(): array { return $this->problems; } }