/* Options: Date: 2026-02-04 06:24:04 Version: 8.90 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://taxfiling.pwc.de //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: HoleClientSideZertifikatEigenschaftenAsync.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } /** @description Represents a base class for a file with raw data. */ // @Api(Description="Represents a base class for a file with raw data.") export class FileBase { /** @description The raw data content of the file in bytes. */ // @ApiMember(Description="The raw data content of the file in bytes.", Name="Content") public content: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } /** @description Represents information about a file or directory. */ // @Api(Description="Represents information about a file or directory.") export class FileMetadata implements IFileMetadata { /** @description 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 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.") public name?: string; /** @description The full path of the directory or file. */ // @ApiMember(Description="The full path of the directory or file.") public fullName?: string; /** @description The time the current file or directory was last accessed. */ // @ApiMember(Description="The time the current file or directory was last accessed.") public lastAccessTime: string; /** @description The name of the file. */ // @ApiMember(Description="The name of the file.") public lastAccessTimeUtc: string; /** @description The time when the current file or directory was last written to. */ // @ApiMember(Description="The time when the current file or directory was last written to.") public lastWriteTime: string; /** @description The time, in coordinated universal time (UTC), 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.") public lastWriteTimeUtc: string; /** @description The size, in bytes, of the current file. */ // @ApiMember(Description="The size, in bytes, of the current file.") public length: number; /** @description The size, in bytes, of the current file. */ // @ApiMember(Description="The size, in bytes, of the current file.") public userId: number; /** @description The file group id. */ // @ApiMember(Description="The file group id.") public groupId: number; /** @description A value that indicates whether the others can read from this file. */ // @ApiMember(Description="A value that indicates whether the others can read from this file.") public othersCanRead: boolean; /** @description A value that indicates whether the group members can execute this file. */ // @ApiMember(Description="A value that indicates whether the group members can execute this file.") public groupCanExecute: boolean; /** @description A value that indicates whether the group members can write into this file. */ // @ApiMember(Description="A value that indicates whether the group members can write into this file.") public groupCanWrite: boolean; /** @description A value that indicates whether the group members can read from this file. */ // @ApiMember(Description="A value that indicates whether the group members can read from this file.") public groupCanRead: boolean; /** @description A value that indicates whether the owner can execute this file. */ // @ApiMember(Description="A value that indicates whether the owner can execute this file.") public ownerCanExecute: boolean; /** @description A value that indicates whether the owner can write into this file. */ // @ApiMember(Description="A value that indicates whether the owner can write into this file.") public ownerCanWrite: boolean; /** @description A value that indicates whether the owner can read from this file. */ // @ApiMember(Description="A value that indicates whether the owner can read from this file.") public ownerCanRead: boolean; /** @description A value that indicates whether others can read from this file. */ // @ApiMember(Description="A value that indicates whether others can read from this file.") public othersCanExecute: boolean; /** @description A value that indicates whether others can write into this file. */ // @ApiMember(Description="A value that indicates whether others can write into this file.") public othersCanWrite: boolean; /** @description Extensions to the file attributes. */ // @ApiMember(Description="Extensions to the file attributes.") public extensions: { [index:string]: string; } = {}; public constructor(init?: Partial) { (Object as any).assign(this, init); } } /** @description Represents a generic file that contains raw data content in bytes */ // @Api(Description="Represents a generic file that contains raw data content in bytes") export class BinaryFile extends FileBase { /** @description The attributes of the file. */ // @ApiMember(Description="The attributes of the file.") public metadata?: FileMetadata; /** @description The name of the file without information on its directory path. */ // @ApiMember(Description="The name of the file without information on its directory path.") public name?: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } /** @description Represents a client-side generated certificate that is protected by a password. */ // @Api(Description="Represents a client-side generated certificate that is protected by a password.") export class ClientSideCertificate implements ISecuredCertificate { /** @description The friendly name of the certificate. */ // @ApiMember(Description="The friendly name of the certificate.", IsRequired=true) public name: string; /** @description The password to protect the certificate from unauthorized access. */ // @StringLength(255) // @ApiMember(Description="The password to protect the certificate from unauthorized access.", IsRequired=true) public pin: string; /** @description The file that contains the private key. Access is protected by the PIN. */ // @ApiMember(Description="The file that contains the private key. Access is protected by the PIN.", IsRequired=true) public privateKeyFile: BinaryFile; /** @description The file that contains the certificate data and public key. */ // @ApiMember(Description="The file that contains the certificate data and public key.", IsRequired=true) public publicKeyFile: BinaryFile; /** @description Contains the checksum of the files PublicKeyFile and PrivateKeyFile. */ // @ApiMember(Description="Contains the checksum of the files PublicKeyFile and PrivateKeyFile.", IsRequired=true) public checksumFile: BinaryFile; /** @description The description for the certificate. */ // @StringLength(2147483647) // @ApiMember(Description="The description for the certificate.") public description?: string; /** @description The tags that can be used to label or identify the certificate. */ // @ApiMember(Description="The tags that can be used to label or identify the certificate.") public tags: string[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } /** @description A base service to get the properties of a specified client-side certificate. */ // @Api(Description="A base service to get the properties of a specified client-side certificate.") export class HoleClientSideZertifikatEigenschaftenBase implements IPost { /** @description The client-side certificate. Access is protected by a PIN. */ // @ApiMember(Description="The client-side certificate. Access is protected by a PIN.", Name="Zertifikat") public zertifikat: ClientSideCertificate; public constructor(init?: Partial) { (Object as any).assign(this, init); } } /** @description Represent issuer details of a certificate. */ // @Api(Description="Represent issuer details of a certificate.") export class Info { /** @description The name of the issuer detail. */ // @ApiMember(Description="The name of the issuer detail.") public name?: string; /** @description The value of the issuer detail. */ // @ApiMember(Description="The value of the issuer detail.") public wert?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } /** @description Represents an issuer of certificates. */ // @Api(Description="Represents an issuer of certificates.") export class Issuer { /** @description Details about the issuer of certificates. */ // @ApiMember(Description="Details about the issuer of certificates.") public infos: Info[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } /** @description Represents the subject of the certificate. */ // @Api(Description="Represents the subject of the certificate.") export class Subjekt { /** @description Details about the subject of the certificate. */ // @ApiMember(Description="Details about the subject of the certificate.") public infos: Info[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } /** @description Represents a type of Identification characteristic. Identification marker that was specified when the certificate was generated. For portal certificates usually tax number or identification number. */ export enum Identifikationsmerkmaltyp { Unbekannt = 'Unbekannt', Steuernummer = 'Steuernummer', Identifikationsnummer = 'Identifikationsnummer', BZStNummer = 'BZStNummer', Bearbeiternummer = 'Bearbeiternummer', Clienterzeugt = 'Clienterzeugt', } /** @description Represents a type of registrar. Contains informatiom on the type of person or organization, for which a certificate is issued. Often 'Person' or 'Organisation'. */ export enum Registrierertyp { Unbekannt = 'Unbekannt', Person = 'Person', Organisation = 'Organisation', Rechteverwalter = 'Rechteverwalter', BZStInland = 'BZStInland', BZStAusland = 'BZStAusland', BZStKevizz = 'BZStKevizz', } /** @description Represents a type of verification. Contains information on the verification of a person or organisation by an issuer of certificates. */ export enum VerifikationsartTyp { Unbekannt = 'Unbekannt', Postweg = 'Postweg', Neuerpersonalausweis = 'Neuerpersonalausweis', } /** @description Represents a type of token.Contains information about the type of token used to create a certificate. */ export enum TokenTyp { Unbekannt = 'Unbekannt', Software = 'Software', Stick = 'Stick', Karte = 'Karte', Ausweis = 'Ausweis', } /** @description Represents the characteristics of a certificate. */ // @Api(Description="Represents the characteristics of a certificate.") export class Zertifikateigenschaften { /** @description The start validity date of the certificate. */ // @ApiMember(Description="The start validity date of the certificate.") public ausgestelltAm?: string; /** @description The expiry date of the certificate. */ // @ApiMember(Description="The expiry date of the certificate.") public gueltigBis?: string; /** @description The signing algorithm and Object Identifier (for more information on OIDs, please see 'http://www.oid-info.com/') */ // @ApiMember(Description="The signing algorithm and Object Identifier (for more information on OIDs, please see 'http://www.oid-info.com/')") public signaturalgorithmus?: string; /** @description The MD5-hash of the public key. */ // @ApiMember(Description="The MD5-hash of the public key.") public publicKeyMD5?: string; /** @description The SHA1-hash of the public key. */ // @ApiMember(Description="The SHA1-hash of the public key.") public publicKeySHA1?: string; /** @description The key length of the public key in units of bits. For example '2048 bits' */ // @ApiMember(Description="The key length of the public key in units of bits. For example '2048 bits'") public publicKeyBitLength: number; /** @description The issuer of the certificate. */ // @ApiMember(Description="The issuer of the certificate.") public issuer?: Issuer; /** @description The subject of the certificate. */ // @ApiMember(Description="The subject of the certificate.") public subjekt?: Subjekt; /** @description The identification characteristics of the certificate. */ // @ApiMember(Description="The identification characteristics of the certificate.") public identifikationsmerkmaltyp: Identifikationsmerkmaltyp; /** @description The type of registrar, to which the key is issued. */ // @ApiMember(Description="The type of registrar, to which the key is issued.") public registrierertyp?: Registrierertyp; /** @description The type of verification conducted for the person or organisation, to which the certificate is issued. */ // @ApiMember(Description="The type of verification conducted for the person or organisation, to which the certificate is issued.") public verifikationsart?: VerifikationsartTyp; /** @description The type of token used to create the certificate. */ // @ApiMember(Description="The type of token used to create the certificate.") public tokenTyp: TokenTyp; /** @description Is the certificate is a test certificate? True if it is a test certificate; otherwise false. */ // @ApiMember(Description="Is the certificate is a test certificate? True if it is a test certificate; otherwise false.") public testzertifikat?: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } /** @description Represents a list of properties for a specified certificate. */ // @Api(Description="Represents a list of properties for a specified certificate.") export class EricHoleZertifikatEigenschaften { /** @description The properties of the certificate used for signing. These are not available for client-side certificates. */ // @ApiMember(Description="The properties of the certificate used for signing. These are not available for client-side certificates.") public signaturzertifikateigenschaften?: Zertifikateigenschaften; /** @description The properties of certificates used for encryption. */ // @ApiMember(Description="The properties of certificates used for encryption.") public verschluesselungszertifikateigenschaften?: Zertifikateigenschaften; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export interface ISecuredCertificate { pin: string; } export interface IFileMetadata { name: string; fullName: string; lastAccessTime: string; lastAccessTimeUtc: string; lastWriteTime: string; lastWriteTimeUtc: string; length: number; userId: number; groupId: number; groupCanExecute: boolean; groupCanWrite: boolean; groupCanRead: boolean; ownerCanRead: boolean; ownerCanExecute: boolean; ownerCanWrite: boolean; othersCanRead: boolean; othersCanExecute: boolean; othersCanWrite: boolean; extensions: { [index:string]: string; }; } /** @description Represent a base response that encapsulate any ERiC API function return value. */ // @Api(Description="Represent a base response that encapsulate any ERiC API function return value.") export class EricFehlerCodeResponse extends ServiceReponseBase { /** @description The status code that the ERiC API function returns. */ // @ApiMember(Description="The status code that the ERiC API function returns.") public statusCode: EricFehlerCode; /** @description The status message that the ERiC API function returns. */ // @ApiMember(Description="The status message that the ERiC API function returns.") public statusText?: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } /** @description Represents a type that encapsulates the return values of the ERiC API function, which retrieves the details of a certificate. */ // @Api(Description="Represents a type that encapsulates the return values of the ERiC API function, which retrieves the details of a certificate.") export class HoleZertifikatEigenschaftenResponse extends EricFehlerCodeResponse { /** @description The list of test fiscal authoririties. */ // @ApiMember(Description="The list of test fiscal authoririties.") public rueckgabe?: EricHoleZertifikatEigenschaften; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } /** @description An asynchronous service to get the properties of specified client-side certificate. */ // @Route("/HoleClientSideZertifikatEigenschaftenAsync", "POST") // @Api(Description="An asynchronous service to get the properties of specified client-side certificate.") export class HoleClientSideZertifikatEigenschaftenAsync extends HoleClientSideZertifikatEigenschaftenBase implements IReturn { public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } public getTypeName() { return 'HoleClientSideZertifikatEigenschaftenAsync'; } public getMethod() { return 'POST'; } public createResponse() { return new HoleZertifikatEigenschaftenResponse(); } }