/* Options: Date: 2026-01-13 19:47:01 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://tartarus.nephila.com //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GetCitiBankAccountBalanceRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; enum BankEntryType { Balance, Transaction, } class CitiBankAccountEntry implements IConvertible { BankEntryType? entryType; String? description; double? amount; String? currencyCode; String? creditDebitIndicator; DateTime? entryDate; CitiBankAccountEntry({this.entryType,this.description,this.amount,this.currencyCode,this.creditDebitIndicator,this.entryDate}); CitiBankAccountEntry.fromJson(Map json) { fromMap(json); } fromMap(Map json) { entryType = JsonConverters.fromJson(json['entryType'],'BankEntryType',context!); description = json['description']; amount = JsonConverters.toDouble(json['amount']); currencyCode = json['currencyCode']; creditDebitIndicator = json['creditDebitIndicator']; entryDate = JsonConverters.fromJson(json['entryDate'],'DateTime',context!); return this; } Map toJson() => { 'entryType': JsonConverters.toJson(entryType,'BankEntryType',context!), 'description': description, 'amount': amount, 'currencyCode': currencyCode, 'creditDebitIndicator': creditDebitIndicator, 'entryDate': JsonConverters.toJson(entryDate,'DateTime',context!) }; getTypeName() => "CitiBankAccountEntry"; TypeContext? context = _ctx; } class CitiBankEntriesResponse implements IConvertible { ResponseStatus? responseStatus; bool? statementIsStillGenerating; List? entries = []; CitiBankEntriesResponse({this.responseStatus,this.statementIsStillGenerating,this.entries}); CitiBankEntriesResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!); statementIsStillGenerating = json['statementIsStillGenerating']; entries = JsonConverters.fromJson(json['entries'],'List',context!); return this; } Map toJson() => { 'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!), 'statementIsStillGenerating': statementIsStillGenerating, 'entries': JsonConverters.toJson(entries,'List',context!) }; getTypeName() => "CitiBankEntriesResponse"; TypeContext? context = _ctx; } // @Route("/api/citi-bank-account-balance", "GET,POST") class GetCitiBankAccountBalanceRequest implements IReturn, IGet, IPost, IConvertible { String? accountNumber; String? currencyCode; DateTime? fromDate; DateTime? toDate; GetCitiBankAccountBalanceRequest({this.accountNumber,this.currencyCode,this.fromDate,this.toDate}); GetCitiBankAccountBalanceRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { accountNumber = json['accountNumber']; currencyCode = json['currencyCode']; fromDate = JsonConverters.fromJson(json['fromDate'],'DateTime',context!); toDate = JsonConverters.fromJson(json['toDate'],'DateTime',context!); return this; } Map toJson() => { 'accountNumber': accountNumber, 'currencyCode': currencyCode, 'fromDate': JsonConverters.toJson(fromDate,'DateTime',context!), 'toDate': JsonConverters.toJson(toDate,'DateTime',context!) }; createResponse() => CitiBankEntriesResponse(); getResponseTypeName() => "CitiBankEntriesResponse"; getTypeName() => "GetCitiBankAccountBalanceRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'tartarus.nephila.com', types: { 'BankEntryType': TypeInfo(TypeOf.Enum, enumValues:BankEntryType.values), 'CitiBankAccountEntry': TypeInfo(TypeOf.Class, create:() => CitiBankAccountEntry()), 'CitiBankEntriesResponse': TypeInfo(TypeOf.Class, create:() => CitiBankEntriesResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'GetCitiBankAccountBalanceRequest': TypeInfo(TypeOf.Class, create:() => GetCitiBankAccountBalanceRequest()), });