/// <summary>
 /// Get the status of a monitor at a specific timestamp in history.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='subscriptionId'>
 /// The subscriptionId of the resource
 /// </param>
 /// <param name='resourceGroupName'>
 /// The resourceGroupName of the resource
 /// </param>
 /// <param name='resourceNamespace'>
 /// The resourceNamespace of the resource
 /// </param>
 /// <param name='resourceType'>
 /// The resourceType of the resource
 /// </param>
 /// <param name='resourceName'>
 /// The resourceType of the resource
 /// </param>
 /// <param name='monitorId'>
 /// The monitorId of the resource (url encoded)
 /// </param>
 /// <param name='timestampUnix'>
 /// The timestamp of the state change (Unix format)
 /// </param>
 /// <param name='expand'>
 /// ex: $expand=evidence,configuration
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <MonitorStateChange> GetStateChangeAsync(this IMonitorsOperations operations, string subscriptionId, string resourceGroupName, string resourceNamespace, string resourceType, string resourceName, string monitorId, string timestampUnix, string expand = default(string), CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.GetStateChangeWithHttpMessagesAsync(subscriptionId, resourceGroupName, resourceNamespace, resourceType, resourceName, monitorId, timestampUnix, expand, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }