/* Options: Date: 2026-09-02 15:37:26 Version: 10.09 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://test.servicestack.net //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: HelloSubAllTypes.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class SubType implements IConvertible { int id = 0; String name = ""; SubType({this.id=0,this.name=""}); SubType.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id'] ?? 0; name = json['name'] ?? ""; return this; } Map toJson() => { 'id': id, 'name': name }; getTypeName() => "SubType"; TypeContext? context = _ctx; } abstract class AllTypesBase { int id = 0; int? nullableId; int byte = 0; int short = 0; int Int = 0; int long = 0; int uShort = 0; int uInt = 0; int uLong = 0; double float = 0; double Double = 0; double decimal = 0; String string = ""; DateTime? dateTime; Duration? timeSpan; DateTime? dateTimeOffset; String guid = ""; String char = ""; KeyValuePair? keyValuePair; DateTime? nullableDateTime; Duration? nullableTimeSpan; List stringList = []; List stringArray = []; Map stringMap = {}; Map intStringMap = {}; SubType? subType; AllTypesBase({this.id=0,this.nullableId,this.byte=0,this.short=0,this.Int=0,this.long=0,this.uShort=0,this.uInt=0,this.uLong=0,this.float=0,this.Double=0,this.decimal=0,this.string="",this.dateTime,this.timeSpan,this.dateTimeOffset,this.guid="",this.char="",this.keyValuePair,this.nullableDateTime,this.nullableTimeSpan,this.stringList=const [],this.stringArray=const [],this.stringMap=const {},this.intStringMap=const {},this.subType}); AllTypesBase.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id'] ?? 0; nullableId = json['nullableId']; byte = json['byte'] ?? 0; short = json['short'] ?? 0; Int = json['int'] ?? 0; long = json['long'] ?? 0; uShort = json['uShort'] ?? 0; uInt = json['uInt'] ?? 0; uLong = json['uLong'] ?? 0; float = JsonConverters.toDouble(json['float']) ?? 0; Double = JsonConverters.toDouble(json['double']) ?? 0; decimal = JsonConverters.toDouble(json['decimal']) ?? 0; string = json['string'] ?? ""; dateTime = JsonConverters.fromJson(json['dateTime'],'DateTime',context!) ?? DateTime(0); timeSpan = JsonConverters.fromJson(json['timeSpan'],'Duration',context!); dateTimeOffset = JsonConverters.fromJson(json['dateTimeOffset'],'DateTime',context!) ?? DateTime(0); guid = json['guid'] ?? ""; char = json['char'] ?? ""; keyValuePair = JsonConverters.fromJson(json['keyValuePair'],'KeyValuePair',context!); nullableDateTime = JsonConverters.fromJson(json['nullableDateTime'],'DateTime',context!); nullableTimeSpan = JsonConverters.fromJson(json['nullableTimeSpan'],'Duration',context!); stringList = JsonConverters.fromJson(json['stringList'],'List',context!) ?? []; stringArray = JsonConverters.fromJson(json['stringArray'],'List',context!) ?? []; stringMap = JsonConverters.toStringMap(json['stringMap']) ?? {}; intStringMap = JsonConverters.fromJson(json['intStringMap'],'Map',context!) ?? {}; subType = JsonConverters.fromJson(json['subType'],'SubType',context!); return this; } Map toJson() => { 'id': id, 'nullableId': nullableId, 'byte': byte, 'short': short, 'int': Int, 'long': long, 'uShort': uShort, 'uInt': uInt, 'uLong': uLong, 'float': float, 'double': Double, 'decimal': decimal, 'string': string, 'dateTime': JsonConverters.toJson(dateTime,'DateTime',context!), 'timeSpan': JsonConverters.toJson(timeSpan,'Duration',context!), 'dateTimeOffset': JsonConverters.toJson(dateTimeOffset,'DateTime',context!), 'guid': guid, 'char': char, 'keyValuePair': JsonConverters.toJson(keyValuePair,'KeyValuePair',context!), 'nullableDateTime': JsonConverters.toJson(nullableDateTime,'DateTime',context!), 'nullableTimeSpan': JsonConverters.toJson(nullableTimeSpan,'Duration',context!), 'stringList': JsonConverters.toJson(stringList,'List',context!), 'stringArray': JsonConverters.toJson(stringArray,'List',context!), 'stringMap': stringMap, 'intStringMap': JsonConverters.toJson(intStringMap,'Map',context!), 'subType': JsonConverters.toJson(subType,'SubType',context!) }; getTypeName() => "AllTypesBase"; TypeContext? context = _ctx; } class SubAllTypes extends AllTypesBase implements IConvertible { int hierarchy = 0; SubAllTypes({this.hierarchy=0}); SubAllTypes.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); hierarchy = json['hierarchy'] ?? 0; return this; } Map toJson() => super.toJson()..addAll({ 'hierarchy': hierarchy }); getTypeName() => "SubAllTypes"; TypeContext? context = _ctx; } class HelloSubAllTypes extends AllTypesBase implements IReturn, IConvertible, IPost { int hierarchy = 0; HelloSubAllTypes({this.hierarchy=0}); HelloSubAllTypes.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); hierarchy = json['hierarchy'] ?? 0; return this; } Map toJson() => super.toJson()..addAll({ 'hierarchy': hierarchy }); createResponse() => SubAllTypes(); getResponseTypeName() => "SubAllTypes"; getTypeName() => "HelloSubAllTypes"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'test.servicestack.net', types: { 'SubType': TypeInfo(TypeOf.Class, create:() => SubType()), 'AllTypesBase': TypeInfo(TypeOf.AbstractClass), 'Map': TypeInfo(TypeOf.Class, create:() => Map()), 'SubAllTypes': TypeInfo(TypeOf.Class, create:() => SubAllTypes()), 'HelloSubAllTypes': TypeInfo(TypeOf.Class, create:() => HelloSubAllTypes()), });