Map<String, dynamic> toJson(Map<String, dynamic> Function(T) toJsonT) { return { 'data': data.map((item) => toJsonT(item)).toList(), if (nextCursor != null) 'nextCursor': nextCursor, }; }