import React, { DependencyList, ReactNode, useEffect, Dispatch, SetStateAction } from 'react'; declare function useAnchorTag(): void; declare function useBaseUrl(getUrlFn: () => string, defaultUrl?: string): string; declare function useContextWithError(ctx: React.Context): T; type Maybe = T | null | undefined; type ReturnType$6 = Readonly<{ active: boolean; start: () => void; stop: () => void; }>; declare function useDelay(length?: number, errors?: ReadonlyArray>): ReturnType$6; type ReturnType$5 = { onDownload: (contents: string) => void; }; declare function createLink(href: string, fileName?: string): void; declare function useDownloadFile(fileName: string, fileType?: string): ReturnType$5; declare function useEffectAsync(fn: (s: { subscribed: boolean; }) => Promise, deps?: DependencyList): void; declare function useEffectOnMount(fn: () => void): void; declare function useElementIsVisible(id: string, rerender?: boolean): boolean; type ReturnType$4 = { setScrollToTop: (t: boolean) => void; setRefocus: (r: boolean) => void; }; declare function useFocus(containerId?: string): ReturnType$4; type KeyMap = Record; type HotKeyHandlers = Record void>; type ReturnType$3 = { keyMap?: KeyMap; handlers: HotKeyHandlers; }; declare function useHotKeysForToggle(toggle: () => void): ReturnType$3; type GlobalHotKeysProps = { keyMap?: KeyMap; handlers?: HotKeyHandlers; children?: ReactNode; }; declare function GlobalHotKeys({ keyMap, handlers, children, }: GlobalHotKeysProps): React.FunctionComponentElement; declare function useInterval(callback: () => void, delayMs: number | null): void; declare function useIsSignedIn(tokenKey: string): boolean; declare const useIsomorphicLayoutEffect: typeof useEffect; declare function useOnClickOutside(excludingRef: React.MutableRefObject, action: () => void): void; declare function useReactiveHeight(): E["clientHeight"]; declare function useReactiveElementHeight(elem?: E | null): E["clientHeight"]; declare function useReactiveWidth(mobileBreakpoint?: number): { clientWidth: E["clientWidth"]; isMobile: boolean; }; type ReturnType$2 = { history: string[]; addQuery: (q: string) => void; addMutation: (q: string) => void; queryIsRecentMutation: (q: string) => boolean; getNextQuery: () => string | undefined; getPrevQuery: (shouldSkipFirst: (s: string) => boolean) => string | undefined; queryIdx: number | undefined; }; declare function useSessionQueryHistory(databaseName: string): ReturnType$2; type ReturnType$1 = { containerHeight: number; }; declare function useSetContainerHeight(componentID: string): ReturnType$1; declare function useSetState>(initialState: S): [S, React.Dispatch>]; type ReturnType = [string, Dispatch>]; declare function useStateWithSessionStorage(storageKey: string, defaultValue?: string): ReturnType; export { GlobalHotKeys, createLink, useAnchorTag, useBaseUrl, useContextWithError, useDelay, useDownloadFile, useEffectAsync, useEffectOnMount, useElementIsVisible, useFocus, useHotKeysForToggle, useInterval, useIsSignedIn, useIsomorphicLayoutEffect, useOnClickOutside, useReactiveElementHeight, useReactiveHeight, useReactiveWidth, useSessionQueryHistory, useSetContainerHeight, useSetState, useStateWithSessionStorage };