import React, { ReactNode, RefObject } from "react"; type State = { isLoading: boolean; message?: string | React.ReactNode; ref?: RefObject; }; type Context = { state: State; setRef: (ref: RefObject) => void; setMessage: (message: string) => void; startLoading: () => void; stopLoading: () => void; }; type LoadingProviderProps = { children: React.ReactNode; }; type UseLoadingProps = { ref?: RefObject; message?: string; }; declare const LoadingContext: React.Context; declare function LoadingProvider({ children }: LoadingProviderProps): import("react/jsx-runtime").JSX.Element; declare function useLoading({ ref, message }?: UseLoadingProps): Context; export { LoadingContext, LoadingProvider, useLoading };