@@ -75,21 +75,30 @@ declare const GM_info: {
7575 [key: string]: unknown;
7676};
7777
78- declare function GM_deleteValue(name: string): void;
78+
7979
8080declare function GM_listValues(): string[];
8181
8282declare function GM_addValueChangeListener(name: string, listener: GMTypes.ValueChangeListener): number;
8383
8484declare function GM_removeValueChangeListener(listenerId: number): void;
8585
86- // 可以使用Promise实际等待值的设置完成
87- declare function GM_setValue(name: string, value: unknown): Promise;
86+ declare function GM_setValue(name: string, value: any): void;
87+ // 设置多个值, values是一个对象, 键为值的名称, 值为值的内容
88+ declare function GM_setValues(values: { [key: string]: any } ): void;
8889
89- declare function GM_getValue(name: string, defaultValue?: unknown): unknown;
90+ declare function GM_getValue(name: string, defaultValue?: any): any;
91+
92+ // 获取多个值, 如果keysOrDefaults是一个对象, 则使用对象的值作为默认值
93+ declare function GM_getValues(keysOrDefaults: { [key: string]: any } | string[] | null | undefined): { [key: string]: any } ;
94+
95+ declare function GM_deleteValue(name: string): void;
96+
97+ // 删除多个值, names是一个字符串数组
98+ declare function GM_deleteValues(names: string[]): void;
9099
91100// 支持level和label
92- declare function GM_log(message: string, level?: GMTypes.LoggerLevel, labels?: GMTypes.LoggerLabel): unknown ;
101+ declare function GM_log(message: string, level?: GMTypes.LoggerLevel, labels?: GMTypes.LoggerLabel): void ;
93102
94103declare function GM_getResourceText(name: string): string | undefined;
95104
@@ -133,20 +142,20 @@ declare function CAT_registerMenuInput(
133142
134143declare const CAT_unregisterMenuInput: typeof GM_unregisterMenuCommand;
135144
136- declare function GM_openInTab(url: string, options: GMTypes.OpenTabOptions): tab ;
137- declare function GM_openInTab(url: string, loadInBackground: boolean): tab ;
138- declare function GM_openInTab(url: string): tab ;
145+ declare function GM_openInTab(url: string, options: GMTypes.OpenTabOptions): GMTypes.Tab ;
146+ declare function GM_openInTab(url: string, loadInBackground: boolean): GMTypes.Tab ;
147+ declare function GM_openInTab(url: string): GMTypes.Tab ;
139148
140149declare function GM_xmlhttpRequest(details: GMTypes.XHRDetails): GMTypes.AbortHandle<void >;
141150
142151declare function GM_download(details: GMTypes.DownloadDetails): GMTypes.AbortHandle<boolean >;
143152declare function GM_download(url: string, filename: string): GMTypes.AbortHandle<boolean >;
144153
145- declare function GM_getTab(callback: (obj: object) => unknown ): void;
154+ declare function GM_getTab(callback: (obj: object) => void ): void;
146155
147156declare function GM_saveTab(obj: object): Promise<void >;
148157
149- declare function GM_getTabs(callback: (objs: { [key: number]: object } ) => unknown ): void;
158+ declare function GM_getTabs(callback: (objs: { [key: number]: object } ) => void ): void;
150159
151160declare function GM_notification(details: GMTypes.NotificationDetails, ondone?: GMTypes.NotificationOnDone): void;
152161declare function GM_notification(
@@ -162,8 +171,8 @@ declare function GM_updateNotification(id: string, details: GMTypes.Notification
162171
163172declare function GM_setClipboard(data: string, info?: string | { type?: string; minetype?: string } ): void;
164173
165- declare function GM_addElement(tag: string, attribubutes: unknown) ;
166- declare function GM_addElement(parentNode: Element, tag: string, attrs: unknown) ;
174+ declare function GM_addElement(tag: string, attributes: any): HTMLElement ;
175+ declare function GM_addElement(parentNode: Element, tag: string, attrs: any): HTMLElement ;
167176
168177declare function GM_addStyle(css: string): HTMLStyleElement;
169178
@@ -481,12 +490,12 @@ declare namespace GMTypes {
481490 ondone?: NotificationOnDone;
482491 progress?: number;
483492 oncreate?: NotificationOnClick;
493+ // 只能存在2个
484494 buttons?: NotificationButton[];
485495 }
486496
487497 interface Tab {
488498 close(): void;
489-
490499 onclose?: () => void;
491500 closed?: boolean;
492501 name?: string;
0 commit comments