async listFiles({ deviceType, filePath, ignoreHidden, storageId }) {
    if (deviceType === DEVICE_TYPE.mtp) {
      checkIf(storageId, 'number');

      const selectedMtpMode = getMtpModeSetting();

      switch (selectedMtpMode) {
        case MTP_MODE.legacy:
          return this.legacyMtpDataSource.listFiles({
            filePath,
            ignoreHidden,
            storageId,
          });

        case MTP_MODE.kalam:
        default:
          return this.kalamMtpDataSource.listFiles({
            filePath,
            ignoreHidden,
            storageId,
          });
      }
    }

    return this.localDataSource.listFiles({
      filePath,
      ignoreHidden,
    });
  }
description - Fetch files in the path

@param deviceType
@param filePath
@param ignoreHidden
@param storageId
@return {Promise<{data: array|null, error: string|null, stderr: string|null}>}