class System.Threading.Tasks.Task
   inherits System.Object
   implements System.Threading.IThreadPoolWorkItem, System.IAsyncResult, System.IDisposable:

   def public property Id as integer
      get.

   def public static property CurrentId as integer
      get.

   def public property Exception as System.AggregateException
      get.

   def public property Status as System.Threading.Tasks.TaskStatus
      get.

   def public property IsCanceled as logical
      get.

   def public property IsCompleted as logical
      get.

   def public property CreationOptions as System.Threading.Tasks.TaskCreationOptions
      get.

   def public property AsyncState as System.Object
      get.

   def public static property Factory as System.Threading.Tasks.TaskFactory
      get.

   def public static property CompletedTask as System.Threading.Tasks.Task
      get.

   def public property IsFaulted as logical
      get.

   constructor public Task(input action as System.Action):
   end constructor.

   constructor public Task(input action as System.Action, input cancellationToken as System.Threading.CancellationToken):
   end constructor.

   constructor public Task(input action as System.Action, input creationOptions as System.Threading.Tasks.TaskCreationOptions):
   end constructor.

   constructor public Task(input action as System.Action, input cancellationToken as System.Threading.CancellationToken, input creationOptions as System.Threading.Tasks.TaskCreationOptions):
   end constructor.

   constructor public Task(input action as System.Action, input state as System.Object):
   end constructor.

   constructor public Task(input action as System.Action, input state as System.Object, input cancellationToken as System.Threading.CancellationToken):
   end constructor.

   constructor public Task(input action as System.Action, input state as System.Object, input creationOptions as System.Threading.Tasks.TaskCreationOptions):
   end constructor.

   constructor public Task(input action as System.Action, input state as System.Object, input cancellationToken as System.Threading.CancellationToken, input creationOptions as System.Threading.Tasks.TaskCreationOptions):
   end constructor.

   method public final void Start():
   end method.

   method public final void Start(input scheduler as System.Threading.Tasks.TaskScheduler):
   end method.

   method public final void RunSynchronously():
   end method.

   method public final void RunSynchronously(input scheduler as System.Threading.Tasks.TaskScheduler):
   end method.

   method public final void Dispose():
   end method.

   method protected final void Dispose(input disposing as logical):
   end method.

   method public final System.Runtime.CompilerServices.TaskAwaiter GetAwaiter():
   end method.

   method public final System.Runtime.CompilerServices.ConfiguredTaskAwaitable ConfigureAwait(input continueOnCapturedContext as logical):
   end method.

   method public final static System.Runtime.CompilerServices.YieldAwaitable Yield():
   end method.

   method public final void Wait():
   end method.

   method public final logical Wait(input timeout as System.TimeSpan):
   end method.

   method public final void Wait(input cancellationToken as System.Threading.CancellationToken):
   end method.

   method public final logical Wait(input millisecondsTimeout as integer):
   end method.

   method public final logical Wait(input millisecondsTimeout as integer, input cancellationToken as System.Threading.CancellationToken):
   end method.

   method public final System.Threading.Tasks.Task ContinueWith(input continuationAction as System.Action):
   end method.

   method public final System.Threading.Tasks.Task ContinueWith(input continuationAction as System.Action, input cancellationToken as System.Threading.CancellationToken):
   end method.

   method public final System.Threading.Tasks.Task ContinueWith(input continuationAction as System.Action, input scheduler as System.Threading.Tasks.TaskScheduler):
   end method.

   method public final System.Threading.Tasks.Task ContinueWith(input continuationAction as System.Action, input continuationOptions as System.Threading.Tasks.TaskContinuationOptions):
   end method.

   method public final System.Threading.Tasks.Task ContinueWith(input continuationAction as System.Action, input cancellationToken as System.Threading.CancellationToken, input continuationOptions as System.Threading.Tasks.TaskContinuationOptions, input scheduler as System.Threading.Tasks.TaskScheduler):
   end method.

   method public final System.Threading.Tasks.Task ContinueWith(input continuationAction as System.Action, input state as System.Object):
   end method.

   method public final System.Threading.Tasks.Task ContinueWith(input continuationAction as System.Action, input state as System.Object, input cancellationToken as System.Threading.CancellationToken):
   end method.

   method public final System.Threading.Tasks.Task ContinueWith(input continuationAction as System.Action, input state as System.Object, input scheduler as System.Threading.Tasks.TaskScheduler):
   end method.

   method public final System.Threading.Tasks.Task ContinueWith(input continuationAction as System.Action, input state as System.Object, input continuationOptions as System.Threading.Tasks.TaskContinuationOptions):
   end method.

   method public final System.Threading.Tasks.Task ContinueWith(input continuationAction as System.Action, input state as System.Object, input cancellationToken as System.Threading.CancellationToken, input continuationOptions as System.Threading.Tasks.TaskContinuationOptions, input scheduler as System.Threading.Tasks.TaskScheduler):
   end method.

   method public final static void WaitAll(input tasks as System.Threading.Tasks.Task extent):
   end method.

   method public final static logical WaitAll(input tasks as System.Threading.Tasks.Task extent, input timeout as System.TimeSpan):
   end method.

   method public final static logical WaitAll(input tasks as System.Threading.Tasks.Task extent, input millisecondsTimeout as integer):
   end method.

   method public final static void WaitAll(input tasks as System.Threading.Tasks.Task extent, input cancellationToken as System.Threading.CancellationToken):
   end method.

   method public final static logical WaitAll(input tasks as System.Threading.Tasks.Task extent, input millisecondsTimeout as integer, input cancellationToken as System.Threading.CancellationToken):
   end method.

   method public final static integer WaitAny(input tasks as System.Threading.Tasks.Task extent):
   end method.

   method public final static integer WaitAny(input tasks as System.Threading.Tasks.Task extent, input timeout as System.TimeSpan):
   end method.

   method public final static integer WaitAny(input tasks as System.Threading.Tasks.Task extent, input cancellationToken as System.Threading.CancellationToken):
   end method.

   method public final static integer WaitAny(input tasks as System.Threading.Tasks.Task extent, input millisecondsTimeout as integer):
   end method.

   method public final static integer WaitAny(input tasks as System.Threading.Tasks.Task extent, input millisecondsTimeout as integer, input cancellationToken as System.Threading.CancellationToken):
   end method.

   method public final static System.Threading.Tasks.Task FromException(input exception as System.Exception):
   end method.

   method public final static System.Threading.Tasks.Task FromCanceled(input cancellationToken as System.Threading.CancellationToken):
   end method.

   method public final static System.Threading.Tasks.Task Run(input action as System.Action):
   end method.

   method public final static System.Threading.Tasks.Task Run(input action as System.Action, input cancellationToken as System.Threading.CancellationToken):
   end method.

   method public final static System.Threading.Tasks.Task Run(input function as System.Func):
   end method.

   method public final static System.Threading.Tasks.Task Run(input function as System.Func, input cancellationToken as System.Threading.CancellationToken):
   end method.

   method public final static System.Threading.Tasks.Task Delay(input delay as System.TimeSpan):
   end method.

   method public final static System.Threading.Tasks.Task Delay(input delay as System.TimeSpan, input cancellationToken as System.Threading.CancellationToken):
   end method.

   method public final static System.Threading.Tasks.Task Delay(input millisecondsDelay as integer):
   end method.

   method public final static System.Threading.Tasks.Task Delay(input millisecondsDelay as integer, input cancellationToken as System.Threading.CancellationToken):
   end method.

   method public final static System.Threading.Tasks.Task WhenAll(input tasks as System.Collections.Generic.IEnumerable):
   end method.

   method public final static System.Threading.Tasks.Task WhenAll(input tasks as System.Threading.Tasks.Task extent):
   end method.

   method public final static System.Threading.Tasks.Task WhenAny(input tasks as System.Threading.Tasks.Task extent):
   end method.

   method public final static System.Threading.Tasks.Task WhenAny(input tasks as System.Collections.Generic.IEnumerable):
   end method.

end class.
