private static ExcelExportSettings <TEntity> ValidateAndMapSettings(IEntityExportSettings <TEntity> settings)
        {
            ExcelExportSettings <TEntity> excelExportSettings = settings as ExcelExportSettings <TEntity>;

            if (excelExportSettings == null)
            {
                throw new ArgumentException(nameof(settings));
            }
            return(excelExportSettings);
        }
 /// <summary>
 /// Is used to export data to excel file
 /// </summary>
 /// <param name="settings">export settings</param>
 /// <returns>uri to retrieve file with exported info</returns>
 public static Task <Uri> ExportDataAsync(IEntityExportSettings <TEntity> settings)
 {
     return(InnerExportDataAsync(ValidateAndMapSettings(settings)));
 }