Explicitly declare a Future<void> when using Future.value

The inference_failure_on_instance_creation error will trigger on code like

```
returnValueForMissingStub: Future.value()
```

because, even though no value has been given to `value()`, that does not
affect the Future's type (it still defaults to `void`). Explicitly using
`Future<void>.value()` satisfies the check.

PiperOrigin-RevId: 382770034
diff --git a/lib/src/builder.dart b/lib/src/builder.dart
index fea64b0..0b23589 100644
--- a/lib/src/builder.dart
+++ b/lib/src/builder.dart
@@ -1007,7 +1007,8 @@
     if (method.returnType.isVoid) {
       returnValueForMissingStub = refer('null');
     } else if (method.returnType.isFutureOfVoid) {
-      returnValueForMissingStub = _futureReference().property('value').call([]);
+      returnValueForMissingStub =
+          _futureReference(refer('void')).property('value').call([]);
     }
     final fallbackGenerator = fallbackGenerators[method.name];
     final namedArgs = {
diff --git a/test/builder/auto_mocks_test.dart b/test/builder/auto_mocks_test.dart
index 4b132da..a1aaa60 100644
--- a/test/builder/auto_mocks_test.dart
+++ b/test/builder/auto_mocks_test.dart
@@ -526,7 +526,7 @@
       _containsAllOf(dedent2('''
       _i3.Future<void> m() => (super.noSuchMethod(Invocation.method(#m, []),
           returnValue: Future<void>.value(),
-          returnValueForMissingStub: Future.value()) as _i3.Future<void>);
+          returnValueForMissingStub: Future<void>.value()) as _i3.Future<void>);
       ''')),
     );
   });