getRemainingTime method
Gets the remaining time before this conversation expires.
Implementation
Future<Duration?> getRemainingTime() async {
final state = await _storage.get(_storageKey);
if (state == null) return null;
final expiresAt = state.expiresAt ?? state.lastUpdated.add(_defaultTimeout);
final remaining = expiresAt.difference(DateTime.now());
return remaining.isNegative ? Duration.zero : remaining;
}