using System;
using System.IO;
using System.Runtime.InteropServices;
using System.Runtime.Remoting.Messaging;
namespace System.Runtime.Remoting.Channels
{
/// Provides the stack functionality for a stack of client response channel sinks that must be invoked during an asynchronous message response decoding.
// Token: 0x020003AA RID: 938
[ComVisible(true)]
public interface IClientResponseChannelSinkStack
{
/// Requests asynchronous processing of a method call on the sinks in the current sink stack.
/// The headers retrieved from the server response stream.
/// The stream coming back from the transport sink.
/// The current sink stack is empty.
/// The immediate caller does not have infrastructure permission.
// Token: 0x060025B5 RID: 9653
void AsyncProcessResponse(ITransportHeaders headers, Stream stream);
/// Dispatches the specified exception on the reply sink.
/// The exception to dispatch to the server.
/// The immediate caller does not have infrastructure permission.
// Token: 0x060025B6 RID: 9654
void DispatchException(Exception e);
/// Dispatches the specified reply message on the reply sink.
/// The to dispatch.
/// The immediate caller does not have infrastructure permission.
// Token: 0x060025B7 RID: 9655
void DispatchReplyMessage(IMessage msg);
}
}