chromium/extensions/browser/api/declarative_net_request/declarative_net_request_api.h

// Copyright 2018 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef EXTENSIONS_BROWSER_API_DECLARATIVE_NET_REQUEST_DECLARATIVE_NET_REQUEST_API_H_
#define EXTENSIONS_BROWSER_API_DECLARATIVE_NET_REQUEST_DECLARATIVE_NET_REQUEST_API_H_

#include <string>

#include "extensions/browser/api/declarative_net_request/constants.h"
#include "extensions/browser/extension_function.h"
#include "extensions/common/api/declarative_net_request.h"
#include "extensions/common/permissions/permissions_data.h"
#include "net/http/http_response_headers.h"

namespace extensions {

namespace declarative_net_request {
class CompositeMatcher;
struct ReadJSONRulesResult;
struct RequestAction;
struct RequestParams;
}  // namespace declarative_net_request

namespace api::declarative_net_request::GetDynamicRules {
struct Params;
}

class DeclarativeNetRequestUpdateDynamicRulesFunction
    : public ExtensionFunction {};

class DeclarativeNetRequestGetDynamicRulesFunction : public ExtensionFunction {};

class DeclarativeNetRequestUpdateSessionRulesFunction
    : public ExtensionFunction {};

class DeclarativeNetRequestGetSessionRulesFunction : public ExtensionFunction {};

class DeclarativeNetRequestUpdateEnabledRulesetsFunction
    : public ExtensionFunction {};

class DeclarativeNetRequestGetEnabledRulesetsFunction
    : public ExtensionFunction {};

class DeclarativeNetRequestUpdateStaticRulesFunction
    : public ExtensionFunction {};

class DeclarativeNetRequestGetDisabledRuleIdsFunction
    : public ExtensionFunction {};

class DeclarativeNetRequestGetMatchedRulesFunction : public ExtensionFunction {};

class DeclarativeNetRequestSetExtensionActionOptionsFunction
    : public ExtensionFunction {};

class DeclarativeNetRequestIsRegexSupportedFunction : public ExtensionFunction {};

class DeclarativeNetRequestGetAvailableStaticRuleCountFunction
    : public ExtensionFunction {};

class DeclarativeNetRequestTestMatchOutcomeFunction : public ExtensionFunction {};

}  // namespace extensions

#endif  // EXTENSIONS_BROWSER_API_DECLARATIVE_NET_REQUEST_DECLARATIVE_NET_REQUEST_API_H_