#ifndef THIRD_PARTY_BLINK_RENDERER_CORE_PERMISSIONS_POLICY_PERMISSIONS_POLICY_PARSER_H_
#define THIRD_PARTY_BLINK_RENDERER_CORE_PERMISSIONS_POLICY_PERMISSIONS_POLICY_PARSER_H_
#include "base/memory/scoped_refptr.h"
#include "third_party/blink/public/common/permissions_policy/origin_with_possible_wildcards.h"
#include "third_party/blink/public/common/permissions_policy/permissions_policy.h"
#include "third_party/blink/renderer/core/core_export.h"
#include "third_party/blink/renderer/core/permissions_policy/policy_helper.h"
#include "third_party/blink/renderer/platform/weborigin/security_origin.h"
#include "third_party/blink/renderer/platform/wtf/text/string_hash.h"
#include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
#include "third_party/blink/renderer/platform/wtf/vector.h"
namespace blink {
class ExecutionContext;
CORE_EXPORT const Vector<String> GetAvailableFeatures(ExecutionContext*);
class CORE_EXPORT PermissionsPolicyParser { … };
CORE_EXPORT bool IsFeatureDeclared(mojom::blink::PermissionsPolicyFeature,
const ParsedPermissionsPolicy&);
CORE_EXPORT bool RemoveFeatureIfPresent(mojom::blink::PermissionsPolicyFeature,
ParsedPermissionsPolicy&);
CORE_EXPORT bool DisallowFeatureIfNotPresent(
mojom::blink::PermissionsPolicyFeature,
ParsedPermissionsPolicy&);
CORE_EXPORT bool AllowFeatureEverywhereIfNotPresent(
mojom::blink::PermissionsPolicyFeature,
ParsedPermissionsPolicy&);
CORE_EXPORT void DisallowFeature(mojom::blink::PermissionsPolicyFeature,
ParsedPermissionsPolicy&);
CORE_EXPORT bool IsFeatureForMeasurementOnly(
mojom::blink::PermissionsPolicyFeature);
CORE_EXPORT void AllowFeatureEverywhere(mojom::blink::PermissionsPolicyFeature,
ParsedPermissionsPolicy&);
CORE_EXPORT const String
GetNameForFeature(mojom::blink::PermissionsPolicyFeature,
bool is_isolated_context);
}
#endif