37 lines
1 KiB
Text
37 lines
1 KiB
Text
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
#include "nsISupports.idl"
|
|
|
|
/**
|
|
* Service singleton for initializing and updating the list of cookie banner
|
|
* handling rules.
|
|
*/
|
|
[scriptable, uuid(1d8d9470-97d3-4885-a108-44a5c4fb36e2)]
|
|
interface nsICookieBannerListService : nsISupports {
|
|
/**
|
|
* Initialize the service. This asynchronously imports the initial set of rules.
|
|
*/
|
|
void init();
|
|
|
|
/**
|
|
* Same as init but returns a promise which resolves once init is done. Used
|
|
* for testing when we need to wait for all rules to be imported.
|
|
*/
|
|
Promise initForTest();
|
|
|
|
/**
|
|
* Shutdown the service. This disables any rule updates.
|
|
*/
|
|
void shutdown();
|
|
|
|
/*
|
|
* Asynchronously import all rules from RemoteSettings.
|
|
*/
|
|
void importAllRules();
|
|
};
|
|
|
|
%{C++
|
|
#define NS_COOKIEBANNERLISTSERVICE_CONTRACTID "@mozilla.org/cookie-banner-list-service;1"
|
|
%}
|