I m using firestore for data and firestorage for files and images, so i m using StreamBuilder to load list as per firestore data and i want to download images as per firestore file name, but its not happening

I tried is, created a new method there I did code to get download url , but it is not working

child: StreamBuilder(
                stream: Firestore.instance.collection('data').snapshots(),
                builder: (BuildContext context,
                    AsyncSnapshot<QuerySnapshot> snapshot) {
                  if (!snapshot.hasData)
                    return Container(
                        child: Center(child: CircularProgressIndicator()));
                  return ListView.builder(
                      itemCount: snapshot.data.documents.length,
                      itemBuilder: (BuildContext context, int index) {
                        return Card(
                          child: Column(
                            children: <Widget>[
                              Card(
                                semanticContainer: true,
                                clipBehavior: Clip.antiAliasWithSaveLayer,
                                child: Image.network(
                                   imageLoader(snapshot.data.documents[index].data['flie_ref'].toString()),
                                  fit: BoxFit.fill,
                                ),
                                shape: RoundedRectangleBorder(
                                  borderRadius: BorderRadius.circular(0),
                                ),
                                elevation: 0,
                                margin: EdgeInsets.all(10),
                              ),
                              Padding(
                                padding: EdgeInsets.only(left: 6, right: 6),
                                child: Card(
                                  elevation: 0,
                                  child: ExpansionTile(
                                    leading: CircleAvatar(
                                      child: Text(snapshot
                                          .data.documents[index].data['amount']
                                          .toString()),
                                    ),
                                    title: Text(
                                      snapshot
                                          .data.documents[index].data['desc']
                                          .toString(),
                                      overflow: TextOverflow.ellipsis,
                                    ),
                                    children: <Widget>[
                                      Text(snapshot
                                          .data.documents[index].data['desc']
                                          .toString()),
                                      SizedBox(
                                        height: 10,
                                      ),
                                    ],
                                  ),
                                ),
                              ),
                            ],
                          ),
                        );
                      });
                },
              ),
Future imageLoader(String string) async {
    var url =
        await FirebaseStorage.instance.ref().child(string).getDownloadURL();
    setState(() {
      return url;
    });
  }

I expect output load respective image but the output is Error: The argument type 'Future' can't be assigned to the parameter type 'Widget'