apply lint prefer_void_to_null in packages/flutter_tools (#22686)

diff --git a/packages/flutter_tools/lib/src/base/net.dart b/packages/flutter_tools/lib/src/base/net.dart
index 94c724e..0a8270a 100644
--- a/packages/flutter_tools/lib/src/base/net.dart
+++ b/packages/flutter_tools/lib/src/base/net.dart
@@ -23,7 +23,7 @@
     if (result != null)
       return result;
     printStatus('Download failed -- attempting retry $attempts in $duration second${ duration == 1 ? "" : "s"}...');
-    await Future<Null>.delayed(Duration(seconds: duration));
+    await Future<void>.delayed(Duration(seconds: duration));
     if (duration < 64)
       duration *= 2;
   }
diff --git a/packages/flutter_tools/lib/src/base/process.dart b/packages/flutter_tools/lib/src/base/process.dart
index 29029d4..c612e45 100644
--- a/packages/flutter_tools/lib/src/base/process.dart
+++ b/packages/flutter_tools/lib/src/base/process.dart
@@ -74,7 +74,7 @@
 /// hooks within a given stage will be started in parallel and will be
 /// guaranteed to run to completion before shutdown hooks in the next stage are
 /// started.
-Future<Null> runShutdownHooks() async {
+Future<void> runShutdownHooks() async {
   printTrace('Running shutdown hooks');
   _shutdownHooksRunning = true;
   try {
@@ -164,12 +164,12 @@
 
   // Wait for stdout to be fully processed
   // because process.exitCode may complete first causing flaky tests.
-  await waitGroup<Null>(<Future<Null>>[
-    stdoutSubscription.asFuture<Null>(),
-    stderrSubscription.asFuture<Null>(),
+  await waitGroup<void>(<Future<void>>[
+    stdoutSubscription.asFuture<void>(),
+    stderrSubscription.asFuture<void>(),
   ]);
 
-  await waitGroup<Null>(<Future<Null>>[
+  await waitGroup<void>(<Future<void>>[
     stdoutSubscription.cancel(),
     stderrSubscription.cancel(),
   ]);
@@ -203,9 +203,9 @@
   return await process.exitCode;
 }
 
-Future<Null> runAndKill(List<String> cmd, Duration timeout) {
+Future<void> runAndKill(List<String> cmd, Duration timeout) {
   final Future<Process> proc = runDetached(cmd);
-  return Future<Null>.delayed(timeout, () async {
+  return Future<void>.delayed(timeout, () async {
     printTrace('Intentionally killing ${cmd[0]}');
     processManager.killPid((await proc).pid);
   });
diff --git a/packages/flutter_tools/lib/src/base/utils.dart b/packages/flutter_tools/lib/src/base/utils.dart
index ee485de..e74fd49 100644
--- a/packages/flutter_tools/lib/src/base/utils.dart
+++ b/packages/flutter_tools/lib/src/base/utils.dart
@@ -251,14 +251,14 @@
 
 Clock get clock => context[Clock];
 
-typedef AsyncCallback = Future<Null> Function();
+typedef AsyncCallback = Future<void> Function();
 
 /// A [Timer] inspired class that:
 ///   - has a different initial value for the first callback delay
 ///   - waits for a callback to be complete before it starts the next timer
 class Poller {
   Poller(this.callback, this.pollingInterval, { this.initialDelay = Duration.zero }) {
-    Future<Null>.delayed(initialDelay, _handleCallback);
+    Future<void>.delayed(initialDelay, _handleCallback);
   }
 
   final AsyncCallback callback;
@@ -268,7 +268,7 @@
   bool _cancelled = false;
   Timer _timer;
 
-  Future<Null> _handleCallback() async {
+  Future<void> _handleCallback() async {
     if (_cancelled)
       return;