chromium/chromeos/crosapi/mojom/browser_version.mojom

// 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.

module crosapi.mojom;

// Interface for browser version observers. Implemented by lacros-chrome.
// Used by ash-chrome to send browser version updates.
[Stable, Uuid="e2be41cc-1a70-4258-b548-e7b510d73980"]
interface BrowserVersionObserver {
  // Called when a browser version change happens.
  OnBrowserVersionInstalled@0(string version);
};

// Interface that allows clients to receive update notifications
// when a new browser version is available, such as when an update has
// downloaded a new version of the browser. Implemented by ash-chrome.
// Next version: 2
// Next method id: 2
[Stable, Uuid="381c0e9c-110c-4acf-accc-26ace4cc917a"]
interface BrowserVersionService {
  // Adds an observer for browser version changes.
  AddBrowserVersionObserver@0(
      pending_remote<BrowserVersionObserver> observer);

  // Returns the latest installed stateful browser version or empty if none is
  // installed, regardless of the currently running browser version.
  [MinVersion=1]
  GetInstalledBrowserVersion@1() => (string version);
};