|
1 | 1 | import type { ScheduleCallback } from '@solid-primitives/scheduled'; |
| 2 | +import type { Promisable } from 'type-fest'; |
2 | 3 |
|
3 | 4 | import { |
4 | 5 | debounce as _debounce, |
@@ -189,7 +190,7 @@ export const singleThreaded = <T extends any[]>( |
189 | 190 | callback: ( |
190 | 191 | state: SingleThreadedState<T>, |
191 | 192 | ...args: T |
192 | | - ) => void | undefined | Promise<void | undefined>, |
| 193 | + ) => Promisable<void | undefined>, |
193 | 194 | initState?: Partial<SingleThreadedState<T>>, |
194 | 195 | ) => { |
195 | 196 | const state: SingleThreadedState<T> = { |
@@ -231,7 +232,7 @@ export const singleThreaded = <T extends any[]>( |
231 | 232 | * @returns 所有 Promise 的返回值 |
232 | 233 | */ |
233 | 234 | export const plimit = async <T>( |
234 | | - fnList: (() => Promise<T> | T)[], |
| 235 | + fnList: (() => Promisable<T>)[], |
235 | 236 | callBack = undefined as |
236 | 237 | | ((doneNum: number, totalNum: number, resList: T[], i: number) => void) |
237 | 238 | | undefined, |
@@ -337,16 +338,16 @@ export const needDarkMode = (hexColor: string) => { |
337 | 338 | * @param waitTime - 轮询间隔时间(毫秒),默认为 100 |
338 | 339 | */ |
339 | 340 | export async function wait<T>( |
340 | | - fn: () => T | undefined | Promise<T | undefined>, |
| 341 | + fn: () => Promisable<T | undefined>, |
341 | 342 | ): Promise<TrueValue<T>>; |
342 | 343 | export async function wait<T>( |
343 | | - fn: () => T | undefined | Promise<T | undefined>, |
| 344 | + fn: () => Promisable<T>, |
344 | 345 | timeout?: number, |
345 | 346 | waitTime?: number, |
346 | 347 | ): Promise<T>; |
347 | 348 | // oxlint-disable-next-line func-style |
348 | 349 | export async function wait<T>( |
349 | | - fn: () => T | undefined | Promise<T | undefined>, |
| 350 | + fn: () => Promisable<T>, |
350 | 351 | timeout = Number.POSITIVE_INFINITY, |
351 | 352 | waitTime = 100, |
352 | 353 | ) { |
@@ -583,7 +584,7 @@ export const hijackFn = <T extends unknown[] = unknown[], R = unknown>( |
583 | 584 |
|
584 | 585 | export const getGmValue = async <T extends string | number | object = string>( |
585 | 586 | name: string, |
586 | | - setValueFn: () => unknown | Promise<unknown>, |
| 587 | + setValueFn: () => Promisable<unknown>, |
587 | 588 | ) => { |
588 | 589 | const value = await GM.getValue<T>(name); |
589 | 590 | if (value !== undefined) return value; |
|
0 commit comments