DefinitelyTyped/types/requestidlecallback/index.d.ts
Max Boguslavsky a151389bac Fixed requestidlecallback typing to work with global typing (#39322)
* reworked type definition so it will work with global space; used DOMHighResTimeStamp from dom library

* corrected index header
2019-10-22 10:52:21 -07:00

35 lines
1.3 KiB
TypeScript

// Type definitions for requestidlecallback 0.3
// Project: https://w3c.github.io/requestidlecallback/, https://github.com/afarkas/requestidlecallback
// Definitions by: 贺师俊 <https://github.com/hax>
// Vladimir Grenaderov <https://github.com/VladimirGrenaderov>
// Max Boguslavskiy <https://github.com/maxbogus>
// Teramoto Daiki <https://github.com/teramotodaiki>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 3.0
/// <reference lib="dom" />
interface IdleDeadline {
timeRemaining(): DOMHighResTimeStamp;
readonly didTimeout: boolean;
}
interface IdleRequestOptions {
timeout: number;
}
type IdleCallbackHandle = number;
type IdleRequestCallback = (deadline: IdleDeadline) => void;
interface Window {
requestIdleCallback(callback: IdleRequestCallback, options?: IdleRequestOptions): IdleCallbackHandle;
cancelIdleCallback(handle: number): void;
}
declare function requestIdleCallback(callback: IdleRequestCallback, options?: IdleRequestOptions): number;
declare function cancelIdleCallback(handle: number): void;
declare function request(callback: IdleRequestCallback, options?: IdleRequestOptions): IdleCallbackHandle;
declare function cancel(handle: IdleCallbackHandle): void;