1 // Copyright 2017 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef EXTENSIONS_COMMON_API_DECLARATIVE_NET_REQUEST_CONSTANTS_H_
6 #define EXTENSIONS_COMMON_API_DECLARATIVE_NET_REQUEST_CONSTANTS_H_
7 
8 namespace extensions {
9 namespace declarative_net_request {
10 
11 // Permission name.
12 extern const char kAPIPermission[];
13 
14 // Feedback permission name.
15 extern const char kFeedbackAPIPermission[];
16 
17 // Minimum valid value of a declarative rule ID.
18 constexpr int kMinValidID = 1;
19 
20 // Minimum valid value of a declarative rule priority.
21 constexpr int kMinValidPriority = 1;
22 
23 constexpr int kMinValidStaticRulesetID = 1;
24 constexpr int kDynamicRulesetID = 0;
25 constexpr int kInvalidRulesetID = -1;
26 
27 // Default priority used for rules when the priority is not explicity provided
28 // by an extension.
29 constexpr int kDefaultPriority = 1;
30 
31 // Keys used in rules.
32 extern const char kIDKey[];
33 extern const char kPriorityKey[];
34 extern const char kRuleConditionKey[];
35 extern const char kRuleActionKey[];
36 extern const char kUrlFilterKey[];
37 extern const char kRegexFilterKey[];
38 extern const char kIsUrlFilterCaseSensitiveKey[];
39 extern const char kDomainsKey[];
40 extern const char kExcludedDomainsKey[];
41 extern const char kResourceTypesKey[];
42 extern const char kExcludedResourceTypesKey[];
43 extern const char kDomainTypeKey[];
44 extern const char kRuleActionTypeKey[];
45 extern const char kRemoveHeadersListKey[];
46 extern const char kRedirectPath[];
47 extern const char kExtensionPathPath[];
48 extern const char kTransformSchemePath[];
49 extern const char kTransformPortPath[];
50 extern const char kTransformQueryPath[];
51 extern const char kTransformFragmentPath[];
52 extern const char kTransformQueryTransformPath[];
53 extern const char kRedirectKey[];
54 extern const char kExtensionPathKey[];
55 extern const char kRedirectUrlKey[];
56 extern const char kRedirectUrlPath[];
57 extern const char kTransformKey[];
58 extern const char kTransformSchemeKey[];
59 extern const char kTransformHostKey[];
60 extern const char kTransformPortKey[];
61 extern const char kTransformPathKey[];
62 extern const char kTransformQueryKey[];
63 extern const char kTransformQueryTransformKey[];
64 extern const char kTransformFragmentKey[];
65 extern const char kTransformUsernameKey[];
66 extern const char kTransformPasswordKey[];
67 extern const char kQueryTransformRemoveParamsKey[];
68 extern const char kQueryTransformAddReplaceParamsKey[];
69 extern const char kQueryKeyKey[];
70 extern const char kQueryValueKey[];
71 extern const char kRegexSubstitutionKey[];
72 extern const char kRegexSubstitutionPath[];
73 extern const char kRequestHeadersPath[];
74 extern const char kResponseHeadersPath[];
75 
76 }  // namespace declarative_net_request
77 }  // namespace extensions
78 
79 #endif  // EXTENSIONS_COMMON_API_DECLARATIVE_NET_REQUEST_CONSTANTS_H_
80