import { Disposable } from '@most/types';
export interface DisposeWith {
    (): DisposeWith;
    <R>(dispose: (resource: R) => void): (resource: R) => Disposable;
    <R>(dispose: (resource: R) => void, resource: R): Disposable;
}
/**
 * Create a Disposable that will use the provided
 * dispose function to dispose the resource
 */
export declare const disposeWith: DisposeWith;
