blob: c69f2b36df04f445dc3e6da5996a4fe263b65676 [file] [log] [blame]
// Copyright 2020 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 STORAGE_BROWSER_QUOTA_QUOTA_CLIENT_TYPE_H_
#define STORAGE_BROWSER_QUOTA_QUOTA_CLIENT_TYPE_H_
#include "base/component_export.h"
#include "base/containers/flat_set.h"
namespace storage {
// Identifies storage features for browser data deletion.
//
// Values are not expected to be persisted or logged. Enum members may be added,
// removed, and reordered without warning.
enum class QuotaClientType {
kFileSystem = 1,
kDatabase = 2,
kIndexedDatabase = 3,
kServiceWorkerCache = 4,
kServiceWorker = 5,
kBackgroundFetch = 6,
kAppcache = 7,
kNativeIO = 8,
};
// Set of QuotaClientType values.
//
// TODO(pwnall): Switch to std::bitset, or another type that's cheap to copy.
using QuotaClientTypes = base::flat_set<QuotaClientType>;
COMPONENT_EXPORT(STORAGE_BROWSER) const QuotaClientTypes& AllQuotaClientTypes();
} // namespace storage
#endif // STORAGE_BROWSER_QUOTA_QUOTA_CLIENT_TYPE_H_