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 new file mode 100644 index 0000000000..6e72b6e1d4 --- /dev/null +++ b/promise.prototype.finally/promise.prototype.finally.d.ts @@ -0,0 +1,8 @@ +// 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; +}