mirror of
https://github.com/oven-sh/bun
synced 2026-02-10 19:08:50 +00:00
42 lines
824 B
TypeScript
42 lines
824 B
TypeScript
const { throwNotImplemented } = require("internal/shared");
|
|
|
|
var timersPromisesValue;
|
|
|
|
export default {
|
|
setTimeout,
|
|
clearTimeout,
|
|
setInterval,
|
|
setImmediate,
|
|
clearInterval,
|
|
clearImmediate,
|
|
get promises() {
|
|
return (timersPromisesValue ??= require("node:timers/promises"));
|
|
},
|
|
set promises(value) {
|
|
timersPromisesValue = value;
|
|
},
|
|
active(timer) {
|
|
if ($isCallable(timer?.refresh)) {
|
|
timer.refresh();
|
|
} else {
|
|
throwNotImplemented("'timers.active'");
|
|
}
|
|
},
|
|
unenroll(timer) {
|
|
if ($isCallable(timer?.refresh)) {
|
|
clearTimeout(timer);
|
|
return;
|
|
}
|
|
|
|
throwNotImplemented("'timers.unenroll'");
|
|
},
|
|
enroll(timer, msecs) {
|
|
if ($isCallable(timer?.refresh)) {
|
|
timer.refresh();
|
|
return;
|
|
}
|
|
|
|
throwNotImplemented("'timers.enroll'");
|
|
},
|
|
};
|