/* * DO NOT EDIT. THIS FILE IS GENERATED FROM $SRCDIR/toolkit/components/antitracking/bouncetrackingprotection/nsIBounceTrackingProtection.idl */ #ifndef __gen_nsIBounceTrackingProtection_h__ #define __gen_nsIBounceTrackingProtection_h__ #include "nsISupports.h" #include "nsIBounceTrackingMapEntry.h" #include "nsTArray.h" #include "js/Value.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 /* starting interface: nsIBounceTrackingProtection */ #define NS_IBOUNCETRACKINGPROTECTION_IID_STR "4866f748-29da-4c10-8eaa-ed2f7851e6b1" #define NS_IBOUNCETRACKINGPROTECTION_IID \ {0x4866f748, 0x29da, 0x4c10, \ { 0x8e, 0xaa, 0xed, 0x2f, 0x78, 0x51, 0xe6, 0xb1 }} class NS_NO_VTABLE MOZ_BINDING(binding_to, idl, class, XPIDL_nsIBounceTrackingProtection) nsIBounceTrackingProtection : public nsISupports { public: NS_INLINE_DECL_STATIC_IID(NS_IBOUNCETRACKINGPROTECTION_IID) /* Used by ToJSValue to check which scriptable interface is implemented. */ using ScriptableInterfaceType = nsIBounceTrackingProtection; enum MOZ_BINDING(binding_to, idl, class, XPIDL_nsIBounceTrackingProtection_Modes) Modes : uint8_t { MODE_DISABLED MOZ_BINDING(binding_to, idl, const, XPIDL_nsIBounceTrackingProtection_Modes_MODE_DISABLED) = 0, MODE_ENABLED MOZ_BINDING(binding_to, idl, const, XPIDL_nsIBounceTrackingProtection_Modes_MODE_ENABLED) = 1, MODE_ENABLED_STANDBY MOZ_BINDING(binding_to, idl, const, XPIDL_nsIBounceTrackingProtection_Modes_MODE_ENABLED_STANDBY) = 2, MODE_ENABLED_DRY_RUN MOZ_BINDING(binding_to, idl, const, XPIDL_nsIBounceTrackingProtection_Modes_MODE_ENABLED_DRY_RUN) = 3, MAX_MODE_VALUE MOZ_BINDING(binding_to, idl, const, XPIDL_nsIBounceTrackingProtection_Modes_MAX_MODE_VALUE) = 3, }; /* void clearAll (); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_clearAll) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ClearAll(void) = 0; /* [implicit_jscontext] void clearBySiteHostAndOriginAttributes (in ACString aSiteHost, in jsval originAttributes); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_clearBySiteHostAndOriginAttributes) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ClearBySiteHostAndOriginAttributes(const nsACString& aSiteHost, JS::Handle originAttributes, JSContext* cx) = 0; /* [implicit_jscontext] void clearBySiteHostAndOriginAttributesPattern (in ACString aSiteHost, in jsval aOriginAttributesPattern); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_clearBySiteHostAndOriginAttributesPattern) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ClearBySiteHostAndOriginAttributesPattern(const nsACString& aSiteHost, JS::Handle aOriginAttributesPattern, JSContext* cx) = 0; /* void clearByTimeRange (in PRTime aFrom, in PRTime aTo); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_clearByTimeRange) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ClearByTimeRange(PRTime aFrom, PRTime aTo) = 0; /* void clearByOriginAttributesPattern (in AString aPattern); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_clearByOriginAttributesPattern) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD ClearByOriginAttributesPattern(const nsAString& aPattern) = 0; /* void addSiteHostExceptions (in Array aSiteHosts); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_addSiteHostExceptions) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD AddSiteHostExceptions(const nsTArray& aSiteHosts) = 0; /* void removeSiteHostExceptions (in Array aSiteHosts); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_removeSiteHostExceptions) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD RemoveSiteHostExceptions(const nsTArray& aSiteHosts) = 0; /* boolean hasRecentlyPurgedSite (in ACString aSiteHost); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_hasRecentlyPurgedSite) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD HasRecentlyPurgedSite(const nsACString& aSiteHost, bool *_retval) = 0; /* Array getRecentPurgedChainEntriesForSite (in ACString aSiteHost); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_getRecentPurgedChainEntriesForSite) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD GetRecentPurgedChainEntriesForSite(const nsACString& aSiteHost, nsTArray>& _retval) = 0; /* Array testGetSiteHostExceptions (); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_testGetSiteHostExceptions) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD TestGetSiteHostExceptions(nsTArray& _retval) = 0; /* [implicit_jscontext] Promise testRunPurgeBounceTrackers (); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_testRunPurgeBounceTrackers) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD TestRunPurgeBounceTrackers(JSContext* cx, ::mozilla::dom::Promise * * _retval) = 0; /* void testClearExpiredUserActivations (); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_testClearExpiredUserActivations) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD TestClearExpiredUserActivations(void) = 0; /* [implicit_jscontext] Array testGetBounceTrackerCandidateHosts (in jsval originAttributes); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_testGetBounceTrackerCandidateHosts) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD TestGetBounceTrackerCandidateHosts(JS::Handle originAttributes, JSContext* cx, nsTArray>& _retval) = 0; /* [implicit_jscontext] Array testGetUserActivationHosts (in jsval originAttributes); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_testGetUserActivationHosts) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD TestGetUserActivationHosts(JS::Handle originAttributes, JSContext* cx, nsTArray>& _retval) = 0; /* [implicit_jscontext] void testAddBounceTrackerCandidate (in jsval originAttributes, in ACString aSiteHost, in PRTime aBounceTime); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_testAddBounceTrackerCandidate) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD TestAddBounceTrackerCandidate(JS::Handle originAttributes, const nsACString& aSiteHost, PRTime aBounceTime, JSContext* cx) = 0; /* [implicit_jscontext] void testAddUserActivation (in jsval originAttributes, in ACString aSiteHost, in PRTime aActivationTime); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_testAddUserActivation) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD TestAddUserActivation(JS::Handle originAttributes, const nsACString& aSiteHost, PRTime aActivationTime, JSContext* cx) = 0; /* [implicit_jscontext] Array testGetRecentlyPurgedTrackers (in jsval originAttributes); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_testGetRecentlyPurgedTrackers) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD TestGetRecentlyPurgedTrackers(JS::Handle originAttributes, JSContext* cx, nsTArray>& _retval) = 0; /* void testMaybeMigrateUserInteractionPermissions (); */ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_testMaybeMigrateUserInteractionPermissions) JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD TestMaybeMigrateUserInteractionPermissions(void) = 0; }; /* Use this macro when declaring classes that implement this interface. */ #define NS_DECL_NSIBOUNCETRACKINGPROTECTION \ NS_IMETHOD ClearAll(void) override; \ NS_IMETHOD ClearBySiteHostAndOriginAttributes(const nsACString& aSiteHost, JS::Handle originAttributes, JSContext* cx) override; \ NS_IMETHOD ClearBySiteHostAndOriginAttributesPattern(const nsACString& aSiteHost, JS::Handle aOriginAttributesPattern, JSContext* cx) override; \ NS_IMETHOD ClearByTimeRange(PRTime aFrom, PRTime aTo) override; \ NS_IMETHOD ClearByOriginAttributesPattern(const nsAString& aPattern) override; \ NS_IMETHOD AddSiteHostExceptions(const nsTArray& aSiteHosts) override; \ NS_IMETHOD RemoveSiteHostExceptions(const nsTArray& aSiteHosts) override; \ NS_IMETHOD HasRecentlyPurgedSite(const nsACString& aSiteHost, bool *_retval) override; \ NS_IMETHOD GetRecentPurgedChainEntriesForSite(const nsACString& aSiteHost, nsTArray>& _retval) override; \ NS_IMETHOD TestGetSiteHostExceptions(nsTArray& _retval) override; \ NS_IMETHOD TestRunPurgeBounceTrackers(JSContext* cx, ::mozilla::dom::Promise * * _retval) override; \ NS_IMETHOD TestClearExpiredUserActivations(void) override; \ NS_IMETHOD TestGetBounceTrackerCandidateHosts(JS::Handle originAttributes, JSContext* cx, nsTArray>& _retval) override; \ NS_IMETHOD TestGetUserActivationHosts(JS::Handle originAttributes, JSContext* cx, nsTArray>& _retval) override; \ NS_IMETHOD TestAddBounceTrackerCandidate(JS::Handle originAttributes, const nsACString& aSiteHost, PRTime aBounceTime, JSContext* cx) override; \ NS_IMETHOD TestAddUserActivation(JS::Handle originAttributes, const nsACString& aSiteHost, PRTime aActivationTime, JSContext* cx) override; \ NS_IMETHOD TestGetRecentlyPurgedTrackers(JS::Handle originAttributes, JSContext* cx, nsTArray>& _retval) override; \ NS_IMETHOD TestMaybeMigrateUserInteractionPermissions(void) 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_NSIBOUNCETRACKINGPROTECTION \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_clearAll)\ nsresult ClearAll(void); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_clearBySiteHostAndOriginAttributes)\ nsresult ClearBySiteHostAndOriginAttributes(const nsACString& aSiteHost, JS::Handle originAttributes, JSContext* cx); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_clearBySiteHostAndOriginAttributesPattern)\ nsresult ClearBySiteHostAndOriginAttributesPattern(const nsACString& aSiteHost, JS::Handle aOriginAttributesPattern, JSContext* cx); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_clearByTimeRange)\ nsresult ClearByTimeRange(PRTime aFrom, PRTime aTo); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_clearByOriginAttributesPattern)\ nsresult ClearByOriginAttributesPattern(const nsAString& aPattern); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_addSiteHostExceptions)\ nsresult AddSiteHostExceptions(const nsTArray& aSiteHosts); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_removeSiteHostExceptions)\ nsresult RemoveSiteHostExceptions(const nsTArray& aSiteHosts); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_hasRecentlyPurgedSite)\ nsresult HasRecentlyPurgedSite(const nsACString& aSiteHost, bool *_retval); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_getRecentPurgedChainEntriesForSite)\ nsresult GetRecentPurgedChainEntriesForSite(const nsACString& aSiteHost, nsTArray>& _retval); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_testGetSiteHostExceptions)\ nsresult TestGetSiteHostExceptions(nsTArray& _retval); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_testRunPurgeBounceTrackers)\ nsresult TestRunPurgeBounceTrackers(JSContext* cx, ::mozilla::dom::Promise * * _retval); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_testClearExpiredUserActivations)\ nsresult TestClearExpiredUserActivations(void); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_testGetBounceTrackerCandidateHosts)\ nsresult TestGetBounceTrackerCandidateHosts(JS::Handle originAttributes, JSContext* cx, nsTArray>& _retval); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_testGetUserActivationHosts)\ nsresult TestGetUserActivationHosts(JS::Handle originAttributes, JSContext* cx, nsTArray>& _retval); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_testAddBounceTrackerCandidate)\ nsresult TestAddBounceTrackerCandidate(JS::Handle originAttributes, const nsACString& aSiteHost, PRTime aBounceTime, JSContext* cx); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_testAddUserActivation)\ nsresult TestAddUserActivation(JS::Handle originAttributes, const nsACString& aSiteHost, PRTime aActivationTime, JSContext* cx); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_testGetRecentlyPurgedTrackers)\ nsresult TestGetRecentlyPurgedTrackers(JS::Handle originAttributes, JSContext* cx, nsTArray>& _retval); \ MOZ_BINDING(binding_to, idl, method, XPIDL_nsIBounceTrackingProtection_testMaybeMigrateUserInteractionPermissions)\ nsresult TestMaybeMigrateUserInteractionPermissions(void); /* Use this macro to declare functions that forward the behavior of this interface to another object. */ #define NS_FORWARD_NSIBOUNCETRACKINGPROTECTION(_to) \ NS_IMETHOD ClearAll(void) override { return _to ClearAll(); } \ NS_IMETHOD ClearBySiteHostAndOriginAttributes(const nsACString& aSiteHost, JS::Handle originAttributes, JSContext* cx) override { return _to ClearBySiteHostAndOriginAttributes(aSiteHost, originAttributes, cx); } \ NS_IMETHOD ClearBySiteHostAndOriginAttributesPattern(const nsACString& aSiteHost, JS::Handle aOriginAttributesPattern, JSContext* cx) override { return _to ClearBySiteHostAndOriginAttributesPattern(aSiteHost, aOriginAttributesPattern, cx); } \ NS_IMETHOD ClearByTimeRange(PRTime aFrom, PRTime aTo) override { return _to ClearByTimeRange(aFrom, aTo); } \ NS_IMETHOD ClearByOriginAttributesPattern(const nsAString& aPattern) override { return _to ClearByOriginAttributesPattern(aPattern); } \ NS_IMETHOD AddSiteHostExceptions(const nsTArray& aSiteHosts) override { return _to AddSiteHostExceptions(aSiteHosts); } \ NS_IMETHOD RemoveSiteHostExceptions(const nsTArray& aSiteHosts) override { return _to RemoveSiteHostExceptions(aSiteHosts); } \ NS_IMETHOD HasRecentlyPurgedSite(const nsACString& aSiteHost, bool *_retval) override { return _to HasRecentlyPurgedSite(aSiteHost, _retval); } \ NS_IMETHOD GetRecentPurgedChainEntriesForSite(const nsACString& aSiteHost, nsTArray>& _retval) override { return _to GetRecentPurgedChainEntriesForSite(aSiteHost, _retval); } \ NS_IMETHOD TestGetSiteHostExceptions(nsTArray& _retval) override { return _to TestGetSiteHostExceptions(_retval); } \ NS_IMETHOD TestRunPurgeBounceTrackers(JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return _to TestRunPurgeBounceTrackers(cx, _retval); } \ NS_IMETHOD TestClearExpiredUserActivations(void) override { return _to TestClearExpiredUserActivations(); } \ NS_IMETHOD TestGetBounceTrackerCandidateHosts(JS::Handle originAttributes, JSContext* cx, nsTArray>& _retval) override { return _to TestGetBounceTrackerCandidateHosts(originAttributes, cx, _retval); } \ NS_IMETHOD TestGetUserActivationHosts(JS::Handle originAttributes, JSContext* cx, nsTArray>& _retval) override { return _to TestGetUserActivationHosts(originAttributes, cx, _retval); } \ NS_IMETHOD TestAddBounceTrackerCandidate(JS::Handle originAttributes, const nsACString& aSiteHost, PRTime aBounceTime, JSContext* cx) override { return _to TestAddBounceTrackerCandidate(originAttributes, aSiteHost, aBounceTime, cx); } \ NS_IMETHOD TestAddUserActivation(JS::Handle originAttributes, const nsACString& aSiteHost, PRTime aActivationTime, JSContext* cx) override { return _to TestAddUserActivation(originAttributes, aSiteHost, aActivationTime, cx); } \ NS_IMETHOD TestGetRecentlyPurgedTrackers(JS::Handle originAttributes, JSContext* cx, nsTArray>& _retval) override { return _to TestGetRecentlyPurgedTrackers(originAttributes, cx, _retval); } \ NS_IMETHOD TestMaybeMigrateUserInteractionPermissions(void) override { return _to TestMaybeMigrateUserInteractionPermissions(); } /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ #define NS_FORWARD_SAFE_NSIBOUNCETRACKINGPROTECTION(_to) \ NS_IMETHOD ClearAll(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ClearAll(); } \ NS_IMETHOD ClearBySiteHostAndOriginAttributes(const nsACString& aSiteHost, JS::Handle originAttributes, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ClearBySiteHostAndOriginAttributes(aSiteHost, originAttributes, cx); } \ NS_IMETHOD ClearBySiteHostAndOriginAttributesPattern(const nsACString& aSiteHost, JS::Handle aOriginAttributesPattern, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ClearBySiteHostAndOriginAttributesPattern(aSiteHost, aOriginAttributesPattern, cx); } \ NS_IMETHOD ClearByTimeRange(PRTime aFrom, PRTime aTo) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ClearByTimeRange(aFrom, aTo); } \ NS_IMETHOD ClearByOriginAttributesPattern(const nsAString& aPattern) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ClearByOriginAttributesPattern(aPattern); } \ NS_IMETHOD AddSiteHostExceptions(const nsTArray& aSiteHosts) override { return !_to ? NS_ERROR_NULL_POINTER : _to->AddSiteHostExceptions(aSiteHosts); } \ NS_IMETHOD RemoveSiteHostExceptions(const nsTArray& aSiteHosts) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveSiteHostExceptions(aSiteHosts); } \ NS_IMETHOD HasRecentlyPurgedSite(const nsACString& aSiteHost, bool *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->HasRecentlyPurgedSite(aSiteHost, _retval); } \ NS_IMETHOD GetRecentPurgedChainEntriesForSite(const nsACString& aSiteHost, nsTArray>& _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetRecentPurgedChainEntriesForSite(aSiteHost, _retval); } \ NS_IMETHOD TestGetSiteHostExceptions(nsTArray& _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->TestGetSiteHostExceptions(_retval); } \ NS_IMETHOD TestRunPurgeBounceTrackers(JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->TestRunPurgeBounceTrackers(cx, _retval); } \ NS_IMETHOD TestClearExpiredUserActivations(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->TestClearExpiredUserActivations(); } \ NS_IMETHOD TestGetBounceTrackerCandidateHosts(JS::Handle originAttributes, JSContext* cx, nsTArray>& _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->TestGetBounceTrackerCandidateHosts(originAttributes, cx, _retval); } \ NS_IMETHOD TestGetUserActivationHosts(JS::Handle originAttributes, JSContext* cx, nsTArray>& _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->TestGetUserActivationHosts(originAttributes, cx, _retval); } \ NS_IMETHOD TestAddBounceTrackerCandidate(JS::Handle originAttributes, const nsACString& aSiteHost, PRTime aBounceTime, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->TestAddBounceTrackerCandidate(originAttributes, aSiteHost, aBounceTime, cx); } \ NS_IMETHOD TestAddUserActivation(JS::Handle originAttributes, const nsACString& aSiteHost, PRTime aActivationTime, JSContext* cx) override { return !_to ? NS_ERROR_NULL_POINTER : _to->TestAddUserActivation(originAttributes, aSiteHost, aActivationTime, cx); } \ NS_IMETHOD TestGetRecentlyPurgedTrackers(JS::Handle originAttributes, JSContext* cx, nsTArray>& _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->TestGetRecentlyPurgedTrackers(originAttributes, cx, _retval); } \ NS_IMETHOD TestMaybeMigrateUserInteractionPermissions(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->TestMaybeMigrateUserInteractionPermissions(); } #endif /* __gen_nsIBounceTrackingProtection_h__ */