int? getIntOrNull(Object? key) { final value = this[key]; if (value is int) return value; if (value is num) return value.toInt(); if (value is String) return int.tryParse(value.trim()); return null; }