interface ICreateInitial<IRoot = any> {
    _root: IRoot | null;
    mount: (selector: string) => void;
    unmount: () => void;
}
interface IReactDOMAdapter {
    render: (element: JSX.Element, container: Element) => any;
    unmount: (container: Element, root: any) => void;
}
type TReactDOMAdapterFunction = (ReactDOM: any) => IReactDOMAdapter;
interface ICreateComponentSuspenseOptions {
    className?: string;
    LoadingComponent?: React.ComponentType<any>;
}

export type { ICreateComponentSuspenseOptions, ICreateInitial, IReactDOMAdapter, TReactDOMAdapterFunction };
