/* Options: Date: 2026-04-04 01:06:30 Version: 8.52 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://pfapi.pstpf.com.au/api //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: ContactIdentityCheck.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class UserProfileModel extends UserProfileSummaryModel implements IConvertible { /** * Contact Date of Birth (when person type) */ // @ApiMember(DataType="DateTime?", Description="Contact Date of Birth (when person type)", Name="BirthDate", ParameterType="query") DateTime? BirthDate; /** * Contact marital status (when person type) */ // @ApiMember(DataType="string", Description="Contact marital status (when person type)", Name="MaritalStatusName", ParameterType="query") String? MaritalStatusName; /** * Contact gender (when person type) */ // @ApiMember(DataType="string", Description="Contact gender (when person type)", Name="GenderName", ParameterType="query") String? GenderName; /** * The Gender Guid of the contact. */ // @ApiMember(DataType="Guid", Description="The Gender Guid of the contact.", Name="GenderId", ParameterType="query") String? GenderId; /** * All contact details of the contact */ // @ApiMember(DataType="List", Description="All contact details of the contact", Name="ContactDetails", ParameterType="query") List? ContactDetails; /** * Primary Street Address */ // @ApiMember(DataType="ContactDetail", Description="Primary Street Address", Name="PrimaryStreetAddress ") ContactDetailModel? PrimaryStreetAddress; /** * Primary Postal Address */ // @ApiMember(DataType="ContactDetail", Description="Primary Postal Address", Name="PrimaryPostalAddress ") ContactDetailModel? PrimaryPostalAddress; /** * Primary Registered Address */ // @ApiMember(DataType="ContactDetail", Description="Primary Registered Address", Name="PrimaryRegisteredAddress ") ContactDetailModel? PrimaryRegisteredAddress; /** * Primary Email Address */ // @ApiMember(DataType="ContactDetail", Description="Primary Email Address", Name="PrimaryEmail ") ContactDetailModel? PrimaryEmail; /** * Primary Mobile Number */ // @ApiMember(DataType="ContactDetail", Description="Primary Mobile Number", Name="PrimaryMobile") ContactDetailModel? PrimaryMobile; /** * Primary Non-Mobile Number */ // @ApiMember(DataType="ContactDetail", Description="Primary Non-Mobile Number", Name="PrimaryPhone") ContactDetailModel? PrimaryPhone; /** * Primary Fax Number */ // @ApiMember(DataType="ContactDetail", Description="Primary Fax Number", Name="PrimaryFax") ContactDetailModel? PrimaryFax; /** * Primary Web Address */ // @ApiMember(DataType="ContactDetail", Description="Primary Web Address", Name="PrimaryWeb") ContactDetailModel? PrimaryWeb; /** * Social Media Twitter */ // @ApiMember(DataType="ContactDetail", Description="Social Media Twitter", Name="SocialMediaTwitter") ContactDetailModel? SocialMediaTwitter; /** * Social Media Facebook */ // @ApiMember(DataType="ContactDetail", Description="Social Media Facebook", Name="SocialMediaFacebook") ContactDetailModel? SocialMediaFacebook; /** * Social Media Instagram */ // @ApiMember(DataType="ContactDetail", Description="Social Media Instagram", Name="SocialMediaInstagram") ContactDetailModel? SocialMediaInstagram; /** * Have all connections to the contact been removed? */ // @ApiMember(DataType="bool", Description="Have all connections to the contact been removed?", Name="IsRemovedContact") bool? IsRemovedContact; /** * True if this is the users default profile. */ // @ApiMember(DataType="bool", Description="True if this is the users default profile.", Name="IsDefault", ParameterType="query") bool? IsDefault; /** * True if the users email on this profile can be edited. */ // @ApiMember(DataType="bool", Description="True if the users email on this profile can be edited.", Name="IsEmailEditable", ParameterType="query") bool? IsEmailEditable; /** * Primary image Content sent as a file stream contents (if not attached to the request) */ // @ApiMember(DataType="string", Description="Primary image Content sent as a file stream contents (if not attached to the request)", Name="PrimaryImageContent") String? PrimaryImageContent; /** * Primary image Content type sent as a file stream contents (if not attached to the request) */ // @ApiMember(DataType="string", Description="Primary image Content type sent as a file stream contents (if not attached to the request)", Name="PrimaryImageContentType") String? PrimaryImageContentType; /** * Primary image file name */ // @ApiMember(DataType="string", Description="Primary image file name", Name="PrimaryImageFileName") String? PrimaryImageFileName; UserProfileModel({this.BirthDate,this.MaritalStatusName,this.GenderName,this.GenderId,this.ContactDetails,this.PrimaryStreetAddress,this.PrimaryPostalAddress,this.PrimaryRegisteredAddress,this.PrimaryEmail,this.PrimaryMobile,this.PrimaryPhone,this.PrimaryFax,this.PrimaryWeb,this.SocialMediaTwitter,this.SocialMediaFacebook,this.SocialMediaInstagram,this.IsRemovedContact,this.IsDefault,this.IsEmailEditable,this.PrimaryImageContent,this.PrimaryImageContentType,this.PrimaryImageFileName}); UserProfileModel.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); BirthDate = JsonConverters.fromJson(json['BirthDate'],'DateTime',context!); MaritalStatusName = json['MaritalStatusName']; GenderName = json['GenderName']; GenderId = json['GenderId']; ContactDetails = JsonConverters.fromJson(json['ContactDetails'],'List',context!); PrimaryStreetAddress = JsonConverters.fromJson(json['PrimaryStreetAddress'],'ContactDetailModel',context!); PrimaryPostalAddress = JsonConverters.fromJson(json['PrimaryPostalAddress'],'ContactDetailModel',context!); PrimaryRegisteredAddress = JsonConverters.fromJson(json['PrimaryRegisteredAddress'],'ContactDetailModel',context!); PrimaryEmail = JsonConverters.fromJson(json['PrimaryEmail'],'ContactDetailModel',context!); PrimaryMobile = JsonConverters.fromJson(json['PrimaryMobile'],'ContactDetailModel',context!); PrimaryPhone = JsonConverters.fromJson(json['PrimaryPhone'],'ContactDetailModel',context!); PrimaryFax = JsonConverters.fromJson(json['PrimaryFax'],'ContactDetailModel',context!); PrimaryWeb = JsonConverters.fromJson(json['PrimaryWeb'],'ContactDetailModel',context!); SocialMediaTwitter = JsonConverters.fromJson(json['SocialMediaTwitter'],'ContactDetailModel',context!); SocialMediaFacebook = JsonConverters.fromJson(json['SocialMediaFacebook'],'ContactDetailModel',context!); SocialMediaInstagram = JsonConverters.fromJson(json['SocialMediaInstagram'],'ContactDetailModel',context!); IsRemovedContact = json['IsRemovedContact']; IsDefault = json['IsDefault']; IsEmailEditable = json['IsEmailEditable']; PrimaryImageContent = json['PrimaryImageContent']; PrimaryImageContentType = json['PrimaryImageContentType']; PrimaryImageFileName = json['PrimaryImageFileName']; return this; } Map toJson() => super.toJson()..addAll({ 'BirthDate': JsonConverters.toJson(BirthDate,'DateTime',context!), 'MaritalStatusName': MaritalStatusName, 'GenderName': GenderName, 'GenderId': GenderId, 'ContactDetails': JsonConverters.toJson(ContactDetails,'List',context!), 'PrimaryStreetAddress': JsonConverters.toJson(PrimaryStreetAddress,'ContactDetailModel',context!), 'PrimaryPostalAddress': JsonConverters.toJson(PrimaryPostalAddress,'ContactDetailModel',context!), 'PrimaryRegisteredAddress': JsonConverters.toJson(PrimaryRegisteredAddress,'ContactDetailModel',context!), 'PrimaryEmail': JsonConverters.toJson(PrimaryEmail,'ContactDetailModel',context!), 'PrimaryMobile': JsonConverters.toJson(PrimaryMobile,'ContactDetailModel',context!), 'PrimaryPhone': JsonConverters.toJson(PrimaryPhone,'ContactDetailModel',context!), 'PrimaryFax': JsonConverters.toJson(PrimaryFax,'ContactDetailModel',context!), 'PrimaryWeb': JsonConverters.toJson(PrimaryWeb,'ContactDetailModel',context!), 'SocialMediaTwitter': JsonConverters.toJson(SocialMediaTwitter,'ContactDetailModel',context!), 'SocialMediaFacebook': JsonConverters.toJson(SocialMediaFacebook,'ContactDetailModel',context!), 'SocialMediaInstagram': JsonConverters.toJson(SocialMediaInstagram,'ContactDetailModel',context!), 'IsRemovedContact': IsRemovedContact, 'IsDefault': IsDefault, 'IsEmailEditable': IsEmailEditable, 'PrimaryImageContent': PrimaryImageContent, 'PrimaryImageContentType': PrimaryImageContentType, 'PrimaryImageFileName': PrimaryImageFileName }); getTypeName() => "UserProfileModel"; TypeContext? context = _ctx; } class ContactIdentity implements IConvertible { /** * Details of the contacts primary/default user profile. */ // @ApiMember(DataType="UserProfileModel", Description="Details of the contacts primary/default user profile.", Name="DefaultProfile", ParameterType="query") UserProfileModel? DefaultProfile; ContactIdentity({this.DefaultProfile}); ContactIdentity.fromJson(Map json) { fromMap(json); } fromMap(Map json) { DefaultProfile = JsonConverters.fromJson(json['DefaultProfile'],'UserProfileModel',context!); return this; } Map toJson() => { 'DefaultProfile': JsonConverters.toJson(DefaultProfile,'UserProfileModel',context!) }; getTypeName() => "ContactIdentity"; TypeContext? context = _ctx; } /** * Returns information to help identify and validate a contact. */ // @Api(Description="Returns information to help identify and validate a contact.") class ContactIdentityCheck implements IReturn, IConvertible, IGet { /** * Id of the contact we want to check. */ // @ApiMember(DataType="Guid", Description="Id of the contact we want to check.", IsRequired=true, Name="ContactId", ParameterType="query") String? ContactId; ContactIdentityCheck({this.ContactId}); ContactIdentityCheck.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ContactId = json['ContactId']; return this; } Map toJson() => { 'ContactId': ContactId }; createResponse() => ContactIdentity(); getResponseTypeName() => "ContactIdentity"; getTypeName() => "ContactIdentityCheck"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'pfapi.pstpf.com.au', types: { 'UserProfileModel': TypeInfo(TypeOf.Class, create:() => UserProfileModel()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'ContactDetailModel': TypeInfo(TypeOf.Class, create:() => ContactDetailModel()), 'ContactIdentity': TypeInfo(TypeOf.Class, create:() => ContactIdentity()), 'ContactIdentityCheck': TypeInfo(TypeOf.Class, create:() => ContactIdentityCheck()), });