/promise-completion-source

Creates a promise producer which controls the completion/rejection of the promise available through the .promise key.

Primary LanguageTypeScriptMIT LicenseMIT

Promise completion source

Build Status NPM Package Greenkeeper badge

Creates a promise producer which controls the completion/rejection of the promise available through the .promise key.

Example

import { PromiseCompletionSource } from 'promise-completion-source'

const promiseCompletionSource = new PromiseCompletionSource<Result>()

// This is a promise which can be awaited or passed around as a future
const promise = promiseCompletionSource.promise

// Then you can resolve/reject using the completion source
promiseCompletionSource.resolve(result)
// or
promiseCompletionSource.reject(new Error('Some error'))

// You can also check completion
const isPromiseCompleted = promiseCompletionSource.completed