transaction method Null safety

Transaction transaction(
  1. dynamic storeName_OR_storeNames,
  2. String mode


Transaction transaction(storeName_OR_storeNames, String mode) {
  if (mode != 'readonly' && mode != 'readwrite') {
    throw new ArgumentError(mode);

  // TODO(sra): Ensure storeName_OR_storeNames is a string or List<String>,
  // and copy to JavaScript array if necessary.

  // Try and create a transaction with a string mode.  Browsers that expect a
  // numeric mode tend to convert the string into a number.  This fails
  // silently, resulting in zero ('readonly').
  return _transaction(storeName_OR_storeNames, mode);