summaryrefslogtreecommitdiff
path: root/chromium/extensions/common/features/manifest_feature.h
blob: c3822d79f18d23f367d1e9d0cb4a59abfb15a418 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef EXTENSIONS_COMMON_FEATURES_MANIFEST_FEATURE_H_
#define EXTENSIONS_COMMON_FEATURES_MANIFEST_FEATURE_H_

#include <string>

#include "extensions/common/features/simple_feature.h"

namespace extensions {

class ManifestFeature : public SimpleFeature {
 public:
  ManifestFeature();
  ~ManifestFeature() override;

  // TODO(crbug.com/1078984): This should also override IsAvailableToManifest so
  // that a permission or manifest feature can declare dependency on other
  // manifest features.

  Feature::Availability IsAvailableToContext(
      const Extension* extension,
      Feature::Context context,
      const GURL& url,
      Feature::Platform platform) const override;
};

}  // namespace extensions

#endif  // EXTENSIONS_COMMON_FEATURES_MANIFEST_FEATURE_H_