@livelybone/request-idle-callback
Version:
A polyfill for `window.requestIdleCallback`, support NodeJs. It can be used for time slicing
32 lines (25 loc) • 499 B
TypeScript
interface IdleDeadline {
didTimeout: boolean
timeRemaining(): number
}
interface IdleTask {
id: number
callback: (deadline: IdleDeadline) => any
canceled: boolean
done: boolean
}
interface RICOptions {
timeout?: number
}
declare function requestIdleCallback(
callback: IdleTask['callback'],
options?: RICOptions,
): number
declare function cancelIdleCallback(id: number): void
export {
IdleDeadline,
IdleTask,
RICOptions,
cancelIdleCallback,
requestIdleCallback,
}