export declare class PromiseCancelledSignal {
}
/**
 * Wrap and provide a handle for a promise to provide cancellation information inside
 * callbacks. Takes a similar approach to how an AbortController works in modern fetch.
 *
 * @see https://reactjs.org/blog/2015/12/16/ismounted-antipattern.html
 */
export declare function makeCancellable<T>(promise: Promise<T>): {
    promise: Promise<T>;
    cancel: () => void;
    isCancelled: () => boolean;
};
/**
 * Returns a ref callback and promise that resolves when the ref is attached to a mounted element.
 * Useful for coordinating async operations that depend on DOM element availability, such as
 * setting focus or measuring dimensions after mount.
 *
 * @returns An object containing a ref callback and a promise that resolves with the mounted element
 */
export declare function useMountRefPromise<T extends HTMLElement>(): {
    ref: (element: any) => void;
    promise: Promise<T>;
};
//# sourceMappingURL=promises.d.ts.map