package node; @:jsRequire("node:timers") @valueModuleOnly extern class NodeTimers { @:overload(function(callback:(args:haxe.extern.Rest) -> Void, ?ms:Float, args:haxe.extern.Rest):global.nodejs.Timeout { }) @:overload(function(callback:(args:ts.Undefined) -> Void, ?ms:Float):global.nodejs.Timeout { }) dynamic static function setTimeout(handler:js.html.TimerHandler, ?timeout:Float, arguments:haxe.extern.Rest):Float; @:overload(function(timeoutId:Null>):Void { }) dynamic static function clearTimeout(?handle:Float):Void; @:overload(function(callback:(args:haxe.extern.Rest) -> Void, ?ms:Float, args:haxe.extern.Rest):global.nodejs.Timeout { }) @:overload(function(callback:(args:ts.Undefined) -> Void, ?ms:Float):global.nodejs.Timeout { }) dynamic static function setInterval(handler:js.html.TimerHandler, ?timeout:Float, arguments:haxe.extern.Rest):Float; @:overload(function(intervalId:Null>):Void { }) dynamic static function clearInterval(?handle:Float):Void; @:overload(function(callback:(args:ts.Undefined) -> Void):global.nodejs.Immediate { }) dynamic static function setImmediate(callback:(args:haxe.extern.Rest) -> Void, args:haxe.extern.Rest):global.nodejs.Immediate; dynamic static function clearImmediate(immediateId:Null):Void; }