/// Deferral always carries an excuse. Free text, minimum length enforced, no
/// template buttons — the friction is the point.
class DeferralRequest {
  String commitmentId;

  String excuseText;

  String newDueStart;

  String newDueEnd;

  DeferralRequest({
    this.commitmentId = "",
    this.excuseText = "",
    this.newDueStart = "",
    this.newDueEnd = "",
  });

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = <String, dynamic>{};
    data['commitmentId'] = commitmentId;
    data['excuseText'] = excuseText;
    data['newDueStart'] = newDueStart;
    data['newDueEnd'] = newDueEnd;
    return data;
  }
}
