items( $items ) : $array; } /** * Creates a schema for an object. * * @param array|null $properties Properties of the object. */ public static function object( ?array $properties = null ): Object_Schema { $object = new Object_Schema(); return null === $properties ? $object : $object->properties( $properties ); } /** * Creates a schema that allows a value to match one of the given schemas. * * @param Schema[] $schemas List of schemas. */ public static function one_of( array $schemas ): One_Of_Schema { return new One_Of_Schema( $schemas ); } /** * Creates a schema that allows a value to match any of the given schemas. * * @param Schema[] $schemas List of schemas. */ public static function any_of( array $schemas ): Any_Of_Schema { return new Any_Of_Schema( $schemas ); } }