/** * Resolves in a later task so queued input and rendering get a turn between slices of a long job. * * `scheduler.yield` keeps the continuation ahead of other same-priority work where the host has it. * A message task is the browser fallback because timers are clamped in a hidden tab, which would * stall a background sync; Node drains message ports without visiting its timers, so it gets the * timer instead. */ export declare const yieldToEventLoop: () => Promise; /** * Resolves after the tasks already queued have run. {@link yieldToEventLoop} resumes ahead of them where the * host has `scheduler.yield`, which suits input but keeps a background loop ahead of queued messages. */ export declare const yieldBehindQueuedTasks: () => Promise; /** * How eagerly {@link yieldOrContinue} gives the event loop a turn, named after `main-thread-scheduling`'s strategies: * the work keeps the page `interactive`, `smooth` or `idle`. */ export type YieldStrategy = 'interactive' | 'smooth' | 'idle'; /** Whether the current slice has used its strategy's budget, for callers that yield by other means. */ export declare const shouldYield: (strategy: YieldStrategy) => boolean; /** Yields to the event loop once the current slice has used its strategy's budget, and resolves at once otherwise. */ export declare const yieldOrContinue: (strategy: YieldStrategy) => Promise; //# sourceMappingURL=yield.d.ts.map