From 1e76cc036f1e40e20d5ade9329ddffe3b3634455 Mon Sep 17 00:00:00 2001 From: Max Boguslavsky <521205+maxbogus@users.noreply.github.com> Date: Tue, 24 Sep 2019 01:37:12 +0300 Subject: [PATCH] Added window interface and tests to requestidlecallback: Part 2 (#38124) * added tests and updated requestidlecallback type * added tests and updated requestidlecallback type * - corrected arguments according to feedback. --- types/requestidlecallback/index.d.ts | 7 ++++++- .../requestidlecallback-tests.ts | 17 +++++++++++++++++ types/requestidlecallback/tsconfig.json | 3 ++- 3 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 types/requestidlecallback/requestidlecallback-tests.ts diff --git a/types/requestidlecallback/index.d.ts b/types/requestidlecallback/index.d.ts index ebb27eb8c4..56d00c72e8 100644 --- a/types/requestidlecallback/index.d.ts +++ b/types/requestidlecallback/index.d.ts @@ -1,6 +1,6 @@ // Type definitions for requestidlecallback 0.1 // Project: https://w3c.github.io/requestidlecallback/, https://github.com/afarkas/requestidlecallback -// Definitions by: 贺师俊 +// Definitions by: 贺师俊 , Vladimir Grenaderov , Max Boguslavskiy // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped export function requestIdleCallback(callback: IdleRequestCallback, options?: IdleRequestOptions): IdleCallbackHandle; @@ -19,3 +19,8 @@ export interface IdleDeadline { export interface IdleRequestOptions { timeout: number; } + +export interface Window { + requestIdleCallback(callback: IdleRequestCallback, options?: IdleRequestOptions): IdleCallbackHandle; + cancelIdleCallback(handle: number): void; +} diff --git a/types/requestidlecallback/requestidlecallback-tests.ts b/types/requestidlecallback/requestidlecallback-tests.ts new file mode 100644 index 0000000000..13e0104878 --- /dev/null +++ b/types/requestidlecallback/requestidlecallback-tests.ts @@ -0,0 +1,17 @@ +import { + requestIdleCallback, + cancelIdleCallback, + IdleRequestOptions, + IdleCallbackHandle, +} from 'requestidlecallback'; + +// Test requestIdleCallback with default param +requestIdleCallback(() => '1'); + +// Test requestIdleCallback with default param and optional param +const option: IdleRequestOptions = { timeout: 2000 }; +requestIdleCallback(() => '2', option); + +// Test cancelIdleCallback with default param +const handle: IdleCallbackHandle = 1; +cancelIdleCallback(handle); diff --git a/types/requestidlecallback/tsconfig.json b/types/requestidlecallback/tsconfig.json index 1b1f8d763d..0c45aaf29e 100644 --- a/types/requestidlecallback/tsconfig.json +++ b/types/requestidlecallback/tsconfig.json @@ -17,6 +17,7 @@ "forceConsistentCasingInFileNames": true }, "files": [ - "index.d.ts" + "index.d.ts", + "requestidlecallback-tests.ts" ] }