From e81cc1e6946bc495bef1b99887a79f27b891bf4d Mon Sep 17 00:00:00 2001 From: Slava Shpitalny Date: Wed, 9 Mar 2016 21:01:57 +0200 Subject: [PATCH 1/2] add promise.prototype.finally.d.ts --- promise.prototype.finally/promise.prototype.finally.d.ts | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 promise.prototype.finally/promise.prototype.finally.d.ts diff --git a/promise.prototype.finally/promise.prototype.finally.d.ts b/promise.prototype.finally/promise.prototype.finally.d.ts new file mode 100644 index 0000000000..d8c94069c7 --- /dev/null +++ b/promise.prototype.finally/promise.prototype.finally.d.ts @@ -0,0 +1,5 @@ +declare module 'es6-promise/dist/es6-promise' { + export interface Promise { + finally?(onFinally?: () => U | Promise): Promise; + } +} From ab0cff75e0dfc980d42cdfa3c6671fda34a82220 Mon Sep 17 00:00:00 2001 From: Slava Shpitalny Date: Fri, 1 Jul 2016 14:32:05 +0300 Subject: [PATCH 2/2] add tests to promise.prototype.finally and fix it --- .../promise.prototype.finally-tests.ts | 12 ++++++++++++ .../promise.prototype.finally.d.ts | 11 +++++++---- 2 files changed, 19 insertions(+), 4 deletions(-) create mode 100644 promise.prototype.finally/promise.prototype.finally-tests.ts diff --git a/promise.prototype.finally/promise.prototype.finally-tests.ts b/promise.prototype.finally/promise.prototype.finally-tests.ts new file mode 100644 index 0000000000..8ab0c22b98 --- /dev/null +++ b/promise.prototype.finally/promise.prototype.finally-tests.ts @@ -0,0 +1,12 @@ +/// + +var promise = new Promise((resolve, reject) => { + resolve(true); +}); + +promise.finally(() => {}); +promise.then(() => {}, () => {}).finally(() => {}); +promise.catch(() => {}).finally(() => {}); + +var allPromise = Promise.all([promise]); +allPromise.finally(() => {}); diff --git a/promise.prototype.finally/promise.prototype.finally.d.ts b/promise.prototype.finally/promise.prototype.finally.d.ts index d8c94069c7..6e72b6e1d4 100644 --- a/promise.prototype.finally/promise.prototype.finally.d.ts +++ b/promise.prototype.finally/promise.prototype.finally.d.ts @@ -1,5 +1,8 @@ -declare module 'es6-promise/dist/es6-promise' { - export interface Promise { - finally?(onFinally?: () => U | Promise): Promise; - } +// Type definitions for promise.prototype.finally v1.0.1 +// Project: https://github.com/matthew-andrews/Promise.prototype.finally +// Definitions by: Slava Shpitalny +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +declare interface Promise { + finally(onFinally?: () => U | Promise): Promise; }