/* * DO NOT EDIT. THIS FILE IS GENERATED FROM $SRCDIR/dom/base/nsIContentPolicy.idl */ #ifndef __gen_nsIContentPolicy_h__ #define __gen_nsIContentPolicy_h__ #include "nsISupports.h" #include "js/GCAnnotations.h" /* For IDL files that don't want to include root IDL files. */ #ifndef NS_NO_VTABLE #define NS_NO_VTABLE #endif class nsIURI; /* forward declaration */ class nsILoadInfo; /* forward declaration */ /* starting interface: nsIContentPolicy */ #define NS_ICONTENTPOLICY_IID_STR "caad4f1f-d047-46ac-ae9d-dc598e4fb91b" #define NS_ICONTENTPOLICY_IID \ {0xcaad4f1f, 0xd047, 0x46ac, \ { 0xae, 0x9d, 0xdc, 0x59, 0x8e, 0x4f, 0xb9, 0x1b }} class NS_NO_VTABLE MOZ_BINDING(binding_to, idl, class, XPIDL_nsIContentPolicy) nsIContentPolicy : public nsISupports { public: NS_INLINE_DECL_STATIC_IID(NS_ICONTENTPOLICY_IID) /* Used by ToJSValue to check which scriptable interface is implemented. */ using ScriptableInterfaceType = nsIContentPolicy; enum MOZ_BINDING(binding_to, idl, class, XPIDL_nsIContentPolicy_nsContentPolicyType) nsContentPolicyType : uint8_t { TYPE_INVALID MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INVALID) = 0, TYPE_OTHER MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_OTHER) = 1, TYPE_SCRIPT MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_SCRIPT) = 2, TYPE_IMAGE MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_IMAGE) = 3, TYPE_STYLESHEET MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_STYLESHEET) = 4, TYPE_OBJECT MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_OBJECT) = 5, TYPE_DOCUMENT MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_DOCUMENT) = 6, TYPE_SUBDOCUMENT MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_SUBDOCUMENT) = 7, TYPE_PING MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_PING) = 10, TYPE_XMLHTTPREQUEST MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_XMLHTTPREQUEST) = 11, TYPE_DTD MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_DTD) = 13, TYPE_FONT MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_FONT) = 14, TYPE_MEDIA MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_MEDIA) = 15, TYPE_WEBSOCKET MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_WEBSOCKET) = 16, TYPE_CSP_REPORT MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_CSP_REPORT) = 17, TYPE_XSLT MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_XSLT) = 18, TYPE_BEACON MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_BEACON) = 19, TYPE_FETCH MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_FETCH) = 20, TYPE_IMAGESET MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_IMAGESET) = 21, TYPE_WEB_MANIFEST MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_WEB_MANIFEST) = 22, TYPE_INTERNAL_SCRIPT MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_SCRIPT) = 23, TYPE_INTERNAL_WORKER MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_WORKER) = 24, TYPE_INTERNAL_SHARED_WORKER MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_SHARED_WORKER) = 25, TYPE_INTERNAL_EMBED MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_EMBED) = 26, TYPE_INTERNAL_OBJECT MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_OBJECT) = 27, TYPE_INTERNAL_FRAME MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_FRAME) = 28, TYPE_INTERNAL_IFRAME MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_IFRAME) = 29, TYPE_INTERNAL_AUDIO MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_AUDIO) = 30, TYPE_INTERNAL_VIDEO MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_VIDEO) = 31, TYPE_INTERNAL_TRACK MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_TRACK) = 32, TYPE_INTERNAL_XMLHTTPREQUEST_ASYNC MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_XMLHTTPREQUEST_ASYNC) = 33, TYPE_INTERNAL_EVENTSOURCE MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_EVENTSOURCE) = 34, TYPE_INTERNAL_SERVICE_WORKER MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_SERVICE_WORKER) = 35, TYPE_INTERNAL_SCRIPT_PRELOAD MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_SCRIPT_PRELOAD) = 36, TYPE_INTERNAL_IMAGE MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_IMAGE) = 37, TYPE_INTERNAL_IMAGE_PRELOAD MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_IMAGE_PRELOAD) = 38, TYPE_INTERNAL_STYLESHEET MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_STYLESHEET) = 39, TYPE_INTERNAL_STYLESHEET_PRELOAD MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_STYLESHEET_PRELOAD) = 40, TYPE_INTERNAL_IMAGE_FAVICON MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_IMAGE_FAVICON) = 41, TYPE_INTERNAL_WORKER_IMPORT_SCRIPTS MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_WORKER_IMPORT_SCRIPTS) = 42, TYPE_SAVEAS_DOWNLOAD MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_SAVEAS_DOWNLOAD) = 43, TYPE_SPECULATIVE MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_SPECULATIVE) = 44, TYPE_INTERNAL_MODULE MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_MODULE) = 45, TYPE_INTERNAL_MODULE_PRELOAD MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_MODULE_PRELOAD) = 46, TYPE_INTERNAL_DTD MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_DTD) = 47, TYPE_INTERNAL_FORCE_ALLOWED_DTD MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_FORCE_ALLOWED_DTD) = 48, TYPE_INTERNAL_AUDIOWORKLET MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_AUDIOWORKLET) = 49, TYPE_INTERNAL_PAINTWORKLET MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_PAINTWORKLET) = 50, TYPE_INTERNAL_FONT_PRELOAD MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_FONT_PRELOAD) = 51, TYPE_INTERNAL_CHROMEUTILS_COMPILED_SCRIPT MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_CHROMEUTILS_COMPILED_SCRIPT) = 52, TYPE_INTERNAL_FRAME_MESSAGEMANAGER_SCRIPT MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_FRAME_MESSAGEMANAGER_SCRIPT) = 53, TYPE_INTERNAL_FETCH_PRELOAD MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_FETCH_PRELOAD) = 54, TYPE_UA_FONT MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_UA_FONT) = 55, TYPE_PROXIED_WEBRTC_MEDIA MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_PROXIED_WEBRTC_MEDIA) = 56, TYPE_WEB_IDENTITY MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_WEB_IDENTITY) = 57, TYPE_INTERNAL_WORKER_STATIC_MODULE MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_WORKER_STATIC_MODULE) = 58, TYPE_WEB_TRANSPORT MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_WEB_TRANSPORT) = 59, TYPE_INTERNAL_XMLHTTPREQUEST_SYNC MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_XMLHTTPREQUEST_SYNC) = 60, TYPE_INTERNAL_EXTERNAL_RESOURCE MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_EXTERNAL_RESOURCE) = 61, TYPE_JSON MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_JSON) = 62, TYPE_INTERNAL_JSON_PRELOAD MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_JSON_PRELOAD) = 63, TYPE_INTERNAL_IMAGE_NOTIFICATION MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_IMAGE_NOTIFICATION) = 64, TYPE_TEXT MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_TEXT) = 65, TYPE_INTERNAL_TEXT_PRELOAD MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_nsContentPolicyType_TYPE_INTERNAL_TEXT_PRELOAD) = 66, }; enum { REJECT_REQUEST MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_REJECT_REQUEST) = -1, REJECT_TYPE MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_REJECT_TYPE) = -2, REJECT_SERVER MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_REJECT_SERVER) = -3, REJECT_OTHER MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_REJECT_OTHER) = -4, REJECT_POLICY MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_REJECT_POLICY) = -5, ACCEPT MOZ_BINDING(binding_to, idl, const, XPIDL_nsIContentPolicy_ACCEPT) = 1 }; /* short shouldLoad (in nsIURI aContentLocation, in nsILoadInfo aLoadInfo); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIContentPolicy_shouldLoad) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ShouldLoad(nsIURI *aContentLocation, nsILoadInfo *aLoadInfo, int16_t *_retval) = 0; /* short shouldProcess (in nsIURI aContentLocation, in nsILoadInfo aLoadInfo); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIContentPolicy_shouldProcess) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ShouldProcess(nsIURI *aContentLocation, nsILoadInfo *aLoadInfo, int16_t *_retval) = 0; }; /* Use this macro when declaring classes that implement this interface. */ #define NS_DECL_NSICONTENTPOLICY \ NS_IMETHOD ShouldLoad(nsIURI *aContentLocation, nsILoadInfo *aLoadInfo, int16_t *_retval) override; \ NS_IMETHOD ShouldProcess(nsIURI *aContentLocation, nsILoadInfo *aLoadInfo, int16_t *_retval) override; /* Use this macro when declaring the members of this interface when the class doesn't implement the interface. This is useful for forwarding. */ #define NS_DECL_NON_VIRTUAL_NSICONTENTPOLICY \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIContentPolicy_shouldLoad)\ nsresult ShouldLoad(nsIURI *aContentLocation, nsILoadInfo *aLoadInfo, int16_t *_retval); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIContentPolicy_shouldProcess)\ nsresult ShouldProcess(nsIURI *aContentLocation, nsILoadInfo *aLoadInfo, int16_t *_retval); /* Use this macro to declare functions that forward the behavior of this interface to another object. */ #define NS_FORWARD_NSICONTENTPOLICY(_to) \ NS_IMETHOD ShouldLoad(nsIURI *aContentLocation, nsILoadInfo *aLoadInfo, int16_t *_retval) override { return _to ShouldLoad(aContentLocation, aLoadInfo, _retval); } \ NS_IMETHOD ShouldProcess(nsIURI *aContentLocation, nsILoadInfo *aLoadInfo, int16_t *_retval) override { return _to ShouldProcess(aContentLocation, aLoadInfo, _retval); } /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ #define NS_FORWARD_SAFE_NSICONTENTPOLICY(_to) \ NS_IMETHOD ShouldLoad(nsIURI *aContentLocation, nsILoadInfo *aLoadInfo, int16_t *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ShouldLoad(aContentLocation, aLoadInfo, _retval); } \ NS_IMETHOD ShouldProcess(nsIURI *aContentLocation, nsILoadInfo *aLoadInfo, int16_t *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ShouldProcess(aContentLocation, aLoadInfo, _retval); } typedef nsIContentPolicy::nsContentPolicyType nsContentPolicyType; // %{C++:600-634 enum class ExtContentPolicyType : uint8_t { /** * The type of ExtContentPolicy::TYPE_* */ TYPE_INVALID = nsIContentPolicy::TYPE_INVALID, TYPE_OTHER = nsIContentPolicy::TYPE_OTHER, TYPE_SCRIPT = nsIContentPolicy::TYPE_SCRIPT, TYPE_IMAGE = nsIContentPolicy::TYPE_IMAGE, TYPE_STYLESHEET = nsIContentPolicy::TYPE_STYLESHEET, TYPE_OBJECT = nsIContentPolicy::TYPE_OBJECT, TYPE_DOCUMENT = nsIContentPolicy::TYPE_DOCUMENT, TYPE_SUBDOCUMENT = nsIContentPolicy::TYPE_SUBDOCUMENT, TYPE_PING = nsIContentPolicy::TYPE_PING, TYPE_XMLHTTPREQUEST = nsIContentPolicy::TYPE_XMLHTTPREQUEST, TYPE_DTD = nsIContentPolicy::TYPE_DTD, TYPE_FONT = nsIContentPolicy::TYPE_FONT, TYPE_MEDIA = nsIContentPolicy::TYPE_MEDIA, TYPE_WEBSOCKET = nsIContentPolicy::TYPE_WEBSOCKET, TYPE_CSP_REPORT = nsIContentPolicy::TYPE_CSP_REPORT, TYPE_XSLT = nsIContentPolicy::TYPE_XSLT, TYPE_BEACON = nsIContentPolicy::TYPE_BEACON, TYPE_FETCH = nsIContentPolicy::TYPE_FETCH, TYPE_IMAGESET = nsIContentPolicy::TYPE_IMAGESET, TYPE_WEB_MANIFEST = nsIContentPolicy::TYPE_WEB_MANIFEST, TYPE_SAVEAS_DOWNLOAD = nsIContentPolicy::TYPE_SAVEAS_DOWNLOAD, TYPE_SPECULATIVE = nsIContentPolicy::TYPE_SPECULATIVE, TYPE_UA_FONT = nsIContentPolicy::TYPE_UA_FONT, TYPE_PROXIED_WEBRTC_MEDIA = nsIContentPolicy::TYPE_PROXIED_WEBRTC_MEDIA, TYPE_WEB_IDENTITY = nsIContentPolicy::TYPE_WEB_IDENTITY, TYPE_WEB_TRANSPORT = nsIContentPolicy::TYPE_WEB_TRANSPORT, TYPE_JSON = nsIContentPolicy::TYPE_JSON, TYPE_TEXT = nsIContentPolicy::TYPE_TEXT, }; typedef ExtContentPolicyType ExtContentPolicy; // %} #endif /* __gen_nsIContentPolicy_h__ */