chromium/chrome/browser/safe_browsing/extension_telemetry/extension_telemetry_uploader.h

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

#ifndef CHROME_BROWSER_SAFE_BROWSING_EXTENSION_TELEMETRY_EXTENSION_TELEMETRY_UPLOADER_H_
#define CHROME_BROWSER_SAFE_BROWSING_EXTENSION_TELEMETRY_EXTENSION_TELEMETRY_UPLOADER_H_

#include <memory>
#include <string>

#include "base/functional/callback.h"
#include "base/memory/weak_ptr.h"
#include "base/time/time.h"

namespace network {
class SharedURLLoaderFactory;
class SimpleURLLoader;
}  // namespace network

namespace safe_browsing {

class SafeBrowsingTokenFetcher;

// An uploader of extension telemetry reports. An upload is initiated by
// creating an instance of this object and then calling its StartUpload method.
// The upload can be cancelled by deleting the uploader instance. The instance
// is not usable after the upload notification and can be safely destroyed.
class ExtensionTelemetryUploader {};

}  // namespace safe_browsing

#endif  // CHROME_BROWSER_SAFE_BROWSING_EXTENSION_TELEMETRY_EXTENSION_TELEMETRY_UPLOADER_H_