Interface TypeEquality

Analyzes, whether there is an equality-relationship between two types.

In contrast to type comparisons with type1 === type2 or type1.identifier === type2.identifier, equality will take alias types and so on into account as well.

interface TypeEquality {
    areTypesEqual(type1: Type, type2: Type): boolean;
    getTypeEqualityProblem(
        type1: Type,
        type2: Type,
    ): undefined | TypeEqualityProblem;
}

Implemented by

Methods