using System;
namespace Capnp.Rpc.Interception
{
///
/// An interception policy implements callbacks for outgoing calls and returning forwarded calls.
///
public interface IInterceptionPolicy: IEquatable
{
///
/// A caller ("Alice") initiated a new call, which is now intercepted.
///
/// Context object
void OnCallFromAlice(CallContext callContext);
///
/// Given that the intercepted call was forwarded, it returned now from the target ("Bob")
/// and may (or may not) be returned to the original caller ("Alice").
///
///
void OnReturnFromBob(CallContext callContext);
}
}