chromium/storage/browser/quota/quota_callbacks.h

// Copyright 2013 The Chromium Authors
// 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_CALLBACKS_H_
#define STORAGE_BROWSER_QUOTA_QUOTA_CALLBACKS_H_

#include <stddef.h>
#include <stdint.h>

#include <map>
#include <optional>
#include <set>
#include <utility>
#include <vector>

#include "base/containers/contains.h"
#include "base/functional/callback.h"
#include "components/services/storage/public/cpp/buckets/bucket_locator.h"
#include "third_party/blink/public/mojom/quota/quota_types.mojom-forward.h"

namespace blink {
class StorageKey;
}

namespace storage {

struct UsageInfo;
UsageInfoEntries;

// Common callback types that are used throughout in the quota module.
UsageCallback;
QuotaCallback;
UsageWithBreakdownCallback;
StatusCallback;
GetBucketsCallback;
GetStorageKeysCallback;
GetUsageInfoCallback;
GetBucketCallback;

// Simple template wrapper for a callback queue.
template <typename CallbackType, typename... Args>
class CallbackQueue {};

}  // namespace storage

#endif  // STORAGE_BROWSER_QUOTA_QUOTA_CALLBACKS_H_