/* Options: Date: 2026-01-27 18:40:54 Version: 8.40 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://buildmax.org //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GetQuestion.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart,dart:typed_data */ import 'package:servicestack/servicestack.dart'; import 'dart:typed_data'; enum Brand { Desktop, Hp, Kyocera, NeaScan, Samsung, FujiXerox, Ta, Utax, Epson, ScanFront400, Sharp, Ricoh, FujiFilm, } class DtoBase implements IConvertible { Brand? Brand; DtoBase({this.Brand}); DtoBase.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Brand = JsonConverters.fromJson(json['Brand'],'Brand',context!); return this; } Map toJson() => { 'Brand': JsonConverters.toJson(Brand,'Brand',context!) }; getTypeName() => "DtoBase"; TypeContext? context = _ctx; } class RequestBase extends DtoBase implements IConvertible { RequestBase(); RequestBase.fromJson(Map json) : super.fromJson(json); fromMap(Map json) { super.fromMap(json); return this; } Map toJson() => super.toJson(); getTypeName() => "RequestBase"; TypeContext? context = _ctx; } class QuestionRequestDto extends RequestBase implements IConvertible { String? TemplateGuid; String? QuestionGuid; String? Parent; String? FolderBrowser; QuestionRequestDto({this.TemplateGuid,this.QuestionGuid,this.Parent,this.FolderBrowser}); QuestionRequestDto.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); TemplateGuid = json['TemplateGuid']; QuestionGuid = json['QuestionGuid']; Parent = json['Parent']; FolderBrowser = json['FolderBrowser']; return this; } Map toJson() => super.toJson()..addAll({ 'TemplateGuid': TemplateGuid, 'QuestionGuid': QuestionGuid, 'Parent': Parent, 'FolderBrowser': FolderBrowser }); getTypeName() => "QuestionRequestDto"; TypeContext? context = _ctx; } class ResponseBase extends DtoBase implements IConvertible { String? SelectedUiLanguage; String? svSession; String? Title; String? PageTip; bool? NewBrowser; bool? ScanFront400TA; bool? ScanFront400UTAX; ResponseBase({this.SelectedUiLanguage,this.svSession,this.Title,this.PageTip,this.NewBrowser,this.ScanFront400TA,this.ScanFront400UTAX}); ResponseBase.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); SelectedUiLanguage = json['SelectedUiLanguage']; svSession = json['svSession']; Title = json['Title']; PageTip = json['PageTip']; NewBrowser = json['NewBrowser']; ScanFront400TA = json['ScanFront400TA']; ScanFront400UTAX = json['ScanFront400UTAX']; return this; } Map toJson() => super.toJson()..addAll({ 'SelectedUiLanguage': SelectedUiLanguage, 'svSession': svSession, 'Title': Title, 'PageTip': PageTip, 'NewBrowser': NewBrowser, 'ScanFront400TA': ScanFront400TA, 'ScanFront400UTAX': ScanFront400UTAX }); getTypeName() => "ResponseBase"; TypeContext? context = _ctx; } abstract class IClientQuestion extends ITemplateQuestion { String? QuestionGuid; String? ValueDisplayed; String? ValueReturned; bool? Answered; bool? RegexMatches; String? RegexHint; } abstract class IUser extends IIdTemplatesItem { ReadOnlyCollection? Groups; String? EmailAddress; bool? HasPassword; String? HomeFolder; String? Password; bool? SbcUser; } abstract class IUserGroup extends IIdTemplatesItem, IGroup { ReadOnlyCollection? Users; } abstract class IMetadataParserEx extends IMetadataParser { } abstract class ITemplateModificationInfo { String? Guid; DateTime? TemplateModificationDateTime; DateTime? IconModificationDateTime; } enum TemplateType { Workflow, FreeForm, } enum TemplateScheduleType { Interval, Fixed, } abstract class ITemplateSchedule extends IInterface { Duration? Time; Duration? EndTime; bool? NoEndTime; TemplateScheduleType? Type; } abstract class ICredentials extends IInterface { String? Username; String? Password; } abstract class IRejection { int? RejectAfter; String? RejectionPath; ICredentials? ShareCredentials; } abstract class IBadDocumentRejection extends IStatus { String? RejectionPath; ICredentials? ShareCredentials; } enum PdfLoadResolution { Default, Dpi100, Dpi150, Dpi200, Dpi300, Dpi400, Dpi500, Dpi600, } abstract class IGeneral extends IInterface { String? Name; String? Description; String? Icon; ITemplateSchedule? Schedule; IRejection? Rejection; IBadDocumentRejection? BadDocumentRejection; PdfLoadResolution? PdfLoadResolution; } abstract class ICaptureSource extends IStatus { } abstract class ICapture extends IInterface { ReadOnlyCollection? CaptureSources; } abstract class IStringMetadata extends IMetadata { bool? IsSecure; String? SampleValue; String? Value; } abstract class IXmlMetadataImportTagMapping extends IInterface { String? XPathExpression; IStringMetadata? Metadata; } abstract class IXmlMetadataImportNamespaceMapping extends IInterface { String? Prefix; String? Name; } abstract class IXmlMetadataImport extends IStatus { String? SampleDocumentName; ReadOnlyCollection? TagMappings; ReadOnlyCollection? NamespaceMappings; } enum NotificationType { FailureOnly, SuccessOnly, Always, } abstract class INotification extends IStatus { String? Description; String? To; String? Subject; String? Body; String? Cc; String? Bcc; NotificationType? NotificationType; } abstract class INotifications extends IStatus { ReadOnlyCollection? Notifications; } abstract class IValidationError { String? Property; String? ErrorMessage; } abstract class IValidationErrors { ReadOnlyCollection? Errors; } abstract class IValidator { IValidationErrors? ValidationErrors; bool? IsValid; } abstract class ITemplate extends IStatus { String? TemplateVersion; String? ScannerVisionVersion; String? Guid; String? BeginScript; String? EndScript; TemplateType? TemplateType; IGeneral? General; ICapture? Capture; IXmlMetadataImport? XmlMetadataImport; INotifications? Notifications; IValidator? Validator; } abstract class IClientTemplate { String? Description; Uint8List? Icon; ITemplateModificationInfo? ModificationInfo; String? Name; List? Questions; ITemplate? Template; String? TemplateGuid; } class ScanResponseBase extends ResponseBase implements IConvertible { IClientTemplate? Template; List? GlobalQuestions; bool? CanEnableScanButton; ScanResponseBase({this.Template,this.GlobalQuestions,this.CanEnableScanButton}); ScanResponseBase.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); Template = JsonConverters.fromJson(json['Template'],'IClientTemplate',context!); GlobalQuestions = JsonConverters.fromJson(json['GlobalQuestions'],'List',context!); CanEnableScanButton = json['CanEnableScanButton']; return this; } Map toJson() => super.toJson()..addAll({ 'Template': JsonConverters.toJson(Template,'IClientTemplate',context!), 'GlobalQuestions': JsonConverters.toJson(GlobalQuestions,'List',context!), 'CanEnableScanButton': CanEnableScanButton }); getTypeName() => "ScanResponseBase"; TypeContext? context = _ctx; } enum TemplateQuestionType { Edit, List, EditList, Browse, Password, Date, Time, Boolean, Integer, Double, BrowseList, } abstract class ITemplatePicklist extends IStatus { String? Guid; } abstract class ITemplateQuestion extends IStatus { String? TagName; String? Question; String? Tooltip; String? DefaultValue; bool? HideDefaultValue; String? Regex; String? Sample; TemplateQuestionType? QuestionType; int? MinimumSize; int? MaximumSize; bool? IsRequired; ITemplatePicklist? Picklist; } abstract class IStatus extends IInterface { bool? Status; } abstract class IInterface { } abstract class IIdTemplatesItem extends IStatus { String? Id; String? Name; String? Description; ReadOnlyCollection? Templates; } abstract class IMetadataParser { } abstract class IGroup extends IInterface { bool? UseGroupSettings; } enum DataType { String, Boolean, Integer, Double, DateTime, } abstract class IMetadata extends IDataTypeInterface { String? TagName; String? Description; } abstract class IDataTypeInterface extends IInterface { DataType? DataType; } class GetQuestionResponse extends ScanResponseBase implements IConvertible { IClientQuestion? Question; bool? RegexMatches; String? RegexHint; String? SelectedFolder; IUser? LoggedInUser; IMetadataParserEx? MetadataParser; String? ParsedRoot; String? FolderBrowser; String? Parent; String? SearchTerm; int? PageNumber; GetQuestionResponse({this.Question,this.RegexMatches,this.RegexHint,this.SelectedFolder,this.LoggedInUser,this.MetadataParser,this.ParsedRoot,this.FolderBrowser,this.Parent,this.SearchTerm,this.PageNumber}); GetQuestionResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); Question = JsonConverters.fromJson(json['Question'],'IClientQuestion',context!); RegexMatches = json['RegexMatches']; RegexHint = json['RegexHint']; SelectedFolder = json['SelectedFolder']; LoggedInUser = JsonConverters.fromJson(json['LoggedInUser'],'IUser',context!); MetadataParser = JsonConverters.fromJson(json['MetadataParser'],'IMetadataParserEx',context!); ParsedRoot = json['ParsedRoot']; FolderBrowser = json['FolderBrowser']; Parent = json['Parent']; SearchTerm = json['SearchTerm']; PageNumber = json['PageNumber']; return this; } Map toJson() => super.toJson()..addAll({ 'Question': JsonConverters.toJson(Question,'IClientQuestion',context!), 'RegexMatches': RegexMatches, 'RegexHint': RegexHint, 'SelectedFolder': SelectedFolder, 'LoggedInUser': JsonConverters.toJson(LoggedInUser,'IUser',context!), 'MetadataParser': JsonConverters.toJson(MetadataParser,'IMetadataParserEx',context!), 'ParsedRoot': ParsedRoot, 'FolderBrowser': FolderBrowser, 'Parent': Parent, 'SearchTerm': SearchTerm, 'PageNumber': PageNumber }); getTypeName() => "GetQuestionResponse"; TypeContext? context = _ctx; } // @Route("/{Brand}/question/{TemplateGuid}/{QuestionGuid}", "GET") // @Route("/{Brand}/question/{TemplateGuid}/{QuestionGuid}/page/{PageNumber}", "GET") // @Route("/{Brand}/question/{TemplateGuid}/{QuestionGuid}/{ParsedRoot*}/folder/revisited/{FolderBrowser*}", "GET") // @Route("/{Brand}/question/{TemplateGuid}/{QuestionGuid}/{ParsedRoot*}/folder/revisited/{FolderBrowser*}/page/{PageNumber}", "GET") // @Route("/{Brand}/question/{TemplateGuid}/{QuestionGuid}/{ParsedRoot*}/folder/revisited/{FolderBrowser*}/search/{SearchTerm}", "GET") // @Route("/{Brand}/question/{TemplateGuid}/{QuestionGuid}/{ParsedRoot*}/folder/revisited/{FolderBrowser*}/search/{SearchTerm}/page/{PageNumber}", "GET") class GetQuestion extends QuestionRequestDto implements IReturn, IConvertible, IGet { String? ParsedRoot; String? SearchTerm; int? PageNumber; GetQuestion({this.ParsedRoot,this.SearchTerm,this.PageNumber}); GetQuestion.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); ParsedRoot = json['ParsedRoot']; SearchTerm = json['SearchTerm']; PageNumber = json['PageNumber']; return this; } Map toJson() => super.toJson()..addAll({ 'ParsedRoot': ParsedRoot, 'SearchTerm': SearchTerm, 'PageNumber': PageNumber }); createResponse() => GetQuestionResponse(); getResponseTypeName() => "GetQuestionResponse"; getTypeName() => "GetQuestion"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'buildmax.org', types: { 'Brand': TypeInfo(TypeOf.Enum, enumValues:Brand.values), 'DtoBase': TypeInfo(TypeOf.Class, create:() => DtoBase()), 'RequestBase': TypeInfo(TypeOf.Class, create:() => RequestBase()), 'QuestionRequestDto': TypeInfo(TypeOf.Class, create:() => QuestionRequestDto()), 'ResponseBase': TypeInfo(TypeOf.Class, create:() => ResponseBase()), 'IClientQuestion': TypeInfo(TypeOf.Interface), 'IUser': TypeInfo(TypeOf.Interface), 'IUserGroup': TypeInfo(TypeOf.Interface), 'IMetadataParserEx': TypeInfo(TypeOf.Interface), 'ITemplateModificationInfo': TypeInfo(TypeOf.Interface), 'TemplateType': TypeInfo(TypeOf.Enum, enumValues:TemplateType.values), 'TemplateScheduleType': TypeInfo(TypeOf.Enum, enumValues:TemplateScheduleType.values), 'ITemplateSchedule': TypeInfo(TypeOf.Interface), 'ICredentials': TypeInfo(TypeOf.Interface), 'IRejection': TypeInfo(TypeOf.Interface), 'IBadDocumentRejection': TypeInfo(TypeOf.Interface), 'PdfLoadResolution': TypeInfo(TypeOf.Enum, enumValues:PdfLoadResolution.values), 'IGeneral': TypeInfo(TypeOf.Interface), 'ICaptureSource': TypeInfo(TypeOf.Interface), 'ICapture': TypeInfo(TypeOf.Interface), 'IStringMetadata': TypeInfo(TypeOf.Interface), 'IXmlMetadataImportTagMapping': TypeInfo(TypeOf.Interface), 'IXmlMetadataImportNamespaceMapping': TypeInfo(TypeOf.Interface), 'IXmlMetadataImport': TypeInfo(TypeOf.Interface), 'NotificationType': TypeInfo(TypeOf.Enum, enumValues:NotificationType.values), 'INotification': TypeInfo(TypeOf.Interface), 'INotifications': TypeInfo(TypeOf.Interface), 'IValidationError': TypeInfo(TypeOf.Interface), 'IValidationErrors': TypeInfo(TypeOf.Interface), 'IValidator': TypeInfo(TypeOf.Interface), 'ITemplate': TypeInfo(TypeOf.Interface), 'IClientTemplate': TypeInfo(TypeOf.Interface), 'ScanResponseBase': TypeInfo(TypeOf.Class, create:() => ScanResponseBase()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'TemplateQuestionType': TypeInfo(TypeOf.Enum, enumValues:TemplateQuestionType.values), 'ITemplatePicklist': TypeInfo(TypeOf.Interface), 'ITemplateQuestion': TypeInfo(TypeOf.Interface), 'IStatus': TypeInfo(TypeOf.Interface), 'IInterface': TypeInfo(TypeOf.Interface), 'IIdTemplatesItem': TypeInfo(TypeOf.Interface), 'IMetadataParser': TypeInfo(TypeOf.Interface), 'IGroup': TypeInfo(TypeOf.Interface), 'DataType': TypeInfo(TypeOf.Enum, enumValues:DataType.values), 'IMetadata': TypeInfo(TypeOf.Interface), 'IDataTypeInterface': TypeInfo(TypeOf.Interface), 'GetQuestionResponse': TypeInfo(TypeOf.Class, create:() => GetQuestionResponse()), 'GetQuestion': TypeInfo(TypeOf.Class, create:() => GetQuestion()), });