28 lines
798 B
Dart
28 lines
798 B
Dart
import 'package:json_annotation/json_annotation.dart';
|
|
|
|
part 'confirmation.g.dart';
|
|
|
|
|
|
@JsonSerializable()
|
|
class ConfirmationResponse {
|
|
@JsonKey(name: 'ttl_seconds', defaultValue: 0)
|
|
final int ttlSeconds;
|
|
@JsonKey(name: 'cooldown_seconds', defaultValue: 0)
|
|
final int cooldownSeconds;
|
|
@JsonKey(defaultValue: '')
|
|
final String destination;
|
|
|
|
const ConfirmationResponse({
|
|
required this.ttlSeconds,
|
|
required this.cooldownSeconds,
|
|
required this.destination,
|
|
});
|
|
|
|
Duration get cooldownDuration => Duration(seconds: cooldownSeconds);
|
|
Duration get ttlDuration => Duration(seconds: ttlSeconds);
|
|
|
|
factory ConfirmationResponse.fromJson(Map<String, dynamic> json) => _$ConfirmationResponseFromJson(json);
|
|
|
|
Map<String, dynamic> toJson() => _$ConfirmationResponseToJson(this);
|
|
}
|