import { LocaleService, Plugin, Injector, UniverInstanceType, ICommand, IConfigService, Univer, IAccessor } from '@univerjs/core'; import { IMenuButtonItem, IShortcutItem } from '@univerjs/ui'; export interface ICustomMenuPluginConfig { instance: Univer; menu: Array<{ operation: ICommand; shortcut?: IShortcutItem; menu: () => IMenuButtonItem; icon?: { name: string; component: any; }; }>; } export interface UniverMenuConfig { id: string; operation: ICommand; shortcut?: IShortcutItem; menu?: (accessor: IAccessor) => IMenuButtonItem; icon?: { name: string; component: any; }; onlyOperation?: boolean; } export interface ICustomMenuPulginParams { [key: string]: any; before?: () => void | Promise; after?: (param?: any) => void; } export declare const CUSTOM_PLUGIN_CONFIG = "CUSTOM_PLUGIN_CONFIG"; export declare class UniverSheetsCustomMenuPlugin extends Plugin { readonly config: ICustomMenuPluginConfig; protected readonly _injector: Injector; private readonly _localeService; private readonly _configService; static type: UniverInstanceType; static pluginName: string; constructor(config: ICustomMenuPluginConfig, _injector: Injector, _localeService: LocaleService, _configService: IConfigService); onReady(): void; onStarting(): void; }