chromium/components/sharing_message/vapid_key_manager.h

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

#ifndef COMPONENTS_SHARING_MESSAGE_VAPID_KEY_MANAGER_H_
#define COMPONENTS_SHARING_MESSAGE_VAPID_KEY_MANAGER_H_

#include <stdint.h>

#include <memory>
#include <vector>

#include "base/memory/raw_ptr.h"

namespace crypto {
class ECPrivateKey;
}  // namespace crypto

namespace syncer {
class SyncService;
}  // namespace syncer

class SharingSyncPreference;
enum class SharingVapidKeyCreationResult;

// Responsible for creating, storing and managing VAPID key. VAPID key is
// shared across all devices for a single user and is used for signing VAPID
// headers for Web Push.
// Web Push Protocol :
// https://developers.google.com/web/fundamentals/push-notifications/web-push-protocol
class VapidKeyManager {};

#endif  // COMPONENTS_SHARING_MESSAGE_VAPID_KEY_MANAGER_H_