@harvest-profit/npk
Version:
NPK UI Design System
61 lines • 1.9 kB
TypeScript
import React, { ReactNode, CSSProperties } from 'react';
interface MenuProps {
children: ReactNode;
variant?: 'select' | 'menu' | null;
arrow?: boolean | null;
autoDismiss?: boolean | 'menu';
placement?: 'bottom' | 'bottom-start' | 'bottom-end' | 'top' | 'top-start' | 'top-end' | 'left' | 'left-start' | 'left-end' | 'right' | 'right-start' | 'right-end';
initialFocus?: number;
onOpen?: () => void;
onClose?: () => void;
[key: string]: any;
}
declare const Menu: React.FC<MenuProps> & {
Overlay: React.FC<MenuOverlayProps>;
Divider: React.FC<MenuDividerProps>;
Section: React.FC<MenuSectionProps>;
List: React.FC<MenuListProps>;
Item: React.FC<MenuItemProps>;
Header: React.FC<MenuHeaderProps>;
Footer: React.FC<MenuFooterProps>;
useAnchor: (props?: Record<string, any>) => [React.Ref<any>, Record<string, any>];
Anchor: React.FC<MenuAnchorProps>;
};
interface MenuOverlayProps {
children: ReactNode;
style?: CSSProperties;
[key: string]: any;
}
interface MenuAnchorProps {
render?: (args: [React.Ref<any>, any]) => ReactNode;
}
interface MenuDividerProps {
className?: string;
[key: string]: any;
}
interface MenuSectionProps {
className?: string;
children: ReactNode;
[key: string]: any;
}
interface MenuListProps {
className?: string;
[key: string]: any;
}
interface MenuItemProps {
as?: keyof JSX.IntrinsicElements | React.ComponentType<any>;
block?: boolean;
className?: string;
[key: string]: any;
}
interface MenuHeaderProps {
className?: string;
[key: string]: any;
}
interface MenuFooterProps {
className?: string;
[key: string]: any;
}
export default Menu;
export type { MenuProps, MenuOverlayProps, MenuDividerProps, MenuSectionProps, MenuListProps, MenuItemProps, MenuHeaderProps, MenuFooterProps };
//# sourceMappingURL=Menu.d.ts.map