// Copyright 2017 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

library fuchsia.modular;

/// This interface is used by the caller of ComponentContext::DeprecatedConnectToAgent() to
/// tell the framework that it is still interested in keeping this Agent running.
///
/// The system counts AgentController connections and terminates this Agent if
/// the count goes to zero.
protocol AgentController {
};
