#include "nsISupports.idl" interface nsIDOMWindow; [scriptable, uuid(530db841-1b2c-485a-beeb-f2b1acb9714e)] interface nsIWorkerDebuggerListener : nsISupports { void onClose(); void onError(in DOMString filename, in unsigned long lineno, in DOMString message); void onFreeze(); void onMessage(in DOMString message); void onThaw(); }; [scriptable, builtinclass, uuid(d7c73e54-3c41-4393-9d13-fa2ed4Ba6764)] interface nsIWorkerDebugger : nsISupports { const unsigned long TYPE_DEDICATED = 0; const unsigned long TYPE_SHARED = 1; const unsigned long TYPE_SERVICE = 2; readonly attribute bool isClosed; readonly attribute bool isChrome; readonly attribute bool isFrozen; readonly attribute nsIWorkerDebugger parent; readonly attribute unsigned long type; readonly attribute DOMString url; readonly attribute nsIDOMWindow window; [implicit_jscontext] void initialize(in DOMString url); [implicit_jscontext, binaryname(PostMessageMoz)] void postMessage(in DOMString message); void addListener(in nsIWorkerDebuggerListener listener); void removeListener(in nsIWorkerDebuggerListener listener); };