diff --git a/types/angular/angular-tests.ts b/types/angular/angular-tests.ts index 6d3886edc6..b3a8f2fd67 100644 --- a/types/angular/angular-tests.ts +++ b/types/angular/angular-tests.ts @@ -1545,3 +1545,23 @@ const directiveFactoryWithGeneric2: ng.IDirectiveFactory => { return ($scope: MyScope, templateElement: MyElement, templateAttributes: MyAttributes, controller: MyController) => {return; }; }; + +angular.module('WithGenerics', []).directive('usingDirectiveFactoryWithGeneric', directiveFactoryWithGeneric).directive('usingDirectiveFactoryWithGeneric2', directiveFactoryWithGeneric2); + +class DirectiveWithGenerics implements ng.IDirective { + restrict = 'EAC'; + + compile(templateElement: MyElement) { + return { + pre: this.link + }; + } + + static instance(): ng.IDirective { + return new DirectiveWithGenerics(); + } + + link($scope: MyScope, templateElement: MyElement, templateAttributes: MyAttributes, controller: MyController) {} +} + +angular.module('WithGenerics', []).directive('directiveWithGenerics', DirectiveWithGenerics.instance);