#include "chrome/browser/extensions/api/declarative_content/content_condition.h"
#include <memory>
#include <utility>
#include "base/functional/bind.h"
#include "base/strings/stringprintf.h"
#include "base/values.h"
#include "extensions/common/api/declarative/declarative_constants.h"
namespace extensions {
namespace {
const char kExpectedDictionary[] = …;
const char kConditionWithoutInstanceType[] = …;
const char kExpectedOtherConditionType[] = …;
const char kUnknownConditionAttribute[] = …;
}
ContentCondition::ContentCondition(
std::vector<std::unique_ptr<const ContentPredicate>> predicates)
: … { … }
ContentCondition::~ContentCondition() { … }
std::unique_ptr<ContentCondition> CreateContentCondition(
const Extension* extension,
const std::map<std::string, ContentPredicateFactory*>& predicate_factories,
const base::Value& api_condition,
std::string* error) { … }
}