import { CSSProperties } from 'react';
export interface NavigationMenuItem {
    id: string;
    /** 标题 */
    title: string;
    /** 图标 */
    icon?: string;
    /** 描述 */
    description?: string;
    /** 子菜单 */
    children?: NavigationMenuItem[];
    /** 版本 */
    version?: string;
    /** 是否是分组 */
    isGroup?: boolean;
    /** 是否允许添加子菜单 */
    allowAddChild?: boolean;
    /** 是否允许删除 */
    allowDelete?: boolean;
    /** 是否允许编辑 */
    allowEdit?: boolean;
    /** 是否允许添加子菜单 */
    allowAddSubmenu?: boolean;
    /** 是否允许添加页面 */
    allowAddPage?: boolean;
    /** 其他属性 */
    [key: string]: any;
}
export interface PisellNavigationMenuProps {
    /** 导航菜单数据 */
    value: NavigationMenuItem[];
    /** 是否允许拖拽排序 */
    allowDrag?: boolean;
    /** 是否允许删除菜单项 */
    allowDelete?: boolean;
    /** 是否允许添加子菜单 */
    allowAddChild?: boolean;
    /** 是否允许添加根菜单 */
    allowAddRoot?: boolean;
    /** 是否禁用 */
    disabled?: boolean;
    /** 菜单项间距 */
    spacing?: number;
    /** 最大层级数 */
    maxLevel?: number;
    /** 样式 */
    style?: CSSProperties;
    /** 类名 */
    className?: string;
    /** 数据变化回调 */
    onChange?: (items: NavigationMenuItem[]) => void;
    /** 设计模式 */
    __designMode?: string;
    /** 标题 */
    title?: string;
    /** 添加子菜单回调 */
    onAddSubMenu?: (item?: NavigationMenuItem) => void;
    /** 添加页面回调 */
    onAddPage?: (item?: NavigationMenuItem) => void;
    /** 编辑回调 */
    onEdit?: (item: NavigationMenuItem) => void;
    /** 删除回调 */
    onDelete?: (item: NavigationMenuItem) => void;
}
