/* Options: Date: 2025-11-05 01:12:19 Version: 8.71 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://evovoice.io //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: PatchAISession.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart,dart:typed_data */ import 'package:servicestack/servicestack.dart'; import 'dart:typed_data'; abstract class EntityInfo { /** * The ID of the object */ // @ApiMember(Description="The ID of the object") String? id; /** * The date the object was created */ // @ApiMember(Description="The date the object was created") String? dateCreated; /** * The date the object was last modified */ // @ApiMember(Description="The date the object was last modified") String? dateLastModified; /** * The user that created this object */ // @ApiMember(Description="The user that created this object") String? createdBy; /** * The user that last modified this object */ // @ApiMember(Description="The user that last modified this object") String? lastModifiedBy; EntityInfo({this.id,this.dateCreated,this.dateLastModified,this.createdBy,this.lastModifiedBy}); EntityInfo.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; dateCreated = json['dateCreated']; dateLastModified = json['dateLastModified']; createdBy = json['createdBy']; lastModifiedBy = json['lastModifiedBy']; return this; } Map toJson() => { 'id': id, 'dateCreated': dateCreated, 'dateLastModified': dateLastModified, 'createdBy': createdBy, 'lastModifiedBy': lastModifiedBy }; getTypeName() => "EntityInfo"; TypeContext? context = _ctx; } class AISessionInfo extends EntityInfo implements IConvertible { /** * The ID of the account associated with this session */ // @ApiMember(Description="The ID of the account associated with this session") String? accountId; /** * The name of the account associated with this customer */ // @ApiMember(Description="The name of the account associated with this customer") String? accountName; /** * The purpose for this AI session */ // @ApiMember(Description="The purpose for this AI session") String? purpose; AISessionInfo({this.accountId,this.accountName,this.purpose}); AISessionInfo.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); accountId = json['accountId']; accountName = json['accountName']; purpose = json['purpose']; return this; } Map toJson() => super.toJson()..addAll({ 'accountId': accountId, 'accountName': accountName, 'purpose': purpose }); getTypeName() => "AISessionInfo"; TypeContext? context = _ctx; } /** * Update a specific session */ // @Route("/ai/sessions/{sessionId}", "PATCH") // @Api(Description="Update a specific session") class PatchAISession implements IReturn, IPatch, IConvertible { /** * The ID of the session you want to update */ // @ApiMember(Description="The ID of the session you want to update") String? sessionId; /** * The purpose of this session */ // @ApiMember(Description="The purpose of this session") String? purpose; PatchAISession({this.sessionId,this.purpose}); PatchAISession.fromJson(Map json) { fromMap(json); } fromMap(Map json) { sessionId = json['sessionId']; purpose = json['purpose']; return this; } Map toJson() => { 'sessionId': sessionId, 'purpose': purpose }; createResponse() => AISessionInfo(); getResponseTypeName() => "AISessionInfo"; getTypeName() => "PatchAISession"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'evovoice.io', types: { 'EntityInfo': TypeInfo(TypeOf.AbstractClass), 'AISessionInfo': TypeInfo(TypeOf.Class, create:() => AISessionInfo()), 'PatchAISession': TypeInfo(TypeOf.Class, create:() => PatchAISession()), });