import React, { ReactNode, ReactText } from 'react'; import { OpenEventHandler } from 'rc-menu/es/interface'; import { RoleResultType, AuthUrlType } from '@jy-fe/business/es/authority'; import { PositionType } from 'src/xui-role-menu/xui-role-menu'; export type XuiQilinThemeLayoutMenuModeType = 'vertical' | 'inline'; export interface XuiQilinThemeLayoutInfoDataType { rootOrgId: string; orgId: string; postId: string; roleId: string; tenancies?: { /** 是否冻结 */ isCompanyFreezed?: number; /** 公司id */ tenancyId: string; /** 公司名称 */ tenancyName: string; /** 部分信息 */ tenancyDetps: { /** 部门id */ deptId: string; /** 部门名称 */ deptKey: string; /** 岗位信息 */ postList: { /** 岗位id */ postId: string; /** 岗位名称 */ postTitle: string; }[]; }[]; }[]; tenancyInfo: { tenancyId: ReactText; tenancyLogo?: string; tenancyName?: string; }; roles?: { defaultFlag: 0 | 1; id: string; roleName: string; }[]; userInfo?: { [key: string]: any }; postRoleResList?: PositionType[]; } export interface XuiQilinThemeLayoutRoleDataDiscopeParams { roleId: string; aidMap: { [key: string]: any; }; positionIds: string[]; positionNames: string[]; userName: string; } export interface XuiQilinThemeLayoutProps { systemType: AuthUrlType; /** 控制的模块 */ ownModule: string[]; /** umi Link */ Link: any; /** umi history */ history: any; children: ReactNode; initialState: RoleResultType | undefined; /** 无首页重定向地址 */ ignoreMainPageRedirctPath?: string; /** 横向导航栏路由 */ horizontalSelectedUrl: string; /** 点击横向滚动条后的回调 */ onSelectedHorizontalMenuCallback: (currentPathname: string) => void; /** 左侧菜单打开项 */ openedKeys: string[]; /** 左侧菜单选中项 */ selectedKeys: string[]; /** 展开或合上菜单的回调 */ onSelectedSubMenu: OpenEventHandler; /** 选中菜单项的回调 */ onSelectedMenuItem: (selectedKeys: React.ReactText[]) => void; /** 岗位切换浮窗 visible */ positionVisible: boolean; /** 岗位浮窗visible切换 */ onPositionVisible: (visible: boolean) => void; /** 权限相关数据抛出 */ roleDataDiscope: (params: XuiQilinThemeLayoutRoleDataDiscopeParams) => void; /** 初始化调用 */ effectCallback: () => void; } declare const XuiQilinThemeLayout: React.ComponentType; export default XuiQilinThemeLayout;