/* Options: Date: 2026-01-25 11:04:02 SwiftVersion: 6.0 Version: 8.90 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://taxfiling.staging.pwc.de //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True //MakePropertiesOptional: True IncludeTypes: HoleFinanzamtsdatenAsync.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack /** * An asynchronous service to get tax office information for a specified Federal Tax Office Number. */ // @Route("/HoleFinanzamtsdatenAsync/{BufaNr}", "GET") // @Api(Description="An asynchronous service to get tax office information for a specified Federal Tax Office Number.") public class HoleFinanzamtsdatenAsync : HoleFinanzamtsdatenBase, IReturn { public typealias Return = HoleFinanzamtsdatenResponse required public init(){ super.init() } required public init(from decoder: Decoder) throws { try super.init(from: decoder) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) } } /** * Represents a type that encapsulates the return values of the ERiC API function, which retrieves all tax office numbers. */ // @Api(Description="Represents a type that encapsulates the return values of the ERiC API function, which retrieves all tax office numbers.") public class HoleFinanzamtsdatenResponse : EricFehlerCodeResponse { /** * The details of a specified tax office. */ // @ApiMember(Description="The details of a specified tax office.") public var rueckgabe:EricHoleFinanzamtsdaten? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case rueckgabe } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) rueckgabe = try container.decodeIfPresent(EricHoleFinanzamtsdaten.self, forKey: .rueckgabe) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if rueckgabe != nil { try container.encode(rueckgabe, forKey: .rueckgabe) } } } /** * A base service to get tax office information for a specified Federal Tax Office Number. */ // @Api(Description="A base service to get tax office information for a specified Federal Tax Office Number.") public class HoleFinanzamtsdatenBase : IGet, Codable { /** * The Federal Tax Office Number. */ // @ApiMember(Description="The Federal Tax Office Number.", Name="BufaNr") public var bufaNr:String? required public init(){} } /** * Represents a structure that encapsulates the list of details of fiscal authorities. */ // @Api(Description="Represents a structure that encapsulates the list of details of fiscal authorities.") public class EricHoleFinanzamtsdaten : Codable { /** * The version of the information structure. */ // @ApiMember(Description="The version of the information structure.") public var version:UInt32? /** * The details of the fiscal authority. */ // @ApiMember(Description="The details of the fiscal authority.") public var finanzamtsdaten:Finanzamtsdaten? required public init(){} } /** * Represents a structure that encapsulates details of fiscal authorities. */ // @Api(Description="Represents a structure that encapsulates details of fiscal authorities.") public class Finanzamtsdaten : Codable { /** * The Federal Tax Office (Bundesfinanzamt) identification number of the fiscal authority. */ // @ApiMember(Description="The Federal Tax Office (Bundesfinanzamt) identification number of the fiscal authority.") public var buFaNr:String? /** * The name of the fiscal authority. */ // @ApiMember(Description="The name of the fiscal authority.") public var name:String? /** * The list of addresses of the fiscal authority. */ // @ApiMember(Description="The list of addresses of the fiscal authority.") public var adresseListe:AdresseListe? /** * The list of business contacts of the fiscal authority. */ // @ApiMember(Description="The list of business contacts of the fiscal authority.") public var kontaktListe:KontaktListe? /** * The list of bank accounts of the fiscal authority. */ // @ApiMember(Description="The list of bank accounts of the fiscal authority.") public var bankverbindungListe:BankverbindungListe? /** * The opening hours of the fiscal authority. */ // @ApiMember(Description="The opening hours of the fiscal authority.") public var oeffnungszeitListe:OeffnungszeitListe? /** * The list of comments of the fiscal authority. */ // @ApiMember(Description="The list of comments of the fiscal authority.") public var bemerkungListe:BemerkungListe? /** * The central processing office of the fiscal authority. */ // @ApiMember(Description="The central processing office of the fiscal authority.") public var hauptstelle:Hauptstelle? /** * The branch of the fiscal authority. */ // @ApiMember(Description="The branch of the fiscal authority.") public var aussenstelle:String? required public init(){} } /** * Represents a list of Adresse items. */ public class AdresseListe : Codable { required public init(){} } /** * Represents a list of business contacts. */ public class KontaktListe : Codable { required public init(){} } /** * Represents a list of bank details */ public class BankverbindungListe : Codable { required public init(){} } /** * Represents a list of information on the opening hours. */ public class OeffnungszeitListe : Codable { required public init(){} } /** * Represents a list of comments. */ public class BemerkungListe : Codable { required public init(){} } /** * Represents Represents a central processing office. */ // @Api(Description="Represents Represents a central processing office.") public class Hauptstelle : Codable { /** * The Federal Tax Office (Bundesfinanzamt) identification number of the office. */ // @ApiMember(Description="The Federal Tax Office (Bundesfinanzamt) identification number of the office.") public var buFaNr:String? /** * The name of the office. */ // @ApiMember(Description="The name of the office.") public var name:String? required public init(){} } /** * 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.") public class EricFehlerCodeResponse : ServiceReponseBase { /** * The status code that the ERiC API function returns. */ // @ApiMember(Description="The status code that the ERiC API function returns.") public var statusCode:EricFehlerCode? /** * The status message that the ERiC API function returns. */ // @ApiMember(Description="The status message that the ERiC API function returns.") public var statusText:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case statusCode case statusText } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) statusCode = try container.decodeIfPresent(EricFehlerCode.self, forKey: .statusCode) statusText = try container.decodeIfPresent(String.self, forKey: .statusText) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if statusCode != nil { try container.encode(statusCode, forKey: .statusCode) } if statusText != nil { try container.encode(statusText, forKey: .statusText) } } }