import * as react_jsx_runtime from 'react/jsx-runtime';
import { SuspenseProps as SuspenseProps$1, ComponentProps, ComponentType } from 'react';
import { P as PropsWithoutChildren } from './PropsWithoutChildren-B-UcudRB.js';
interface SuspenseProps extends SuspenseProps$1 {
/**
* With clientOnly prop, `` will return fallback in server but after mount return children in client. Since mount only happens on the client, `` can be avoid server-side rendering.
* @see https://suspensive.org/docs/react/Suspense#avoid-server-side-rendering-clientonly
*/
clientOnly?: boolean;
}
/**
* This component is just wrapping React's Suspense. to use Suspense easily in Server-side rendering environment like Next.js
* @see {@link https://suspensive.org/docs/react/Suspense Suspensive Docs}
*/
declare const Suspense: (({ clientOnly, children, fallback }: SuspenseProps) => react_jsx_runtime.JSX.Element) & {
displayName: string;
with: = Record>(suspenseProps: PropsWithoutChildren | undefined, Component: ComponentType) => ((props: TProps) => react_jsx_runtime.JSX.Element) & {
displayName: string;
};
};
export { Suspense, type SuspenseProps };