/* Options: Date: 2026-05-19 10:58:44 Version: 8.22 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://dev-api-booster.richemont.com //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GetUsers.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; abstract class IPagedRequest { int? page; int? items; bool? noCount; String? sortBy; } class GetUserResponse implements IConvertible { /** * Unique Identifier of a User */ // @ApiMember(Description="Unique Identifier of a User", IsRequired=true) String? userId; /** * User's Email address */ // @ApiMember(Description="User's Email address", IsRequired=true) String? emailAddress; /** * First Name */ // @ApiMember(Description="First Name", IsRequired=true) String? firstName; /** * Last Name */ // @ApiMember(Description="Last Name", IsRequired=true) String? lastName; /** * User's Password Expiration Date */ // @ApiMember(Description="User's Password Expiration Date") String? passwordExpirationDate; /** * If the User must change the password */ // @ApiMember(Description="If the User must change the password", IsRequired=true) bool? passwordMustBeChanged; /** * User Type of the User */ // @ApiMember(Description="User Type of the User", IsRequired=true) String? userType; /** * Culture ID of the User */ // @ApiMember(Description="Culture ID of the User", IsRequired=true) String? culture; /** * If the User account is locked */ // @ApiMember(Description="If the User account is locked", IsRequired=true) bool? accountLocked; GetUserResponse({this.userId,this.emailAddress,this.firstName,this.lastName,this.passwordExpirationDate,this.passwordMustBeChanged,this.userType,this.culture,this.accountLocked}); GetUserResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { userId = json['userId']; emailAddress = json['emailAddress']; firstName = json['firstName']; lastName = json['lastName']; passwordExpirationDate = json['passwordExpirationDate']; passwordMustBeChanged = json['passwordMustBeChanged']; userType = json['userType']; culture = json['culture']; accountLocked = json['accountLocked']; return this; } Map toJson() => { 'userId': userId, 'emailAddress': emailAddress, 'firstName': firstName, 'lastName': lastName, 'passwordExpirationDate': passwordExpirationDate, 'passwordMustBeChanged': passwordMustBeChanged, 'userType': userType, 'culture': culture, 'accountLocked': accountLocked }; getTypeName() => "GetUserResponse"; TypeContext? context = _ctx; } class GetUsersResponse implements IConvertible { /** * Index of the result set returnedr */ // @ApiMember(Description="Index of the result set returnedr", IsRequired=true) int? page; /** * Size of the result set returned */ // @ApiMember(Description="Size of the result set returned", IsRequired=true) int? items; /** * Total amount of pages / result sets */ // @ApiMember(Description="Total amount of pages / result sets", IsRequired=true) int? totalPages; /** * Total amount of results */ // @ApiMember(Description="Total amount of results", IsRequired=true) int? totalResults; /** * List of Users */ // @ApiMember(Description="List of Users", IsRequired=true) List? elements; GetUsersResponse({this.page,this.items,this.totalPages,this.totalResults,this.elements}); GetUsersResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { page = json['page']; items = json['items']; totalPages = json['totalPages']; totalResults = json['totalResults']; elements = JsonConverters.fromJson(json['elements'],'List',context!); return this; } Map toJson() => { 'page': page, 'items': items, 'totalPages': totalPages, 'totalResults': totalResults, 'elements': JsonConverters.toJson(elements,'List',context!) }; getTypeName() => "GetUsersResponse"; TypeContext? context = _ctx; } // @Route("/users", "GET") class GetUsers implements IReturn, IPagedRequest, IConvertible, IGet { /** * Index of the result set returned */ // @ApiMember(Description="Index of the result set returned", IsRequired=true) int? page; /** * Size of the result set returned */ // @ApiMember(Description="Size of the result set returned", IsRequired=true) int? items; /** * Omit precise record count - save on performance */ // @ApiMember(Description="Omit precise record count - save on performance") bool? noCount; /** * Sorting expression */ // @ApiMember(Description="Sorting expression") String? sortBy; /** * Email address */ // @ApiMember(Description="Email address") String? email; /** * Also retreive users with locked account */ // @ApiMember(Description="Also retreive users with locked account") bool? includeLockedAccounts; GetUsers({this.page,this.items,this.noCount,this.sortBy,this.email,this.includeLockedAccounts}); GetUsers.fromJson(Map json) { fromMap(json); } fromMap(Map json) { page = json['page']; items = json['items']; noCount = json['noCount']; sortBy = json['sortBy']; email = json['email']; includeLockedAccounts = json['includeLockedAccounts']; return this; } Map toJson() => { 'page': page, 'items': items, 'noCount': noCount, 'sortBy': sortBy, 'email': email, 'includeLockedAccounts': includeLockedAccounts }; createResponse() => GetUsersResponse(); getResponseTypeName() => "GetUsersResponse"; getTypeName() => "GetUsers"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'dev_api_booster.richemont.com', types: { 'IPagedRequest': TypeInfo(TypeOf.Interface), 'GetUserResponse': TypeInfo(TypeOf.Class, create:() => GetUserResponse()), 'GetUsersResponse': TypeInfo(TypeOf.Class, create:() => GetUsersResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'GetUsers': TypeInfo(TypeOf.Class, create:() => GetUsers()), });