// 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. [ ImplementedAs=SubApps, SecureContext, Exposed=Window, RuntimeEnabled=SubApps, IsolatedContext ] partial interface Window { [SameObject] readonly attribute SubApps subApps; }; dictionary SubAppsAddResponse { record installedApps; record failedApps; }; dictionary SubAppsRemoveResponse { sequence removedApps; record failedApps; }; dictionary SubAppsListResult { required DOMString appName; }; [ Exposed=Window, SecureContext, RuntimeEnabled=SubApps, IsolatedContext ] interface SubApps { [CallWith=ScriptState, RaisesException, MeasureAs=SubAppsAdd] Promise add(sequence install_paths); [CallWith=ScriptState, RaisesException, MeasureAs=SubAppsRemove] Promise remove(sequence manifest_ids); [CallWith=ScriptState, RaisesException, MeasureAs=SubAppsList] Promise> list(); };