import { User } from 'oidc-client'; import { ServiceBus } from './service-bus.type'; /** * 认证 */ export interface Authentication { /** * 服务总线 * */ serviceBus: ServiceBus; /** * 获取已认证用户信息 * */ getAuthentication(): User | null; /** * 设置认证用户信息 * */ setAuthentication(user: User): void; /** * 登录 * */ signIn(): Promise; /** * 登出 */ signOut(): Promise; } /** * 面包屑 * */ export interface Breadcrumb { label: string; url: string; } export declare type Params = { [key: string]: any; }; export interface HeaderBreadcrumb { /** * 更新面包屑 * */ update(breadcrumbs: Breadcrumb[]): void; } export interface HeaderProgress { /** * 显示加载动画 */ show(): void; /** * 隐藏加载动画 */ hide(): void; } /** * 头部tab * */ export interface HeaderTab { add(routeUrl: any): Promise; } /** * 头部 * */ export interface Header { /** * 头部滚动条 */ progress: HeaderProgress; /** * 头部面包屑 */ breadcrumb: HeaderBreadcrumb; /** * 头部tab */ tab: HeaderTab; } /** * 微前端之间交互通道接口 */ export interface Hub extends MicroAppStateActions { /** * window对象 */ window: Window; /** * 认证 */ authentication: Authentication; /** * 微前端间通讯总线 */ serviceBus: ServiceBus; /** * 配置信息 */ config: any; /** * singlespa配置 */ singleSpa: any; /** * 应用的Id */ name: string; /** * 容器 */ container: string | HTMLElement; /** * 头部 * */ header: Header; } export declare type OnGlobalStateChangeCallback = (state: Record, prevState: Record) => void; export declare type MicroAppStateActions = { onGlobalStateChange: (callback: OnGlobalStateChangeCallback, fireImmediately?: boolean) => void; setGlobalState: (state: Record) => boolean; offGlobalStateChange: () => boolean; };