diff --git a/types/scheduler/index.d.ts b/types/scheduler/index.d.ts index e65961b975..ca51a04d60 100644 --- a/types/scheduler/index.d.ts +++ b/types/scheduler/index.d.ts @@ -19,10 +19,11 @@ export const unstable_UserBlockingPriority = 2; export const unstable_NormalPriority = 3; export const unstable_IdlePriority = 5; export const unstable_LowPriority = 4; -export function unstable_runWithPriority(priorityLevel: number, eventHandler: () => T): T | undefined; +export function unstable_runWithPriority(priorityLevel: number, eventHandler: () => T): T; export function unstable_scheduleCallback(priorityLevel: number, callback: FrameCallbackType, options?: { delay?: number, timeout?: number}): CallbackNode; +export function unstable_next(eventHandler: () => T): T; export function unstable_cancelCallback(callbackNode: CallbackNode): void; -export function unstable_wrapCallback(callback: FrameCallbackType): () => FrameCallbackType | undefined; +export function unstable_wrapCallback(callback: FrameCallbackType): () => FrameCallbackType; export function unstable_getCurrentPriorityLevel(): number; export function unstable_shouldYield(): boolean; export function unstable_continueExecution(): void; diff --git a/types/scheduler/test/scheduler.ts b/types/scheduler/test/scheduler.ts index e1b9ddf9da..f8a2a217bd 100644 --- a/types/scheduler/test/scheduler.ts +++ b/types/scheduler/test/scheduler.ts @@ -1,4 +1,4 @@ -import { unstable_scheduleCallback, unstable_cancelCallback, unstable_now, unstable_NormalPriority } from 'scheduler'; +import { unstable_scheduleCallback, unstable_cancelCallback, unstable_now, unstable_NormalPriority, unstable_next } from 'scheduler'; // $ExpectType CallbackNode const callbackNode = unstable_scheduleCallback(unstable_NormalPriority, () => {}, { timeout: 100 }); @@ -7,3 +7,8 @@ unstable_scheduleCallback(unstable_NormalPriority, () => {}, { delay: 100 }); // $ExpectType number unstable_now(); + +// $ExpectType number +const nextNumberResult = unstable_next(() => 42); +// $ExpectType string +const nextStringResult = unstable_next(() => 'Hello');