From b9e995eb9b93ee6933835d5555173ba185acb303 Mon Sep 17 00:00:00 2001 From: Marvin Luchs Date: Wed, 29 Apr 2015 10:09:09 +0200 Subject: [PATCH] ICollectionPromise should extend ng.IPromise with an array of T ICollectionPromise extends ng.IPromise is the equivalent of interface IPromise extends ng.IPromise for arrays of T. Therefore it makes no sense to extend ng.IPromise with just T. Instead it has to be an array of T. The consequence of this bug can be observed when calling Restangular.all('someEntity').getList().then((entities) => {...}) In this case the TypeScript compiler handles entities as SomeEntity, not SomeEntity[]. --- restangular/restangular.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/restangular/restangular.d.ts b/restangular/restangular.d.ts index 5a4e87483..7b8480895 100644 --- a/restangular/restangular.d.ts +++ b/restangular/restangular.d.ts @@ -15,7 +15,7 @@ declare module restangular { $object: T; } - interface ICollectionPromise extends ng.IPromise { + interface ICollectionPromise extends ng.IPromise { push(object: any): ICollectionPromise; call(methodName: string, params?: any): ICollectionPromise; get(fieldName: string): ICollectionPromise;