/* Options: Date: 2026-04-04 03:11:21 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: GetContactNotifications.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class InputSwitch implements IConvertible { String? Id; String? Name; bool? IsDisabled; bool? IsChecked; InputSwitch({this.Id,this.Name,this.IsDisabled,this.IsChecked}); InputSwitch.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Id = json['Id']; Name = json['Name']; IsDisabled = json['IsDisabled']; IsChecked = json['IsChecked']; return this; } Map toJson() => { 'Id': Id, 'Name': Name, 'IsDisabled': IsDisabled, 'IsChecked': IsChecked }; getTypeName() => "InputSwitch"; TypeContext? context = _ctx; } class NotificationDetails implements IConvertible { String? NotificationId; String? NotificationGroupName; String? NotificationValueId; String? Name; String? Description; bool? IsMandatory; bool? IsCardinality; bool? IsSystem; bool? IsVisibleToRecipients; int? Index; InputSwitch? Email; InputSwitch? SMS; InputSwitch? UpdateNotification; InputSwitch? Push; InputSwitch? Phone; NotificationDetails({this.NotificationId,this.NotificationGroupName,this.NotificationValueId,this.Name,this.Description,this.IsMandatory,this.IsCardinality,this.IsSystem,this.IsVisibleToRecipients,this.Index,this.Email,this.SMS,this.UpdateNotification,this.Push,this.Phone}); NotificationDetails.fromJson(Map json) { fromMap(json); } fromMap(Map json) { NotificationId = json['NotificationId']; NotificationGroupName = json['NotificationGroupName']; NotificationValueId = json['NotificationValueId']; Name = json['Name']; Description = json['Description']; IsMandatory = json['IsMandatory']; IsCardinality = json['IsCardinality']; IsSystem = json['IsSystem']; IsVisibleToRecipients = json['IsVisibleToRecipients']; Index = json['Index']; Email = JsonConverters.fromJson(json['Email'],'InputSwitch',context!); SMS = JsonConverters.fromJson(json['SMS'],'InputSwitch',context!); UpdateNotification = JsonConverters.fromJson(json['UpdateNotification'],'InputSwitch',context!); Push = JsonConverters.fromJson(json['Push'],'InputSwitch',context!); Phone = JsonConverters.fromJson(json['Phone'],'InputSwitch',context!); return this; } Map toJson() => { 'NotificationId': NotificationId, 'NotificationGroupName': NotificationGroupName, 'NotificationValueId': NotificationValueId, 'Name': Name, 'Description': Description, 'IsMandatory': IsMandatory, 'IsCardinality': IsCardinality, 'IsSystem': IsSystem, 'IsVisibleToRecipients': IsVisibleToRecipients, 'Index': Index, 'Email': JsonConverters.toJson(Email,'InputSwitch',context!), 'SMS': JsonConverters.toJson(SMS,'InputSwitch',context!), 'UpdateNotification': JsonConverters.toJson(UpdateNotification,'InputSwitch',context!), 'Push': JsonConverters.toJson(Push,'InputSwitch',context!), 'Phone': JsonConverters.toJson(Phone,'InputSwitch',context!) }; getTypeName() => "NotificationDetails"; TypeContext? context = _ctx; } class NotificationGroup implements IConvertible { String? GroupName; List? Notifications; NotificationGroup({this.GroupName,this.Notifications}); NotificationGroup.fromJson(Map json) { fromMap(json); } fromMap(Map json) { GroupName = json['GroupName']; Notifications = JsonConverters.fromJson(json['Notifications'],'List',context!); return this; } Map toJson() => { 'GroupName': GroupName, 'Notifications': JsonConverters.toJson(Notifications,'List',context!) }; getTypeName() => "NotificationGroup"; TypeContext? context = _ctx; } // @ApiResponse(Description="List of contact notifications") class GetContactNotificationsResponse implements IConvertible { List? Notifications; ResponseStatus? ResponseStatus; GetContactNotificationsResponse({this.Notifications,this.ResponseStatus}); GetContactNotificationsResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Notifications = JsonConverters.fromJson(json['Notifications'],'List',context!); ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); return this; } Map toJson() => { 'Notifications': JsonConverters.toJson(Notifications,'List',context!), 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!) }; getTypeName() => "GetContactNotificationsResponse"; TypeContext? context = _ctx; } /** * Get notifications for the specified contact */ // @Route("/contact/{ContactId}/notifications") // @Api(Description="Get notifications for the specified contact") class GetContactNotifications implements IReturn, IConvertible, IGet { /** * Id of contact to get notifications for */ // @ApiMember(Description="Id of contact to get notifications for", IsRequired=true, Name="ContactId") String? ContactId; /** * Id of licensee to get notifications for */ // @ApiMember(Description="Id of licensee to get notifications for", IsRequired=true, Name="LicenseeId") String? LicenseeId; /** * Id of suite to get notifications for */ // @ApiMember(Description="Id of suite to get notifications for", IsRequired=true, Name="Suite") String? SuiteId; GetContactNotifications({this.ContactId,this.LicenseeId,this.SuiteId}); GetContactNotifications.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ContactId = json['ContactId']; LicenseeId = json['LicenseeId']; SuiteId = json['SuiteId']; return this; } Map toJson() => { 'ContactId': ContactId, 'LicenseeId': LicenseeId, 'SuiteId': SuiteId }; createResponse() => GetContactNotificationsResponse(); getResponseTypeName() => "GetContactNotificationsResponse"; getTypeName() => "GetContactNotifications"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'pfapi.pstpf.com.au', types: { 'InputSwitch': TypeInfo(TypeOf.Class, create:() => InputSwitch()), 'NotificationDetails': TypeInfo(TypeOf.Class, create:() => NotificationDetails()), 'NotificationGroup': TypeInfo(TypeOf.Class, create:() => NotificationGroup()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'GetContactNotificationsResponse': TypeInfo(TypeOf.Class, create:() => GetContactNotificationsResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'GetContactNotifications': TypeInfo(TypeOf.Class, create:() => GetContactNotifications()), });