import type { DslDefinition } from '@oinone/kunlun-dsl'; import { type MajorConfig, type RuntimeViewAction, type ViewActionQueryParameter } from '@oinone/kunlun-engine'; import { CallChaining } from '@oinone/kunlun-shared'; import { type VNode } from 'vue'; import { MetadataViewWidget } from '../basic'; import { TeleportWidget } from '../components/teleport'; import { MultiTabsContainerWidget } from './multi-tabs'; /** *

元数据主视图

*

* 该视图组件提供mask渲染以及首个元数据上下文初始化的处理逻辑 * metadataHandle、rootHandle、parentHandle将从这里向下提供一个根节点,是整个视图渲染的起点 *

*

* 该视图组件并不会提供除了渲染挂载以外的其他数据,比如model、module等信息将从MainViewWidget向下提供,这样处理将更能凸显MainViewWidget组件的通用性 *

*/ export declare class DefaultMetadataMainViewWidget extends MetadataViewWidget { private matchedSub; private $systemMajorConfig; protected pairwiseRoutePage: { oldPage: ViewActionQueryParameter | undefined; newPage: ViewActionQueryParameter | undefined; }; protected reloadMaskCallChaining: CallChaining; protected reloadMainViewCallChaining: CallChaining; protected maskTemplate: DslDefinition | undefined; protected loading: boolean; protected currentRuntimeViewAction: RuntimeViewAction | undefined; protected mainViewLoading: boolean; protected translateToolBox: VNode | undefined; protected setMainViewLoading(loading: boolean): void; protected multiTabsTeleportWidget: TeleportWidget | undefined; protected multiTabsContainerWidget: MultiTabsContainerWidget | undefined; initialize(props: any): this; private arePropertiesEqual; /** * 监听路由变化 * 1: 渲染mask * 2: 初始化上下文P */ private watchRoute; protected reloadPage(oldPage: ViewActionQueryParameter | undefined, newPage: ViewActionQueryParameter): Promise; protected fetchRuntimeViewAction(model: string, action: string | undefined, path: string | undefined): Promise; /** * 初始化运行时上下文 * @param viewAction 跳转动作 * @protected */ protected initRuntimeContext(viewAction: RuntimeViewAction): { isInit: boolean; isRefresh: boolean; }; /** * 渲染前 * @param viewAction 跳转动作 * @param oldPage 旧url参数 * @param newPage 新url参数 * @protected */ protected beforeRender(viewAction: RuntimeViewAction, oldPage: ViewActionQueryParameter | undefined, newPage: ViewActionQueryParameter): Promise; /** * 渲染mask * @param viewAction 跳转动作 * @param oldPage 旧url参数 * @param newPage 新url参数 */ renderMask(viewAction: RuntimeViewAction, oldPage: ViewActionQueryParameter | undefined, newPage: ViewActionQueryParameter): Promise; /** * 渲染MainView * @param viewAction 跳转动作 * @param oldPage 旧url参数 * @param newPage 新url参数 * @protected */ protected renderMainView(viewAction: RuntimeViewAction, oldPage: ViewActionQueryParameter | undefined, newPage: ViewActionQueryParameter): Promise; protected createMultiTabsContainerWidget(): void; protected watchMultiTabTheme(): void; protected multiTabThemeDistinct(pre: MajorConfig, next: MajorConfig): boolean; protected $$mounted(): Promise; protected $$unmounted(): void; }