video-ad-sdk
Version:
VAST/VPAID SDK that allows video ads to be played on top of any player
18 lines (14 loc) • 359 B
text/typescript
interface Deferred<T> {
resolve(result: T): void
reject(error: Error): void
promise: Promise<T>
}
export const defer = <T>(): Deferred<T> => {
const deferred = {} as Deferred<T>
const promise = new Promise<T>((resolve, reject) => {
deferred.resolve = resolve
deferred.reject = reject
})
deferred.promise = promise
return deferred
}