@graphql-mesh/utils
Version:
10 lines (9 loc) • 802 B
TypeScript
import type { MaybePromise } from '@whatwg-node/promise-helpers';
export declare function isDisposable(obj: any): obj is Disposable | AsyncDisposable;
export declare function dispose<T extends AsyncDisposable>(disposable: T): MaybePromise<void>;
export declare function dispose<T extends Disposable>(disposable: T): void;
export declare function dispose<T extends AsyncDisposable | Disposable>(disposable: T): MaybePromise<void>;
export declare function createDisposable(disposeFn: () => void): Disposable;
export declare function createAsyncDisposable(disposeFn: () => Promise<void>): AsyncDisposable;
export declare function makeDisposable<T>(obj: T, disposeFn: () => void): T & Disposable;
export declare function makeAsyncDisposable<T>(obj: T, disposeFn: () => Promise<void>): T & AsyncDisposable;