1// Copyright 2016 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5module device.mojom;
6
7interface PowerMonitor {
8  // Add a client that will be notified on PowerStateChange, Suspend and Resume.
9  AddClient(pending_remote<PowerMonitorClient> client);
10};
11
12interface PowerMonitorClient {
13  // Notification of a change in power status of the computer, such
14  // as from switching between battery and A/C power.
15  PowerStateChange(bool on_battery_power);
16
17  // Notification that the system is suspending.
18  Suspend();
19
20  // Notification that the system is resuming.
21  Resume();
22};
23