import { FrmEventBus } from '../eventbus/frm-evenbus'; import { IframeLink } from '../models/iframe.model'; import { Subscription } from 'rxjs'; export declare class FrmUtil { static setHeader(bizContextId: string, options: any): any; static getTabArray(): IframeLink[]; static getTopWindow(): Window; static removeTab(index: number): void; } export declare class EventUtil { /** eventToken str */ static FARRIS_APPS: string; static FARRIS_APP_CLICK: string; static ALL_GSP_FUNCS: string; static BEFORE_FUNC_CLOSE: string; static FUNC_CLOSED: string; static FUNC_SWITCH: string; static AFTER_FRAME_LOAD: string; private static eventBusKey; private static frmVariable; /** 获取框架event */ static getFrmEvent(): FrmEventBus; static setFrmEvent(feb: FrmEventBus): void; /** * 获取app唯一的观察者标识 */ static appObsToken(appId: string, appEntrance: string, tabId?: string): string; /** * 获取func唯一的观察者标识 */ static funcObsToken(funcId: string, tabId?: string): string; /** * 获取某事件的监听者 */ static getObserver(eventToken: string): Map; /** * 获取某事件的销毁事件 */ static getObserverDestroySub(eventToken: string): Map; /** * 清空监听者 */ static clearObserver(obKey: string): void; /** * 清空某个管道 */ static clearEventPipeWithObkey(pipeToken: string, obsKey: string): void; /** * 清空某个管道 */ static clearEventPipe(pipeToken: string): void; } export declare const AppType: { App: string; Menu: string; Other: string; }; export interface FuncEventArgs { /** 当前tab页的唯一标识 */ tabId: string; /** 当前tab打开的功能类型 app or menu */ appType: string; funcId?: string; appId?: string; appEntrance?: string; tabName?: string; beforeCloseHandle?: (arg: any) => void; } export interface FuncStateParam { /** * formToken (简称 cvft) */ token?: string; /** 当前tab页的唯一标识 */ tabId: string; funcId?: string; appId?: string; appEntrance?: string; /** * 当页面name自定义时为自定义 * 否则:func为funcName,app为entryName */ menuName: string; /** * 动作 */ action: string; /** * 租户路由维度信息 * 可选参数,中交多租户场景使用 */ tRouteDim?: string; preState?: string; } export interface AppOptions { /** * 指定当前打开的是菜单(menu)还是应用(app) * 可选参数,缺省为菜单(menu) */ appType?: string; /*** 如果打开菜单,funcId需要指定,appId、appEntrance可以为空 */ funcId: string; /*** 如果打开应用,appId及appEntrance需要指定,funcId可以为空 */ appId?: string; appEntrance?: string; /** 如果需要重复打开功能,则自行指定唯一tabId */ tabId?: string; tabName?: string; /** * 表单公共变量token/formToken */ token?: string; /** * 表单所属SU */ su?: string; routeUrl?: string; entityParams?: any; queryStringParams?: Map; isReload?: boolean; isJquery?: boolean; /** * spa模式下重复打开功能 * true:构造新的页面实例 * false || null || undefined:复用已打开的页面实例 * 目前新的tabId就是新的页面实例 */ isNewTab?: boolean; /** * 只获取被打开表单的link实体, * 不触发框架加载表单实践 */ onlyGetIframeLink?: boolean; isChangeTenant?: boolean; /** * 租户路由维度信息 {key: value, key2: value2} */ tenantRouteDim?: any; tenantId?: number; preState?: AppOptions; opCustomParam?: string; /** * 关闭前回调处理 */ beforeCloseHandle?: (arg: any) => void; } export interface FrmSubjectOptions { customToken?: string; funcId?: string; appId?: string; appEntrance?: string; }