// Copyright 2014 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 shell;

import "mojo/public/interfaces/application/application.mojom";

interface ChildController {
  // Starts the app at the given path.
  StartApp(string app_path,
           mojo.Application& application_request) => (int32 result);

  // Exits the child process now (with no cleanup), with the given exit code.
  ExitNow(int32 exit_code);
};
