chromium/third_party/blink/public/common/permissions_policy/policy_value.h

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

#ifndef THIRD_PARTY_BLINK_PUBLIC_COMMON_PERMISSIONS_POLICY_POLICY_VALUE_H_
#define THIRD_PARTY_BLINK_PUBLIC_COMMON_PERMISSIONS_POLICY_POLICY_VALUE_H_

#include "third_party/blink/public/common/common_export.h"
#include "third_party/blink/public/mojom/permissions_policy/policy_value.mojom-shared.h"

namespace blink {

// ListValue (PolicyValue)
// ----------------------
// PolicyValue is a union of types (int / double / set<int> / bool ) that can be
// used to specify the parameter of a policy.

// TODO(crbug.com/1119481): Add the following types: enum, inc/dec int, inc
// double, set.
class BLINK_COMMON_EXPORT PolicyValue {};

bool BLINK_COMMON_EXPORT operator==(const PolicyValue& lhs,
                                    const PolicyValue& rhs);
bool BLINK_COMMON_EXPORT operator!=(const PolicyValue& lhs,
                                    const PolicyValue& rhs);
}  // namespace blink

#endif  // THIRD_PARTY_BLINK_PUBLIC_COMMON_PERMISSIONS_POLICY_POLICY_VALUE_H_