/** * A possibly-async function that runs a callback or returns a promise. */ export declare type MaybeAsync = ((callback: (err?: Error | null) => void) => void) | (() => Promise | void); export interface IDeferred { resolve(value: T): void; reject(err: Error): void; } export declare const returnsPromiseLike: (fn: MaybeAsync) => fn is () => Promise; /** * Runs a possibly async function and returns a promise when it completes. */ export declare const runMaybeAsync: (fn: MaybeAsync) => Promise;