| // Copyright 2018 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| module app_management.mojom; |
| |
| import "chrome/services/app_service/public/mojom/types.mojom"; |
| |
| struct App { |
| string id; |
| |
| apps.mojom.AppType type; |
| |
| // The fields below may be omitted because this struct is also used to signal |
| // updates. |
| |
| string? title; |
| string? description; |
| apps.mojom.OptionalBool is_pinned; |
| string? version; |
| string? size; |
| }; |
| |
| interface PageHandlerFactory { |
| CreatePageHandler(Page page, PageHandler& handler); |
| }; |
| |
| // Browser interface. |
| interface PageHandler { |
| GetApps(); |
| }; |
| |
| // Frontend interface. |
| interface Page { |
| OnAppsAdded(array<App> apps); |
| OnAppChanged(App update); |
| OnAppRemoved(string app_id); |
| }; |