#ifndef EXTENSIONS_BROWSER_API_DECLARATIVE_WEBREQUEST_WEBREQUEST_ACTION_H_
#define EXTENSIONS_BROWSER_API_DECLARATIVE_WEBREQUEST_WEBREQUEST_ACTION_H_
#include <list>
#include <memory>
#include <optional>
#include <string>
#include <vector>
#include "base/compiler_specific.h"
#include "base/memory/raw_ptr.h"
#include "base/memory/raw_ref.h"
#include "base/memory/ref_counted.h"
#include "extensions/browser/api/declarative/declarative_rule.h"
#include "extensions/browser/api/declarative_webrequest/request_stage.h"
#include "extensions/browser/api/web_request/web_request_api_helpers.h"
#include "extensions/common/api/events.h"
#include "extensions/common/extension_id.h"
#include "url/gurl.h"
namespace base {
class Time;
class Value;
}
namespace extension_web_request_api_helpers {
struct EventResponseDelta;
}
namespace extensions {
class Extension;
class PermissionHelper;
struct WebRequestData;
}
namespace re2 {
class RE2;
}
namespace extensions {
class WebRequestAction : public base::RefCounted<WebRequestAction> { … };
WebRequestActionSet;
class WebRequestCancelAction : public WebRequestAction { … };
class WebRequestRedirectAction : public WebRequestAction { … };
class WebRequestRedirectToTransparentImageAction : public WebRequestAction { … };
class WebRequestRedirectToEmptyDocumentAction : public WebRequestAction { … };
class WebRequestRedirectByRegExAction : public WebRequestAction { … };
class WebRequestSetRequestHeaderAction : public WebRequestAction { … };
class WebRequestRemoveRequestHeaderAction : public WebRequestAction { … };
class WebRequestAddResponseHeaderAction : public WebRequestAction { … };
class WebRequestRemoveResponseHeaderAction : public WebRequestAction { … };
class WebRequestIgnoreRulesAction : public WebRequestAction { … };
class WebRequestRequestCookieAction : public WebRequestAction { … };
class WebRequestResponseCookieAction : public WebRequestAction { … };
class WebRequestSendMessageToExtensionAction : public WebRequestAction { … };
}
#endif