using Amazon.Runtime.Internal.Transform;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
namespace Amazon.Runtime
{
public interface IUnityHttpRequest
{
///
/// The content to be sent in the request body.
///
byte[] RequestContent { get; }
///
/// The headers to be sent for this request.
///
Dictionary Headers { get; }
///
/// The callback to be invoked after BeginGetResponse completes.
///
AsyncCallback Callback { get; }
///
/// The IAsyncResult for the BeginGetResponse method.
/// This stores the async state to be passed to the callback after this request
/// is procesed by the UnityMainThreadDispatcher.
///
IAsyncResult AsyncResult { get; }
///
/// A wait handle that is used to implement the synchronous
/// GetResponse method.
///
ManualResetEvent WaitHandle { get; }
///
/// A flag to indicate if this request is being invoked
/// synchronously.
///
bool IsSync { get; set; }
///
/// Any exceptions resulting from this web request
/// are set on this property.
///
Exception Exception { get; set; }
///
/// The WWW instance for this web request.
///
IDisposable WwwRequest { get; set; }
///
/// The response for this web request.
///
IWebResponseData Response { get; set; }
///
/// Track upload progress changes
///
///
void OnUploadProgressChanged(float progress);
}
}