/**
 * Returns a controller object for setting a timeout that is properly cleaned up
 * once the component unmounts. New timeouts cancel and replace existing ones.
 */
export default function useTimeout(): {
    set(fn: () => void, ms?: number | undefined): void;
    clear: () => void;
};
