/// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='q'>
 /// </param>
 /// <param name='unique'>
 /// Possible values include: 'cards', 'art', 'prints'
 /// </param>
 /// <param name='order'>
 /// Possible values include: 'name', 'set', 'released', 'rarity', 'color',
 /// 'usd', 'tix', 'eur', 'cmc', 'power', 'toughness', 'edhrec', 'artist'
 /// </param>
 /// <param name='dir'>
 /// Possible values include: 'auto', 'asc', 'desc'
 /// </param>
 /// <param name='includeExtras'>
 /// </param>
 /// <param name='page'>
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task<CardList> SearchAsync(this ICards operations, string q, UniqueStrategy? unique = default(UniqueStrategy?), SortOrder? order = default(SortOrder?), SortDirection? dir = default(SortDirection?), bool? includeExtras = default(bool?), int? page = default(int?), CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.SearchWithHttpMessagesAsync(q, unique, order, dir, includeExtras, page, null, cancellationToken).ConfigureAwait(false))
     {
         return _result.Body;
     }
 }