declare class EditorPlugin { plugins: Record; content: Record; datas: Record; fns: Record any>; private initApi; private i18nOpts; constructor(); initData(): void; destroy(): void; addContent(content: Record): void; regiseData(datas: Record): void; regiseFn(fns: Record any>): void; getData(key: string): any; getFun(key: string): () => any; callFun(key: string, ...restParams: any[]): any; regisePlugin(plugin: Record): void; clearPlugin(): void; /** * * @param pluginName 插件名称 * @param data 插件需要操作的数据 * @param content 上下文:操作数据需要用到的一些工具、方法 * @returns */ private callPlugin; /** * 调用属性加载前插件方法 * @param data 业务数据: { selectedComp, params: field }, */ callBeforePropsParse(data: Record, content?: Record): Promise>; /** * 调用属性变更前插件方法 * @param data 业务数据: { selectedComp, params: field }, */ callbeforePropsChange(data: Record, content?: Record): Promise>; /** * 调用属性变更页面前的方法 * @param data 业务数据: { selectedComp, params: field }, */ callbeforePageChange(data: Record, content?: Record): Promise>; /** * 调用属性变更前插件方法 * @param data 业务数据: { selectedComp, params: field }, */ callbeforeStyleChange(data: Record, content?: Record): Promise>; /** * 调用属性变更前插件方法 * @param data 业务数据: { selectedComp, params: field }, */ callbeforeDrop(data: Record, content?: Record): Promise>; /** * 调用拖拽结束后的方法 * @param data 业务数据: { type, params: field }, */ callEndDragging(data: Record, content?: Record): Promise>; /** * 调用数据源仪表盘属性变更前插件方法 * @param data 业务数据: { selectedComp, params: field }, */ callbeforeDashboardDataChange(data: Record, content?: Record): Promise>; registerI18n({ api, }: { api: { addFrontendCopywriting: any; pageQryFrontendCopywritings: any; removeCopywriting: any; modifyFrontendCopywriting: any; }; }): Promise; get i18nApi(): { addFrontendCopywriting: (params: Record) => Promise; pageQryFrontendCopywritings: (params: { copywritingCode?: string | undefined; keyword?: string | undefined; pageNum?: number | undefined; pageSize?: number | undefined; }) => Promise; removeCopywriting: (params: { copywritingId: string; }) => Promise; modifyFrontendCopywriting: (params: { [key: string]: string; id: string; }) => Promise; }; } declare const useEditorPlugin: () => { editorPluginInst: EditorPlugin; }; declare const useCreateEditorPluginInst: (inst?: EditorPlugin) => { editorPluginInst: EditorPlugin; }; export { EditorPlugin as EditorPluginClass, useEditorPlugin, useCreateEditorPluginInst };