/* Options: Date: 2026-04-15 21:22:28 Version: 8.60 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: http://api.booklinker.com //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GetAccountRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; enum SignatureAppearance { None, Text, Upload, } // @DataContract class V2BaseResponse implements IConvertible { // @DataMember(Name="responseStatus") ResponseStatus? responseStatus; V2BaseResponse({this.responseStatus}); V2BaseResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!); return this; } Map toJson() => { 'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!) }; getTypeName() => "V2BaseResponse"; TypeContext? context = _ctx; } abstract class IImageData { String? id; String? provider; String? providerImageId; String? url; Map? attributes; } // @DataContract class AccountData implements IConvertible { // @DataMember(Name="id") String? id; // @DataMember(Name="userId") String? userId; // @DataMember(Name="emailAddress") String? emailAddress; // @DataMember(Name="fullName") String? fullName; // @DataMember(Name="profileImage") IImageData? profileImage; // @DataMember(Name="signatureImage") IImageData? signatureImage; // @DataMember(Name="signatureFont") String? signatureFont; // @DataMember(Name="signatureAppearance") SignatureAppearance? signatureAppearance; AccountData({this.id,this.userId,this.emailAddress,this.fullName,this.profileImage,this.signatureImage,this.signatureFont,this.signatureAppearance}); AccountData.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; userId = json['userId']; emailAddress = json['emailAddress']; fullName = json['fullName']; profileImage = JsonConverters.fromJson(json['profileImage'],'IImageData',context!); signatureImage = JsonConverters.fromJson(json['signatureImage'],'IImageData',context!); signatureFont = json['signatureFont']; signatureAppearance = JsonConverters.fromJson(json['signatureAppearance'],'SignatureAppearance',context!); return this; } Map toJson() => { 'id': id, 'userId': userId, 'emailAddress': emailAddress, 'fullName': fullName, 'profileImage': JsonConverters.toJson(profileImage,'IImageData',context!), 'signatureImage': JsonConverters.toJson(signatureImage,'IImageData',context!), 'signatureFont': signatureFont, 'signatureAppearance': JsonConverters.toJson(signatureAppearance,'SignatureAppearance',context!) }; getTypeName() => "AccountData"; TypeContext? context = _ctx; } // @DataContract class CollectionSettings implements ICollectionSettings, IConvertible { // @DataMember(Name="id") String? id; // @DataMember(Name="profileImageId") String? profileImageId; // @DataMember(Name="signatureImageId") String? signatureImageId; // @DataMember(Name="signatureText") String? signatureText; // @DataMember(Name="signatureFont") String? signatureFont; // @DataMember(Name="signatureAppearance") SignatureAppearance? signatureAppearance; CollectionSettings({this.id,this.profileImageId,this.signatureImageId,this.signatureText,this.signatureFont,this.signatureAppearance}); CollectionSettings.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; profileImageId = json['profileImageId']; signatureImageId = json['signatureImageId']; signatureText = json['signatureText']; signatureFont = json['signatureFont']; signatureAppearance = JsonConverters.fromJson(json['signatureAppearance'],'SignatureAppearance',context!); return this; } Map toJson() => { 'id': id, 'profileImageId': profileImageId, 'signatureImageId': signatureImageId, 'signatureText': signatureText, 'signatureFont': signatureFont, 'signatureAppearance': JsonConverters.toJson(signatureAppearance,'SignatureAppearance',context!) }; getTypeName() => "CollectionSettings"; TypeContext? context = _ctx; } // @DataContract class UserAccount implements IConvertible { // @DataMember(Name="email") String? email; // @DataMember(Name="settings") CollectionSettings? settings; UserAccount({this.email,this.settings}); UserAccount.fromJson(Map json) { fromMap(json); } fromMap(Map json) { email = json['email']; settings = JsonConverters.fromJson(json['settings'],'CollectionSettings',context!); return this; } Map toJson() => { 'email': email, 'settings': JsonConverters.toJson(settings,'CollectionSettings',context!) }; getTypeName() => "UserAccount"; TypeContext? context = _ctx; } abstract class ICollectionSettings { String? profileImageId; String? signatureImageId; String? signatureText; String? signatureFont; SignatureAppearance? signatureAppearance; } // @DataContract class GetAccountResponse extends V2BaseResponse implements IConvertible { // @DataMember(Name="data") AccountData? data; GetAccountResponse({this.data}); GetAccountResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); data = JsonConverters.fromJson(json['data'],'AccountData',context!); return this; } Map toJson() => super.toJson()..addAll({ 'data': JsonConverters.toJson(data,'AccountData',context!) }); getTypeName() => "GetAccountResponse"; TypeContext? context = _ctx; } // @DataContract class GetAccountResponse implements IConvertible { // @DataMember(Name="userAccount") UserAccount? userAccount; // @DataMember(Name="responseStatus") ResponseStatus? responseStatus; GetAccountResponse({this.userAccount,this.responseStatus}); GetAccountResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { userAccount = JsonConverters.fromJson(json['userAccount'],'UserAccount',context!); responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!); return this; } Map toJson() => { 'userAccount': JsonConverters.toJson(userAccount,'UserAccount',context!), 'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!) }; getTypeName() => "GetAccountResponse"; TypeContext? context = _ctx; } // @Route("/v2/account", "GET") // @DataContract class GetAccountRequest implements IReturn, IConvertible, IGet { GetAccountRequest(); GetAccountRequest.fromJson(Map json) : super(); fromMap(Map json) { return this; } Map toJson() => {}; createResponse() => GetAccountResponse(); getResponseTypeName() => "GetAccountResponse"; getTypeName() => "GetAccountRequest"; TypeContext? context = _ctx; } // @Route("/v1/account", "GET") // @DataContract class GetAccountRequest implements IReturn, IConvertible, IGet { GetAccountRequest(); GetAccountRequest.fromJson(Map json) : super(); fromMap(Map json) { return this; } Map toJson() => {}; createResponse() => GetAccountResponse(); getResponseTypeName() => "GetAccountResponse"; getTypeName() => "GetAccountRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.booklinker.com', types: { 'SignatureAppearance': TypeInfo(TypeOf.Enum, enumValues:SignatureAppearance.values), 'V2BaseResponse': TypeInfo(TypeOf.Class, create:() => V2BaseResponse()), 'IImageData': TypeInfo(TypeOf.Interface), 'AccountData': TypeInfo(TypeOf.Class, create:() => AccountData()), 'CollectionSettings': TypeInfo(TypeOf.Class, create:() => CollectionSettings()), 'UserAccount': TypeInfo(TypeOf.Class, create:() => UserAccount()), 'ICollectionSettings': TypeInfo(TypeOf.Interface), 'GetAccountResponse': TypeInfo(TypeOf.Class, create:() => GetAccountResponse()), 'GetAccountRequest': TypeInfo(TypeOf.Class, create:() => GetAccountRequest()), });