1: <?php declare(strict_types = 1);
2:
3: namespace PHPStan\Type;
4:
5: use PHPStan\Php\PhpVersion;
6: use PHPStan\TrinaryLogic;
7:
8: /** @api */
9: interface CompoundType extends Type
10: {
11:
12: public function isAcceptedBy(Type $acceptingType, bool $strictTypes): AcceptsResult;
13:
14: public function isSubTypeOf(Type $otherType): IsSuperTypeOfResult;
15:
16: public function isGreaterThan(Type $otherType, PhpVersion $phpVersion): TrinaryLogic;
17:
18: public function isGreaterThanOrEqual(Type $otherType, PhpVersion $phpVersion): TrinaryLogic;
19:
20: }
21: