UNPKG

@whitesev/utils

Version:

一个常用的工具库

78 lines (73 loc) 2.56 kB
export interface UtilsGMMenuClickCallBackData { /** 菜单键名 */ key: string; /** 是否启用 */ enable: boolean; /** 点击前的enable值 */ oldEnable: boolean; /** 触发的事件 */ event: MouseEvent | KeyboardEvent; /** 将enable值写入本地的回调,设置参数false就不保存到本地 */ storeValue(enable: boolean): void; } export interface UtilsGMMenuOption { /** 菜单的本地键key,不可重复,会覆盖 */ key: string; /** 菜单的文本 */ text: string; /** (可选)菜单的开启状态,默认为false */ enable?: boolean; /** (可选)使用条件:TamperMonkey版本>5.0,如果id和已注册的菜单id相同,可修改当前已注册菜单的options */ id?: number; /** (可选)An optional access key. Please see the description below. Either options or accessKey can be specified. */ accessKey?: string; /** (可选)自动关闭菜单,可不设置 */ autoClose?: boolean; /** 使用条件:TamperMonkey版本>5.0,使用菜单项的鼠标悬浮上的工具提示*/ title?: string; /** (可选)点击菜单后自动刷新网页,默认为true */ autoReload?: boolean; /** 菜单的显示文本,未设置的话则自动根据enable在前面加上图标 */ showText(text: string, enable: boolean): string; /** 点击菜单的回调 */ callback(data: UtilsGMMenuClickCallBackData): void; /** 是否允许菜单进行存储值,默认true允许 */ isStoreValue?: boolean; } export interface UtilsGMMenuHandledOption extends UtilsGMMenuOption { /** * 删除该菜单 */ deleteMenu(): void; } export interface UtilsGMMenuOptionData { /** * 菜单id */ id?: number; /** * 菜单配置 */ data: UtilsGMMenuOption; /** * 处理后的菜单配置 * 对autoReload进行处理,如果未赋值,按默认的true赋值 * 对isStoreValue进行处理,如果未赋值,按默认的true赋值 * 新增一个deleteMenu */ handleData?: UtilsGMMenuHandledOption; } export interface UtilsGMMenuConstructorOptions { /** (可选)配置*/ data?: UtilsGMMenuOption[]; /** (可选)全局菜单点击菜单后自动刷新网页,默认为true */ autoReload?: boolean; /** 油猴函数 @grant GM_getValue */ GM_getValue: any; /** 油猴函数 @grant GM_setValue */ GM_setValue: any; /** 油猴函数 @grant GM_registerMenuCommand */ GM_registerMenuCommand: any; /** 油猴函数 @grant GM_unregisterMenuCommand */ GM_unregisterMenuCommand: any; }