""" Options: Date: 2026-01-25 20:37:42 Version: 8.90 Tip: To override a DTO option, remove "#" prefix before updating BaseUrl: https://taxfiling.staging.pwc.de #GlobalNamespace: #AddServiceStackTypes: True #AddResponseStatus: False #AddImplicitVersion: #AddDescriptionAsComments: True IncludeTypes: HoleZertifikatFingerabdruck.* #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 Object = TypeVar('Object') # @Api(Description="Represents a base class for a file with raw data.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class FileBase: """ Represents a base class for a file with raw data. """ # @ApiMember(Description="The raw data content of the file in bytes.", Name="Content") content: Optional[bytes] = None """ The raw data content of the file in bytes. """ # @Api(Description="Represents information about a file or directory.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class FileMetadata(IFileMetadata): """ Represents information about a file or directory. """ # @ApiMember(Description="The name of the file.\nFor files, gets the name of the file.\nFor directories, gets the name of the last directory in the hierarchy if a hierarchy exists; otherwise, the name of the directory.") name: Optional[str] = None """ The name of the file.For files, gets the name of the file.For directories, gets the name of the last directory in the hierarchy if a hierarchy exists; otherwise, the name of the directory. """ # @ApiMember(Description="The full path of the directory or file.") full_name: Optional[str] = None """ The full path of the directory or file. """ # @ApiMember(Description="The time the current file or directory was last accessed.") last_access_time: datetime.datetime = datetime.datetime(1, 1, 1) """ The time the current file or directory was last accessed. """ # @ApiMember(Description="The name of the file.") last_access_time_utc: datetime.datetime = datetime.datetime(1, 1, 1) """ The name of the file. """ # @ApiMember(Description="The time when the current file or directory was last written to.") last_write_time: datetime.datetime = datetime.datetime(1, 1, 1) """ The time when the current file or directory was last written to. """ # @ApiMember(Description="The time, in coordinated universal time (UTC), when the current file or directory was last written to.") last_write_time_utc: datetime.datetime = datetime.datetime(1, 1, 1) """ The time, in coordinated universal time (UTC), when the current file or directory was last written to. """ # @ApiMember(Description="The size, in bytes, of the current file.") length: int = 0 """ The size, in bytes, of the current file. """ # @ApiMember(Description="The size, in bytes, of the current file.") user_id: int = 0 """ The size, in bytes, of the current file. """ # @ApiMember(Description="The file group id.") group_id: int = 0 """ The file group id. """ # @ApiMember(Description="A value that indicates whether the others can read from this file.") others_can_read: bool = False """ A value that indicates whether the others can read from this file. """ # @ApiMember(Description="A value that indicates whether the group members can execute this file.") group_can_execute: bool = False """ A value that indicates whether the group members can execute this file. """ # @ApiMember(Description="A value that indicates whether the group members can write into this file.") group_can_write: bool = False """ A value that indicates whether the group members can write into this file. """ # @ApiMember(Description="A value that indicates whether the group members can read from this file.") group_can_read: bool = False """ A value that indicates whether the group members can read from this file. """ # @ApiMember(Description="A value that indicates whether the owner can execute this file.") owner_can_execute: bool = False """ A value that indicates whether the owner can execute this file. """ # @ApiMember(Description="A value that indicates whether the owner can write into this file.") owner_can_write: bool = False """ A value that indicates whether the owner can write into this file. """ # @ApiMember(Description="A value that indicates whether the owner can read from this file.") owner_can_read: bool = False """ A value that indicates whether the owner can read from this file. """ # @ApiMember(Description="A value that indicates whether others can read from this file.") others_can_execute: bool = False """ A value that indicates whether others can read from this file. """ # @ApiMember(Description="A value that indicates whether others can write into this file.") others_can_write: bool = False """ A value that indicates whether others can write into this file. """ # @ApiMember(Description="Extensions to the file attributes.") extensions: Dict[str, str] = field(default_factory=dict) """ Extensions to the file attributes. """ # @Api(Description="Represents a generic file that contains raw data content in bytes") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class BinaryFile(FileBase): """ Represents a generic file that contains raw data content in bytes """ # @ApiMember(Description="The attributes of the file.") metadata: Optional[FileMetadata] = None """ The attributes of the file. """ # @ApiMember(Description="The name of the file without information on its directory path.") name: Optional[str] = None """ The name of the file without information on its directory path. """ # @Api(Description="Represents a client-side generated certificate that is protected by a password.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class ClientSideCertificate(ISecuredCertificate): """ Represents a client-side generated certificate that is protected by a password. """ # @ApiMember(Description="The friendly name of the certificate.", IsRequired=true) name: Optional[str] = None """ The friendly name of the certificate. """ # @StringLength(255) # @ApiMember(Description="The password to protect the certificate from unauthorized access.", IsRequired=true) pin: Optional[str] = None """ The password to protect the certificate from unauthorized access. """ # @ApiMember(Description="The file that contains the private key. Access is protected by the PIN.", IsRequired=true) private_key_file: Optional[BinaryFile] = None """ The file that contains the private key. Access is protected by the PIN. """ # @ApiMember(Description="The file that contains the certificate data and public key.", IsRequired=true) public_key_file: Optional[BinaryFile] = None """ The file that contains the certificate data and public key. """ # @ApiMember(Description="Contains the checksum of the files PublicKeyFile and PrivateKeyFile.", IsRequired=true) checksum_file: Optional[BinaryFile] = None """ Contains the checksum of the files PublicKeyFile and PrivateKeyFile. """ # @StringLength(2147483647) # @ApiMember(Description="The description for the certificate.") description: Optional[str] = None """ The description for the certificate. """ # @ApiMember(Description="The tags that can be used to label or identify the certificate.") tags: List[str] = field(default_factory=list) """ The tags that can be used to label or identify the certificate. """ @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class HoleZertifikatFingerabdruckBase(IReturn[HoleZertifikatFingerabdruckResponse], IPost): # @ApiMember(Description="The client-side certificate. Access is protected by a PIN.") zertifikat: Optional[ClientSideCertificate] = None """ The client-side certificate. Access is protected by a PIN. """ @staticmethod def response_type(): return HoleZertifikatFingerabdruckResponse class ISecuredCertificate: pin: Optional[str] = None class IFileMetadata: name: Optional[str] = None full_name: Optional[str] = None last_access_time: datetime.datetime = datetime.datetime(1, 1, 1) last_access_time_utc: datetime.datetime = datetime.datetime(1, 1, 1) last_write_time: datetime.datetime = datetime.datetime(1, 1, 1) last_write_time_utc: datetime.datetime = datetime.datetime(1, 1, 1) length: int = 0 user_id: int = 0 group_id: int = 0 group_can_execute: bool = False group_can_write: bool = False group_can_read: bool = False owner_can_read: bool = False owner_can_execute: bool = False owner_can_write: bool = False others_can_read: bool = False others_can_execute: bool = False others_can_write: bool = False extensions: Optional[Dict[str, str]] = None # @Api(Description="Represent a base response that encapsulate any ERiC API function return value.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class EricFehlerCodeResponse(ServiceReponseBase): """ Represent a base response that encapsulate any ERiC API function return value. """ # @ApiMember(Description="The status code that the ERiC API function returns.") status_code: Optional[EricFehlerCode] = None """ The status code that the ERiC API function returns. """ # @ApiMember(Description="The status message that the ERiC API function returns.") status_text: Optional[str] = None """ The status message that the ERiC API function returns. """ # @Api(Description="Represents a type that encapsulates the return values of the ERiC API function, which retrieves the fingerprint of a specified certificate.") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class HoleZertifikatFingerabdruckResponse(EricFehlerCodeResponse): """ Represents a type that encapsulates the return values of the ERiC API function, which retrieves the fingerprint of a specified certificate. """ # @ApiMember(Description="The fingerprint of the return type.") fingerabdruck: Optional[str] = None """ The fingerprint of the return type. """ # @ApiMember(Description="The signature of the return type.") signatur: Optional[str] = None """ The signature of the return type. """ # @Route("/HoleZertifikatFingerabdruck", "POST") # @Api(Description="A synchronous service to get the fingerprint of a specified client-side certificate") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class HoleZertifikatFingerabdruck(HoleZertifikatFingerabdruckBase, IReturn[HoleZertifikatFingerabdruckResponse]): """ A synchronous service to get the fingerprint of a specified client-side certificate """ pass