import * as React from 'react';
import React__default from 'react';

declare type HydrationComponentFunction = (props: React__default.PropsWithChildren) => JSX.Element | null;

declare function useComponentHydrated(): boolean;

declare function createHydration(): {
    HydrationContext: React__default.Context<boolean>;
    HydrationProvider: ({ children }: {
        children?: React__default.ReactNode;
    }) => JSX.Element;
    useHydrated: () => boolean;
    Server: HydrationComponentFunction;
    Client: HydrationComponentFunction;
};

declare const HydrationContext: React.Context<boolean>;
declare const HydrationProvider: ({ children }: {
    children?: React.ReactNode;
}) => JSX.Element;
declare const useHydrated: () => boolean;
declare const Server: HydrationComponentFunction;
declare const Client: HydrationComponentFunction;

export { Client, HydrationContext, HydrationProvider, Server, createHydration, useComponentHydrated, useHydrated };
