$userNamespaces * @param Closure(array): array|ArchExpectation> $execute */ public function __construct( private readonly array $userNamespaces, private readonly string $name, private readonly Closure $execute, ) { parent::__construct($userNamespaces); } /** * Returns the name of the preset. */ public function name(): string { return $this->name; } /** * Executes the arch preset. */ public function execute(): void { $this->expectations = ($this->execute)($this->userNamespaces); } }