Future<Doc<T>> commit(DocumentReference<T> reference) async { await reference.set(data); return Doc( data: data, reference: reference, ); }