import React, { type ElementType, type MutableRefObject, type Ref } from 'react'; import type { Props } from '../../types.js'; import { type HasDisplayName, type RefProp } from '../../utils/render.js'; declare let DEFAULT_PORTAL_TAG: React.ExoticComponent<{ children?: React.ReactNode; }>; type PortalRenderPropArg = {}; type PortalPropsWeControl = never; export type PortalProps = Props; declare function PortalFn(props: PortalProps, ref: Ref): React.JSX.Element | null; declare let DEFAULT_GROUP_TAG: React.ExoticComponent<{ children?: React.ReactNode; }>; type GroupRenderPropArg = {}; type GroupPropsWeControl = never; export type PortalGroupProps = Props; }>; declare function GroupFn(props: PortalGroupProps, ref: Ref): React.JSX.Element; export declare function useNestedPortals(): readonly [React.MutableRefObject, ({ children }: { children: React.ReactNode; }) => React.JSX.Element]; export interface _internal_ComponentPortal extends HasDisplayName { (props: PortalProps & RefProp): React.JSX.Element; } export interface _internal_ComponentPortalGroup extends HasDisplayName { (props: PortalGroupProps & RefProp): React.JSX.Element; } export declare let PortalGroup: _internal_ComponentPortalGroup; export declare let Portal: _internal_ComponentPortal & { /** @deprecated use `` instead of `` */ Group: _internal_ComponentPortalGroup; }; export {};