chromium/chrome/updater/ipc/update_service_proxy.h

// Copyright 2023 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_UPDATER_IPC_UPDATE_SERVICE_PROXY_H_
#define CHROME_UPDATER_IPC_UPDATE_SERVICE_PROXY_H_

#include <memory>

#include "base/functional/callback_forward.h"
#include "base/memory/scoped_refptr.h"
#include "base/sequence_checker.h"
#include "base/types/expected.h"
#include "chrome/updater/update_service.h"

#if BUILDFLAG(IS_POSIX)
#include "chrome/updater/ipc/update_service_proxy_posix.h"
#elif BUILDFLAG(IS_WIN)
#include "chrome/updater/ipc/update_service_proxy_win.h"
#endif

namespace base {
class FilePath;
class Version;
}  // namespace base

namespace updater {

struct RegistrationRequest;

// UpdateServiceProxy is an UpdateService that connects to the active updater
// instance server and runs its implementation of UpdateService methods. All
// functions and callbacks must be called on the same sequence.
class UpdateServiceProxy : public UpdateService {};

}  // namespace updater

#endif  // CHROME_UPDATER_IPC_UPDATE_SERVICE_PROXY_H_