mirror of
https://gitlab.com/freepascal.org/fpc/pas2js.git
synced 2025-04-26 23:43:36 +02:00
45 lines
1.8 KiB
ObjectPascal
45 lines
1.8 KiB
ObjectPascal
unit node.events;
|
|
|
|
{$mode objfpc}
|
|
{$ModeSwitch externalclass}
|
|
|
|
interface
|
|
|
|
uses
|
|
JS;
|
|
|
|
Type
|
|
TNJSEventEmitterHandler = reference to procedure(arg : JSValue);
|
|
TNJSEventEmitterHandlerArray = array of TNJSEventEmitterHandler;
|
|
|
|
TNJSEventEmitter = class external name 'EventEmitter' (TJSObject)
|
|
class var captureRejections : Boolean;
|
|
class var defaultMaxListeners : Integer;
|
|
class var errorMonitor : TNJSEventEmitter;
|
|
function addListener(const EventName : String; Listener : TNJSEventEmitterHandler) : TNJSEventEmitter;
|
|
function on_(const EventName : String; Listener : TNJSEventEmitterHandler) : TNJSEventEmitter; external name 'on';
|
|
function once(const EventName : String; Listener : TNJSEventEmitterHandler) : TNJSEventEmitter;
|
|
function off(const EventName : String; Listener : TNJSEventEmitterHandler) : TNJSEventEmitter;
|
|
function emit(const EventName : String) : Boolean; varargs;
|
|
function eventnames : TJSStringDynArray;
|
|
function getMaxListeners : Integer;
|
|
function listenerCount(const EventName : String) : Integer;
|
|
function listeners(const EventName : String) : TNJSEventEmitterHandlerArray;
|
|
function prependListener(const EventName : String; Listener : TNJSEventEmitterHandler) : TNJSEventEmitter;
|
|
function prependOnceListener(const EventName : String; Listener : TNJSEventEmitterHandler) : TNJSEventEmitter;
|
|
function removeListener(const EventName : String; Listener : TNJSEventEmitterHandler) : TNJSEventEmitter;
|
|
function setMaxListeners(aMax : Integer): TNJSEventEmitter;
|
|
function rawListeners(const EventName : String) : TNJSEventEmitterHandlerArray;
|
|
end;
|
|
|
|
|
|
TNJSEvents = class external name 'events' (TJSObject)
|
|
function once(emitter : TNJSEventEmitter; aName : string) : TJSPromise;
|
|
function on_(emitter : TNJSEventEmitter; aName : string) : TJSAsyncIterator;
|
|
end;
|
|
|
|
implementation
|
|
|
|
end.
|
|
|