/* Options: Date: 2026-04-04 04:55:09 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: AddContactRole.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class ListItemFilterModel implements IConvertible { String? ListItemFilterId; String? FilterName; String? ListId; String? ListItemId; bool? ListItemIsInFilter; ListItemFilterModel({this.ListItemFilterId,this.FilterName,this.ListId,this.ListItemId,this.ListItemIsInFilter}); ListItemFilterModel.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ListItemFilterId = json['ListItemFilterId']; FilterName = json['FilterName']; ListId = json['ListId']; ListItemId = json['ListItemId']; ListItemIsInFilter = json['ListItemIsInFilter']; return this; } Map toJson() => { 'ListItemFilterId': ListItemFilterId, 'FilterName': FilterName, 'ListId': ListId, 'ListItemId': ListItemId, 'ListItemIsInFilter': ListItemIsInFilter }; getTypeName() => "ListItemFilterModel"; TypeContext? context = _ctx; } class RoleDetailsModel implements IConvertible { /** * Role Id */ // @ApiMember(DataType="Guid", Description="Role Id", Name="RoleId") String? RoleId; /** * Role Name */ // @ApiMember(DataType="string", Description="Role Name", Name="RoleName") String? RoleName; /** * Role Connection Definition Id */ // @ApiMember(DataType="Guid", Description="Role Connection Definition Id", Name="RoleConnectionDefinitionId") String? RoleConnectionDefinitionId; /** * Contact Types the Role applies to */ // @ApiMember(DataType="List", Description="Contact Types the Role applies to", Name="ContactTypes") List? ContactTypes; /** * Does the role require contacts to accept it? */ // @ApiMember(DataType="bool", Description="Does the role require contacts to accept it?", Name="RequireContactsToAccept") bool? RequireContactsToAccept; /** * Filters linked to the custom role. */ // @ApiMember(DataType="List", Description="Filters linked to the custom role.", Name="ListItemFilters") List? ListItemFilters; RoleDetailsModel({this.RoleId,this.RoleName,this.RoleConnectionDefinitionId,this.ContactTypes,this.RequireContactsToAccept,this.ListItemFilters}); RoleDetailsModel.fromJson(Map json) { fromMap(json); } fromMap(Map json) { RoleId = json['RoleId']; RoleName = json['RoleName']; RoleConnectionDefinitionId = json['RoleConnectionDefinitionId']; ContactTypes = JsonConverters.fromJson(json['ContactTypes'],'List',context!); RequireContactsToAccept = json['RequireContactsToAccept']; ListItemFilters = JsonConverters.fromJson(json['ListItemFilters'],'List',context!); return this; } Map toJson() => { 'RoleId': RoleId, 'RoleName': RoleName, 'RoleConnectionDefinitionId': RoleConnectionDefinitionId, 'ContactTypes': JsonConverters.toJson(ContactTypes,'List',context!), 'RequireContactsToAccept': RequireContactsToAccept, 'ListItemFilters': JsonConverters.toJson(ListItemFilters,'List',context!) }; getTypeName() => "RoleDetailsModel"; TypeContext? context = _ctx; } /** * Add a custom role for the licensee */ // @Route("/roles", "POST") // @Api(Description="Add a custom role for the licensee") class AddContactRole implements IReturn, IConvertible, IPost { /** * Details of the Contact Role to be Added. */ // @ApiMember(DataType="RoleDetailsModel", Description="Details of the Contact Role to be Added.", IsRequired=true, Name="RoleDetails", ParameterType="query") RoleDetailsModel? RoleDetails; AddContactRole({this.RoleDetails}); AddContactRole.fromJson(Map json) { fromMap(json); } fromMap(Map json) { RoleDetails = JsonConverters.fromJson(json['RoleDetails'],'RoleDetailsModel',context!); return this; } Map toJson() => { 'RoleDetails': JsonConverters.toJson(RoleDetails,'RoleDetailsModel',context!) }; createResponse() => ResponseStatus(); getResponseTypeName() => "ResponseStatus"; getTypeName() => "AddContactRole"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'pfapi.pstpf.com.au', types: { 'ListItemFilterModel': TypeInfo(TypeOf.Class, create:() => ListItemFilterModel()), 'RoleDetailsModel': TypeInfo(TypeOf.Class, create:() => RoleDetailsModel()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'AddContactRole': TypeInfo(TypeOf.Class, create:() => AddContactRole()), });