@lobehub/ui
Version:
Lobe UI is an open-source UI component library for building AIGC web apps
100 lines (99 loc) • 3.48 kB
text/typescript
import React from "react";
import * as react_jsx_runtime61 from "react/jsx-runtime";
import { Dialog } from "@base-ui/react/dialog";
//#region src/base-ui/Modal/atoms.d.ts
interface ModalAnimationActions {
onExitComplete: () => void;
}
declare const useModalOpen: () => boolean | null;
declare const useModalActions: () => ModalAnimationActions | null;
type ModalRootProps = Dialog.Root.Props & {
onExitComplete?: () => void;
};
declare const ModalRoot: ({
open,
onExitComplete,
...rest
}: ModalRootProps) => react_jsx_runtime61.JSX.Element;
type ModalPortalProps = React.ComponentProps<typeof Dialog.Portal> & {
container?: HTMLElement | null;
};
declare const ModalPortal: ({
container,
...rest
}: ModalPortalProps) => react_jsx_runtime61.JSX.Element;
type ModalViewportProps = React.ComponentProps<typeof Dialog.Viewport>;
declare const ModalViewport: ({
className,
...rest
}: ModalViewportProps) => react_jsx_runtime61.JSX.Element;
type ModalBackdropProps = React.ComponentProps<typeof Dialog.Backdrop>;
declare const ModalBackdrop: ({
className,
style,
...rest
}: ModalBackdropProps) => react_jsx_runtime61.JSX.Element;
type ModalPopupProps = React.ComponentProps<typeof Dialog.Popup> & {
motionProps?: Record<string, any>;
panelClassName?: string;
popupStyle?: React.CSSProperties;
width?: number | string;
};
declare const ModalPopup: ({
className,
children,
width,
style,
motionProps,
panelClassName,
popupStyle,
...rest
}: ModalPopupProps) => react_jsx_runtime61.JSX.Element;
type ModalHeaderProps = React.HTMLAttributes<HTMLDivElement> & {
ref?: React.Ref<HTMLDivElement>;
};
declare const ModalHeader: ({
className,
...rest
}: ModalHeaderProps) => react_jsx_runtime61.JSX.Element;
type ModalTitleProps = React.ComponentProps<typeof Dialog.Title>;
declare const ModalTitle: ({
className,
...rest
}: ModalTitleProps) => react_jsx_runtime61.JSX.Element;
type ModalDescriptionProps = React.ComponentProps<typeof Dialog.Description>;
declare const ModalDescription: React.FC<ModalDescriptionProps>;
type ModalContentProps = React.HTMLAttributes<HTMLDivElement> & {
ref?: React.Ref<HTMLDivElement>;
};
declare const ModalContent: ({
className,
...rest
}: ModalContentProps) => react_jsx_runtime61.JSX.Element;
type ModalFooterProps = React.HTMLAttributes<HTMLDivElement> & {
ref?: React.Ref<HTMLDivElement>;
};
declare const ModalFooter: ({
className,
...rest
}: ModalFooterProps) => react_jsx_runtime61.JSX.Element;
type ModalCloseProps = React.ComponentProps<typeof Dialog.Close>;
declare const ModalClose: ({
className,
children,
...rest
}: ModalCloseProps) => react_jsx_runtime61.JSX.Element;
type ModalTriggerProps = Omit<React.ComponentPropsWithRef<typeof Dialog.Trigger>, 'children' | 'render'> & {
children?: React.ReactNode;
nativeButton?: boolean;
};
declare const ModalTrigger: ({
children,
className,
nativeButton,
ref: refProp,
...rest
}: ModalTriggerProps) => react_jsx_runtime61.JSX.Element;
//#endregion
export { ModalBackdrop, ModalBackdropProps, ModalClose, ModalCloseProps, ModalContent, ModalContentProps, ModalDescription, ModalDescriptionProps, ModalFooter, ModalFooterProps, ModalHeader, ModalHeaderProps, ModalPopup, ModalPopupProps, ModalPortal, ModalPortalProps, ModalRoot, ModalRootProps, ModalTitle, ModalTitleProps, ModalTrigger, ModalTriggerProps, ModalViewport, ModalViewportProps, useModalActions, useModalOpen };
//# sourceMappingURL=atoms.d.mts.map