| // 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. |
| |
| module content.mojom; |
| |
| interface Foo { |
| GetFoo() => (string value); |
| }; |
| |
| interface Bar { |
| GetBar() => (string value); |
| }; |
| |
| interface Baz { |
| GetBaz() => (string value); |
| }; |
| |
| // A bridge (aka Factory) interface that is used for binding other |
| // interfaces. |
| interface TestWebUIJsBridge { |
| // The WebUI calls this method to bind a Foo remote. |
| BindFoo(pending_receiver<Foo> foo); |
| |
| // The WebUI calls this method to bind a Foo remote and provide the |
| // browser with a Bar remote. |
| BindFooBar(pending_receiver<Foo> foo, |
| pending_remote<Bar> bar); |
| |
| // The WebUI calls this method to provide the browser with a Baz remote. |
| BindBaz(pending_remote<Baz> baz); |
| }; |