T? byModel<T>(String key, T? Function(Map<dynamic, dynamic> value) onModel) { if (this[key] == null) return null; return onModel.call(this[key]); }