docs/libs/typescript.js
function checkTypeParameterListsIdentical(node, symbol) {
            if (symbol.declarations.length === 1) {
                return;
            }
            var firstDecl;
            for (var _i = 0, _a = symbol.declarations; _i < _a.length; _i++) {
                var declaration = _a[_i];
                if (declaration.kind === 221 /* ClassDeclaration */ || declaration.kind === 222 /* InterfaceDeclaration */) {
                    if (!firstDecl) {
                        firstDecl = declaration;
                    }
                    else if (!areTypeParametersIdentical(firstDecl.typeParameters, node.typeParameters)) {
                        error(node.name, ts.Diagnostics.All_declarations_of_0_must_have_identical_type_parameters, node.name.text);
                    }
                }
            }
        }
function checkTypeParameterListsIdentical(node, symbol) {
            if (symbol.declarations.length === 1) {
                return;
            }
            var firstDecl;
            for (var _i = 0, _a = symbol.declarations; _i < _a.length; _i++) {
                var declaration = _a[_i];
                if (declaration.kind === 221 /* ClassDeclaration */ || declaration.kind === 222 /* InterfaceDeclaration */) {
                    if (!firstDecl) {
                        firstDecl = declaration;
                    }
                    else if (!areTypeParametersIdentical(firstDecl.typeParameters, node.typeParameters)) {
                        error(node.name, ts.Diagnostics.All_declarations_of_0_must_have_identical_type_parameters, node.name.text);
                    }
                }
            }
        }
function checkTypeParameterListsIdentical ( node , symbol ) { if ( symbol . declarations . length === 1 ) { return ; } var firstDecl ; for ( var _i = 0 , _a = symbol . declarations ; _i < _a . length ; _i ++ ) { var declaration = _a [ _i ] ; if ( declaration . kind === 221 /* ClassDeclaration */ || declaration . kind === 222 /* InterfaceDeclaration */ ) { if ( ! firstDecl ) { firstDecl = declaration ; } else if ( ! areTypeParametersIdentical ( firstDecl . typeParameters , node . typeParameters ) ) { error ( node . name , ts . Diagnostics . All_declarations_of_0_must_have_identical_type_parameters , node . name . text ) ; } } } }
Check that type parameter lists are identical across multiple declarations
Check that type parameter lists are identical across multiple declarations