""" Options: Date: 2026-08-01 16:49:48 Version: 8.80 Tip: To override a DTO option, remove "#" prefix before updating BaseUrl: https://dmsshow.kyocerasolutions.cz #GlobalNamespace: #AddServiceStackTypes: True #AddResponseStatus: False #AddImplicitVersion: #AddDescriptionAsComments: True IncludeTypes: BrotherTemplateQuestionResponse.* #ExcludeTypes: #DefaultImports: datetime,decimal,marshmallow.fields:*,servicestack:*,typing:*,dataclasses:dataclass/field,dataclasses_json:dataclass_json/LetterCase/Undefined/config,enum:Enum/IntEnum #DataClass: #DataClassJson: """ import datetime import decimal from marshmallow.fields import * from servicestack import * from typing import * from dataclasses import dataclass, field from dataclasses_json import dataclass_json, LetterCase, Undefined, config from enum import Enum, IntEnum class Brand(str, Enum): DESKTOP = 'Desktop' HP = 'Hp' KYOCERA = 'Kyocera' NEA_SCAN = 'NeaScan' SAMSUNG = 'Samsung' FUJI_XEROX = 'FujiXerox' TA = 'Ta' UTAX = 'Utax' EPSON = 'Epson' SCAN_FRONT400 = 'ScanFront400' SHARP = 'Sharp' RICOH = 'Ricoh' FUJI_FILM = 'FujiFilm' BROTHER = 'Brother' @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class DtoBase: brand: Optional[Brand] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class RequestBase(DtoBase): pass @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class QuestionRequestDto(RequestBase): template_guid: Optional[str] = None question_guid: Optional[str] = None parent: Optional[str] = None folder_browser: Optional[str] = None class IClientQuestion(ITemplateQuestion): question_guid: Optional[str] = None value_displayed: Optional[str] = None value_returned: Optional[str] = None answered: bool = False regex_matches: bool = False regex_hint: Optional[str] = None class TemplateQuestionType(str, Enum): EDIT = 'Edit' LIST = 'List' EDIT_LIST = 'EditList' BROWSE = 'Browse' PASSWORD = 'Password' DATE = 'Date' TIME = 'Time' BOOLEAN = 'Boolean' INTEGER = 'Integer' DOUBLE = 'Double' BROWSE_LIST = 'BrowseList' class ITemplatePicklist(IStatus): guid: Optional[str] = None class ITemplateQuestion(IStatus): tag_name: Optional[str] = None question: Optional[str] = None tooltip: Optional[str] = None default_value: Optional[str] = None hide_default_value: Optional[bool] = None regex: Optional[str] = None sample: Optional[str] = None question_type: Optional[TemplateQuestionType] = None minimum_size: Optional[int] = None maximum_size: Optional[int] = None is_required: Optional[bool] = None picklist: Optional[ITemplatePicklist] = None class IStatus(IInterface): status: Optional[bool] = None class IInterface: pass # @Route("/{Brand}/templates/{TemplateGuid}/submit") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class BrotherTemplateQuestionResponse(QuestionRequestDto): question: Optional[IClientQuestion] = None