[ new Assert\NotNull(), new Assert\Type('string'), new Assert\Length(['min' => 1]), ], 'language' => [ new Assert\NotNull(), new Assert\Type('string'), new Assert\Choice(['php']), ], 'type' => [ new Assert\NotNull(), new Assert\Type('string'), new Assert\Choice(['drupal-project', 'php-library']), ], 'database' => new Assert\Optional(), 'drupal' => new Assert\Optional(), 'docker-compose' => new Assert\Optional(), 'dockerfile' => new Assert\Optional(), // TODO: this should be a boolean if present. 'justfile' => new Assert\Optional(), 'php' => new Assert\Optional(), 'web' => new Assert\Optional(), ], ); return $validator->validate($configurationData, $constraint, $groups); } }