@hostafrica/ha-sdk-typescript 1.1.3 → 1.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (194) hide show
  1. package/dist/apis/BillingApi.d.ts +45 -0
  2. package/dist/apis/BillingApi.js +122 -0
  3. package/dist/apis/DNSApi.d.ts +8 -8
  4. package/dist/apis/DNSApi.js +8 -8
  5. package/dist/apis/VPSManagementApi.d.ts +18 -3
  6. package/dist/apis/VPSManagementApi.js +49 -2
  7. package/dist/apis/index.d.ts +1 -0
  8. package/dist/apis/index.js +1 -0
  9. package/dist/esm/apis/BillingApi.d.ts +45 -0
  10. package/dist/esm/apis/BillingApi.js +118 -0
  11. package/dist/esm/apis/DNSApi.d.ts +8 -8
  12. package/dist/esm/apis/DNSApi.js +8 -8
  13. package/dist/esm/apis/VPSManagementApi.d.ts +18 -3
  14. package/dist/esm/apis/VPSManagementApi.js +50 -3
  15. package/dist/esm/apis/index.d.ts +1 -0
  16. package/dist/esm/apis/index.js +1 -0
  17. package/dist/esm/models/AddDnsRecordRequestContent.d.ts +22 -3
  18. package/dist/esm/models/AddDnsRecordRequestContent.js +8 -3
  19. package/dist/esm/models/DeleteDnsRecordRequestContent.d.ts +22 -3
  20. package/dist/esm/models/DeleteDnsRecordRequestContent.js +8 -3
  21. package/dist/esm/models/DnsBackend.d.ts +28 -0
  22. package/dist/esm/models/DnsBackend.js +46 -0
  23. package/dist/esm/models/DnsRecordMutationRecord.d.ts +3 -2
  24. package/dist/esm/models/DnsZoneInfo.d.ts +7 -0
  25. package/dist/esm/models/DnsZoneInfo.js +3 -0
  26. package/dist/esm/models/EditDnsRecordRequestContent.d.ts +22 -3
  27. package/dist/esm/models/EditDnsRecordRequestContent.js +8 -3
  28. package/dist/esm/models/EncryptedPasswordResponseData.d.ts +45 -0
  29. package/dist/esm/models/EncryptedPasswordResponseData.js +52 -0
  30. package/dist/esm/models/GetDnsZoneDetailsRequestContent.d.ts +7 -0
  31. package/dist/esm/models/GetDnsZoneDetailsRequestContent.js +3 -0
  32. package/dist/esm/models/GetEncryptedPasswordRequestContent.d.ts +38 -0
  33. package/dist/esm/models/GetEncryptedPasswordRequestContent.js +47 -0
  34. package/dist/esm/models/GetEncryptedPasswordResponseContent.d.ts +40 -0
  35. package/dist/esm/models/GetEncryptedPasswordResponseContent.js +49 -0
  36. package/dist/esm/models/GetInvoiceDetailsRequestContent.d.ts +32 -0
  37. package/dist/esm/models/GetInvoiceDetailsRequestContent.js +43 -0
  38. package/dist/esm/models/GetInvoiceDetailsResponseContent.d.ts +40 -0
  39. package/dist/esm/models/GetInvoiceDetailsResponseContent.js +49 -0
  40. package/dist/esm/models/GetInvoiceDetailsResponseData.d.ts +40 -0
  41. package/dist/esm/models/GetInvoiceDetailsResponseData.js +47 -0
  42. package/dist/esm/models/InvoiceDetails.d.ts +143 -0
  43. package/dist/esm/models/InvoiceDetails.js +112 -0
  44. package/dist/esm/models/InvoiceIssuedTo.d.ts +69 -0
  45. package/dist/esm/models/InvoiceIssuedTo.js +66 -0
  46. package/dist/esm/models/InvoiceIssuedToTax.d.ts +44 -0
  47. package/dist/esm/models/InvoiceIssuedToTax.js +51 -0
  48. package/dist/esm/models/InvoiceItem.d.ts +56 -0
  49. package/dist/esm/models/InvoiceItem.js +59 -0
  50. package/dist/esm/models/InvoiceSummary.d.ts +98 -0
  51. package/dist/esm/models/InvoiceSummary.js +83 -0
  52. package/dist/esm/models/InvoiceTransaction.d.ts +74 -0
  53. package/dist/esm/models/InvoiceTransaction.js +57 -0
  54. package/dist/esm/models/ListInvoicesResponseContent.d.ts +40 -0
  55. package/dist/esm/models/ListInvoicesResponseContent.js +49 -0
  56. package/dist/esm/models/ListInvoicesResponseData.d.ts +39 -0
  57. package/dist/esm/models/ListInvoicesResponseData.js +48 -0
  58. package/dist/esm/models/NoVncConsoleDetails.d.ts +19 -1
  59. package/dist/esm/models/NoVncConsoleDetails.js +7 -3
  60. package/dist/esm/models/PasswordEncryptionInfo.d.ts +50 -0
  61. package/dist/esm/models/PasswordEncryptionInfo.js +55 -0
  62. package/dist/esm/models/SelcomMetadata.d.ts +56 -0
  63. package/dist/esm/models/SelcomMetadata.js +59 -0
  64. package/dist/esm/models/VpsCredentials.d.ts +1 -1
  65. package/dist/esm/models/VpsDetailsResponse.d.ts +4 -3
  66. package/dist/esm/models/VpsDetailsResponse.js +3 -2
  67. package/dist/esm/models/VpsIpAddressDetail.d.ts +56 -0
  68. package/dist/esm/models/VpsIpAddressDetail.js +51 -0
  69. package/dist/esm/models/VpsVmInfo.d.ts +3 -3
  70. package/dist/esm/models/index.d.ts +18 -0
  71. package/dist/esm/models/index.js +18 -0
  72. package/dist/esm/retryablePaths.js +3 -0
  73. package/dist/models/AddDnsRecordRequestContent.d.ts +22 -3
  74. package/dist/models/AddDnsRecordRequestContent.js +8 -3
  75. package/dist/models/DeleteDnsRecordRequestContent.d.ts +22 -3
  76. package/dist/models/DeleteDnsRecordRequestContent.js +8 -3
  77. package/dist/models/DnsBackend.d.ts +28 -0
  78. package/dist/models/DnsBackend.js +54 -0
  79. package/dist/models/DnsRecordMutationRecord.d.ts +3 -2
  80. package/dist/models/DnsZoneInfo.d.ts +7 -0
  81. package/dist/models/DnsZoneInfo.js +3 -0
  82. package/dist/models/EditDnsRecordRequestContent.d.ts +22 -3
  83. package/dist/models/EditDnsRecordRequestContent.js +8 -3
  84. package/dist/models/EncryptedPasswordResponseData.d.ts +45 -0
  85. package/dist/models/EncryptedPasswordResponseData.js +59 -0
  86. package/dist/models/GetDnsZoneDetailsRequestContent.d.ts +7 -0
  87. package/dist/models/GetDnsZoneDetailsRequestContent.js +3 -0
  88. package/dist/models/GetEncryptedPasswordRequestContent.d.ts +38 -0
  89. package/dist/models/GetEncryptedPasswordRequestContent.js +54 -0
  90. package/dist/models/GetEncryptedPasswordResponseContent.d.ts +40 -0
  91. package/dist/models/GetEncryptedPasswordResponseContent.js +56 -0
  92. package/dist/models/GetInvoiceDetailsRequestContent.d.ts +32 -0
  93. package/dist/models/GetInvoiceDetailsRequestContent.js +50 -0
  94. package/dist/models/GetInvoiceDetailsResponseContent.d.ts +40 -0
  95. package/dist/models/GetInvoiceDetailsResponseContent.js +56 -0
  96. package/dist/models/GetInvoiceDetailsResponseData.d.ts +40 -0
  97. package/dist/models/GetInvoiceDetailsResponseData.js +54 -0
  98. package/dist/models/InvoiceDetails.d.ts +143 -0
  99. package/dist/models/InvoiceDetails.js +119 -0
  100. package/dist/models/InvoiceIssuedTo.d.ts +69 -0
  101. package/dist/models/InvoiceIssuedTo.js +73 -0
  102. package/dist/models/InvoiceIssuedToTax.d.ts +44 -0
  103. package/dist/models/InvoiceIssuedToTax.js +58 -0
  104. package/dist/models/InvoiceItem.d.ts +56 -0
  105. package/dist/models/InvoiceItem.js +66 -0
  106. package/dist/models/InvoiceSummary.d.ts +98 -0
  107. package/dist/models/InvoiceSummary.js +90 -0
  108. package/dist/models/InvoiceTransaction.d.ts +74 -0
  109. package/dist/models/InvoiceTransaction.js +64 -0
  110. package/dist/models/ListInvoicesResponseContent.d.ts +40 -0
  111. package/dist/models/ListInvoicesResponseContent.js +56 -0
  112. package/dist/models/ListInvoicesResponseData.d.ts +39 -0
  113. package/dist/models/ListInvoicesResponseData.js +55 -0
  114. package/dist/models/NoVncConsoleDetails.d.ts +19 -1
  115. package/dist/models/NoVncConsoleDetails.js +7 -3
  116. package/dist/models/PasswordEncryptionInfo.d.ts +50 -0
  117. package/dist/models/PasswordEncryptionInfo.js +62 -0
  118. package/dist/models/SelcomMetadata.d.ts +56 -0
  119. package/dist/models/SelcomMetadata.js +66 -0
  120. package/dist/models/VpsCredentials.d.ts +1 -1
  121. package/dist/models/VpsDetailsResponse.d.ts +4 -3
  122. package/dist/models/VpsDetailsResponse.js +3 -2
  123. package/dist/models/VpsIpAddressDetail.d.ts +56 -0
  124. package/dist/models/VpsIpAddressDetail.js +58 -0
  125. package/dist/models/VpsVmInfo.d.ts +3 -3
  126. package/dist/models/index.d.ts +18 -0
  127. package/dist/models/index.js +18 -0
  128. package/dist/retryablePaths.js +3 -0
  129. package/dist.zip +0 -0
  130. package/docs/AddDnsRecordRequestContent.md +6 -0
  131. package/docs/BillingApi.md +159 -0
  132. package/docs/DNSApi.md +4 -4
  133. package/docs/DeleteDnsRecordRequestContent.md +6 -0
  134. package/docs/DnsBackend.md +33 -0
  135. package/docs/DnsRecordMutationRecord.md +1 -1
  136. package/docs/DnsZoneInfo.md +2 -0
  137. package/docs/EditDnsRecordRequestContent.md +6 -0
  138. package/docs/EncryptedPasswordResponseData.md +39 -0
  139. package/docs/GetDnsZoneDetailsRequestContent.md +2 -0
  140. package/docs/GetEncryptedPasswordRequestContent.md +36 -0
  141. package/docs/GetEncryptedPasswordResponseContent.md +36 -0
  142. package/docs/GetInvoiceDetailsRequestContent.md +34 -0
  143. package/docs/GetInvoiceDetailsResponseContent.md +36 -0
  144. package/docs/GetInvoiceDetailsResponseData.md +37 -0
  145. package/docs/InvoiceDetails.md +71 -0
  146. package/docs/InvoiceIssuedTo.md +47 -0
  147. package/docs/InvoiceIssuedToTax.md +39 -0
  148. package/docs/InvoiceItem.md +43 -0
  149. package/docs/InvoiceSummary.md +57 -0
  150. package/docs/InvoiceTransaction.md +49 -0
  151. package/docs/ListInvoicesResponseContent.md +36 -0
  152. package/docs/ListInvoicesResponseData.md +37 -0
  153. package/docs/NoVncConsoleDetails.md +6 -0
  154. package/docs/PasswordEncryptionInfo.md +41 -0
  155. package/docs/SelcomMetadata.md +43 -0
  156. package/docs/VPSManagementApi.md +81 -1
  157. package/docs/VpsDetailsResponse.md +1 -1
  158. package/docs/VpsIpAddressDetail.md +43 -0
  159. package/docs/VpsVmInfo.md +1 -1
  160. package/package.json +1 -1
  161. package/src/apis/BillingApi.ts +164 -0
  162. package/src/apis/DNSApi.ts +8 -8
  163. package/src/apis/VPSManagementApi.ts +67 -2
  164. package/src/apis/index.ts +1 -0
  165. package/src/models/AddDnsRecordRequestContent.ts +37 -5
  166. package/src/models/DeleteDnsRecordRequestContent.ts +37 -5
  167. package/src/models/DnsBackend.ts +56 -0
  168. package/src/models/DnsRecordMutationRecord.ts +3 -2
  169. package/src/models/DnsZoneInfo.ts +17 -0
  170. package/src/models/EditDnsRecordRequestContent.ts +37 -5
  171. package/src/models/EncryptedPasswordResponseData.ts +92 -0
  172. package/src/models/GetDnsZoneDetailsRequestContent.ts +18 -0
  173. package/src/models/GetEncryptedPasswordRequestContent.ts +75 -0
  174. package/src/models/GetEncryptedPasswordResponseContent.ts +92 -0
  175. package/src/models/GetInvoiceDetailsRequestContent.ts +66 -0
  176. package/src/models/GetInvoiceDetailsResponseContent.ts +92 -0
  177. package/src/models/GetInvoiceDetailsResponseData.ts +89 -0
  178. package/src/models/InvoiceDetails.ts +247 -0
  179. package/src/models/InvoiceIssuedTo.ts +127 -0
  180. package/src/models/InvoiceIssuedToTax.ts +84 -0
  181. package/src/models/InvoiceItem.ts +102 -0
  182. package/src/models/InvoiceSummary.ts +163 -0
  183. package/src/models/InvoiceTransaction.ts +122 -0
  184. package/src/models/ListInvoicesResponseContent.ts +92 -0
  185. package/src/models/ListInvoicesResponseData.ts +83 -0
  186. package/src/models/NoVncConsoleDetails.ts +26 -3
  187. package/src/models/PasswordEncryptionInfo.ts +93 -0
  188. package/src/models/SelcomMetadata.ts +102 -0
  189. package/src/models/VpsCredentials.ts +1 -1
  190. package/src/models/VpsDetailsResponse.ts +12 -5
  191. package/src/models/VpsIpAddressDetail.ts +98 -0
  192. package/src/models/VpsVmInfo.ts +3 -3
  193. package/src/models/index.ts +18 -0
  194. package/src/retryablePaths.ts +3 -0
@@ -0,0 +1,143 @@
1
+ /**
2
+ * HostAfricaApi
3
+ * HostAfrica API
4
+ *
5
+ * The version of the OpenAPI document: 1.1.0 - 2026-07-16
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { InvoiceItem } from './InvoiceItem.js';
13
+ import type { InvoiceTransaction } from './InvoiceTransaction.js';
14
+ import type { InvoiceIssuedTo } from './InvoiceIssuedTo.js';
15
+ /**
16
+ * Full invoice details
17
+ * @export
18
+ * @interface InvoiceDetails
19
+ */
20
+ export interface InvoiceDetails {
21
+ /**
22
+ * Unique invoice identifier - must be sent as a string
23
+ * @type {string}
24
+ * @memberof InvoiceDetails
25
+ */
26
+ invoiceId: string;
27
+ /**
28
+ * Human-readable invoice number when assigned
29
+ * @type {string}
30
+ * @memberof InvoiceDetails
31
+ */
32
+ invoiceNumber: string;
33
+ /**
34
+ *
35
+ * @type {InvoiceIssuedTo}
36
+ * @memberof InvoiceDetails
37
+ */
38
+ issuedTo: InvoiceIssuedTo;
39
+ /**
40
+ * Invoice issue date (ISO 8601)
41
+ * @type {string}
42
+ * @memberof InvoiceDetails
43
+ */
44
+ date: string;
45
+ /**
46
+ * Invoice due date (ISO 8601)
47
+ * @type {string}
48
+ * @memberof InvoiceDetails
49
+ */
50
+ dueDate: string;
51
+ /**
52
+ * Date the invoice was paid (ISO 8601), if paid
53
+ * @type {string}
54
+ * @memberof InvoiceDetails
55
+ */
56
+ datePaid?: string;
57
+ /**
58
+ * Invoice subtotal excluding tax as a decimal string
59
+ * @type {string}
60
+ * @memberof InvoiceDetails
61
+ */
62
+ subtotal: string;
63
+ /**
64
+ * Credit applied as a decimal string
65
+ * @type {string}
66
+ * @memberof InvoiceDetails
67
+ */
68
+ credit: string;
69
+ /**
70
+ * Primary tax amount as a decimal string
71
+ * @type {string}
72
+ * @memberof InvoiceDetails
73
+ */
74
+ tax: string;
75
+ /**
76
+ * Secondary tax amount as a decimal string. Omitted when a second tax is not configured.
77
+ * @type {string}
78
+ * @memberof InvoiceDetails
79
+ */
80
+ tax2?: string;
81
+ /**
82
+ * Invoice total including tax as a decimal string
83
+ * @type {string}
84
+ * @memberof InvoiceDetails
85
+ */
86
+ total: string;
87
+ /**
88
+ * Primary tax rate as a decimal string
89
+ * @type {string}
90
+ * @memberof InvoiceDetails
91
+ */
92
+ taxRate: string;
93
+ /**
94
+ * Secondary tax rate as a decimal string. Omitted when a second tax is not configured.
95
+ * @type {string}
96
+ * @memberof InvoiceDetails
97
+ */
98
+ taxRate2?: string;
99
+ /**
100
+ * Invoice status (e.g. Paid, Unpaid, Cancelled, Refunded)
101
+ * @type {string}
102
+ * @memberof InvoiceDetails
103
+ */
104
+ status: string;
105
+ /**
106
+ * Payment method identifier
107
+ * @type {string}
108
+ * @memberof InvoiceDetails
109
+ */
110
+ paymentMethod: string;
111
+ /**
112
+ * Amount still due as a decimal string
113
+ * @type {string}
114
+ * @memberof InvoiceDetails
115
+ */
116
+ totalDue: string;
117
+ /**
118
+ * Invoice notes
119
+ * @type {string}
120
+ * @memberof InvoiceDetails
121
+ */
122
+ notes: string;
123
+ /**
124
+ * Invoice line items
125
+ * @type {Array<InvoiceItem>}
126
+ * @memberof InvoiceDetails
127
+ */
128
+ items: Array<InvoiceItem>;
129
+ /**
130
+ * Payment and refund transactions on the invoice
131
+ * @type {Array<InvoiceTransaction>}
132
+ * @memberof InvoiceDetails
133
+ */
134
+ transactions: Array<InvoiceTransaction>;
135
+ }
136
+ /**
137
+ * Check if a given object implements the InvoiceDetails interface.
138
+ */
139
+ export declare function instanceOfInvoiceDetails(value: object): value is InvoiceDetails;
140
+ export declare function InvoiceDetailsFromJSON(json: any): InvoiceDetails;
141
+ export declare function InvoiceDetailsFromJSONTyped(json: any, ignoreDiscriminator: boolean): InvoiceDetails;
142
+ export declare function InvoiceDetailsToJSON(json: any): InvoiceDetails;
143
+ export declare function InvoiceDetailsToJSONTyped(value?: InvoiceDetails | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * HostAfricaApi
6
+ * HostAfrica API
7
+ *
8
+ * The version of the OpenAPI document: 1.1.0 - 2026-07-16
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.instanceOfInvoiceDetails = instanceOfInvoiceDetails;
17
+ exports.InvoiceDetailsFromJSON = InvoiceDetailsFromJSON;
18
+ exports.InvoiceDetailsFromJSONTyped = InvoiceDetailsFromJSONTyped;
19
+ exports.InvoiceDetailsToJSON = InvoiceDetailsToJSON;
20
+ exports.InvoiceDetailsToJSONTyped = InvoiceDetailsToJSONTyped;
21
+ const InvoiceItem_js_1 = require("./InvoiceItem.js");
22
+ const InvoiceTransaction_js_1 = require("./InvoiceTransaction.js");
23
+ const InvoiceIssuedTo_js_1 = require("./InvoiceIssuedTo.js");
24
+ /**
25
+ * Check if a given object implements the InvoiceDetails interface.
26
+ */
27
+ function instanceOfInvoiceDetails(value) {
28
+ if (!('invoiceId' in value) || value['invoiceId'] === undefined)
29
+ return false;
30
+ if (!('invoiceNumber' in value) || value['invoiceNumber'] === undefined)
31
+ return false;
32
+ if (!('issuedTo' in value) || value['issuedTo'] === undefined)
33
+ return false;
34
+ if (!('date' in value) || value['date'] === undefined)
35
+ return false;
36
+ if (!('dueDate' in value) || value['dueDate'] === undefined)
37
+ return false;
38
+ if (!('subtotal' in value) || value['subtotal'] === undefined)
39
+ return false;
40
+ if (!('credit' in value) || value['credit'] === undefined)
41
+ return false;
42
+ if (!('tax' in value) || value['tax'] === undefined)
43
+ return false;
44
+ if (!('total' in value) || value['total'] === undefined)
45
+ return false;
46
+ if (!('taxRate' in value) || value['taxRate'] === undefined)
47
+ return false;
48
+ if (!('status' in value) || value['status'] === undefined)
49
+ return false;
50
+ if (!('paymentMethod' in value) || value['paymentMethod'] === undefined)
51
+ return false;
52
+ if (!('totalDue' in value) || value['totalDue'] === undefined)
53
+ return false;
54
+ if (!('notes' in value) || value['notes'] === undefined)
55
+ return false;
56
+ if (!('items' in value) || value['items'] === undefined)
57
+ return false;
58
+ if (!('transactions' in value) || value['transactions'] === undefined)
59
+ return false;
60
+ return true;
61
+ }
62
+ function InvoiceDetailsFromJSON(json) {
63
+ return InvoiceDetailsFromJSONTyped(json, false);
64
+ }
65
+ function InvoiceDetailsFromJSONTyped(json, ignoreDiscriminator) {
66
+ if (json == null) {
67
+ return json;
68
+ }
69
+ return {
70
+ 'invoiceId': json['invoice_id'],
71
+ 'invoiceNumber': json['invoice_number'],
72
+ 'issuedTo': (0, InvoiceIssuedTo_js_1.InvoiceIssuedToFromJSON)(json['issued_to']),
73
+ 'date': json['date'],
74
+ 'dueDate': json['due_date'],
75
+ 'datePaid': json['date_paid'] == null ? undefined : json['date_paid'],
76
+ 'subtotal': json['subtotal'],
77
+ 'credit': json['credit'],
78
+ 'tax': json['tax'],
79
+ 'tax2': json['tax2'] == null ? undefined : json['tax2'],
80
+ 'total': json['total'],
81
+ 'taxRate': json['tax_rate'],
82
+ 'taxRate2': json['tax_rate2'] == null ? undefined : json['tax_rate2'],
83
+ 'status': json['status'],
84
+ 'paymentMethod': json['payment_method'],
85
+ 'totalDue': json['total_due'],
86
+ 'notes': json['notes'],
87
+ 'items': (json['items'].map(InvoiceItem_js_1.InvoiceItemFromJSON)),
88
+ 'transactions': (json['transactions'].map(InvoiceTransaction_js_1.InvoiceTransactionFromJSON)),
89
+ };
90
+ }
91
+ function InvoiceDetailsToJSON(json) {
92
+ return InvoiceDetailsToJSONTyped(json, false);
93
+ }
94
+ function InvoiceDetailsToJSONTyped(value, ignoreDiscriminator = false) {
95
+ if (value == null) {
96
+ return value;
97
+ }
98
+ return {
99
+ 'invoice_id': value['invoiceId'],
100
+ 'invoice_number': value['invoiceNumber'],
101
+ 'issued_to': (0, InvoiceIssuedTo_js_1.InvoiceIssuedToToJSON)(value['issuedTo']),
102
+ 'date': value['date'],
103
+ 'due_date': value['dueDate'],
104
+ 'date_paid': value['datePaid'],
105
+ 'subtotal': value['subtotal'],
106
+ 'credit': value['credit'],
107
+ 'tax': value['tax'],
108
+ 'tax2': value['tax2'],
109
+ 'total': value['total'],
110
+ 'tax_rate': value['taxRate'],
111
+ 'tax_rate2': value['taxRate2'],
112
+ 'status': value['status'],
113
+ 'payment_method': value['paymentMethod'],
114
+ 'total_due': value['totalDue'],
115
+ 'notes': value['notes'],
116
+ 'items': (value['items'].map(InvoiceItem_js_1.InvoiceItemToJSON)),
117
+ 'transactions': (value['transactions'].map(InvoiceTransaction_js_1.InvoiceTransactionToJSON)),
118
+ };
119
+ }
@@ -0,0 +1,69 @@
1
+ /**
2
+ * HostAfricaApi
3
+ * HostAfrica API
4
+ *
5
+ * The version of the OpenAPI document: 1.1.0 - 2026-07-16
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { InvoiceIssuedToTax } from './InvoiceIssuedToTax.js';
13
+ /**
14
+ * Recipient / billed-to details on an invoice
15
+ * @export
16
+ * @interface InvoiceIssuedTo
17
+ */
18
+ export interface InvoiceIssuedTo {
19
+ /**
20
+ * Company name on the invoice
21
+ * @type {string}
22
+ * @memberof InvoiceIssuedTo
23
+ */
24
+ companyName: string;
25
+ /**
26
+ * Full name of the billed contact
27
+ * @type {string}
28
+ * @memberof InvoiceIssuedTo
29
+ */
30
+ fullName: string;
31
+ /**
32
+ * Street address
33
+ * @type {string}
34
+ * @memberof InvoiceIssuedTo
35
+ */
36
+ address: string;
37
+ /**
38
+ * City, state/province, and postal code
39
+ * @type {string}
40
+ * @memberof InvoiceIssuedTo
41
+ */
42
+ cityStateZip: string;
43
+ /**
44
+ * ISO country code
45
+ * @type {string}
46
+ * @memberof InvoiceIssuedTo
47
+ */
48
+ country: string;
49
+ /**
50
+ * Country display name
51
+ * @type {string}
52
+ * @memberof InvoiceIssuedTo
53
+ */
54
+ countryName: string;
55
+ /**
56
+ *
57
+ * @type {InvoiceIssuedToTax}
58
+ * @memberof InvoiceIssuedTo
59
+ */
60
+ tax?: InvoiceIssuedToTax;
61
+ }
62
+ /**
63
+ * Check if a given object implements the InvoiceIssuedTo interface.
64
+ */
65
+ export declare function instanceOfInvoiceIssuedTo(value: object): value is InvoiceIssuedTo;
66
+ export declare function InvoiceIssuedToFromJSON(json: any): InvoiceIssuedTo;
67
+ export declare function InvoiceIssuedToFromJSONTyped(json: any, ignoreDiscriminator: boolean): InvoiceIssuedTo;
68
+ export declare function InvoiceIssuedToToJSON(json: any): InvoiceIssuedTo;
69
+ export declare function InvoiceIssuedToToJSONTyped(value?: InvoiceIssuedTo | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * HostAfricaApi
6
+ * HostAfrica API
7
+ *
8
+ * The version of the OpenAPI document: 1.1.0 - 2026-07-16
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.instanceOfInvoiceIssuedTo = instanceOfInvoiceIssuedTo;
17
+ exports.InvoiceIssuedToFromJSON = InvoiceIssuedToFromJSON;
18
+ exports.InvoiceIssuedToFromJSONTyped = InvoiceIssuedToFromJSONTyped;
19
+ exports.InvoiceIssuedToToJSON = InvoiceIssuedToToJSON;
20
+ exports.InvoiceIssuedToToJSONTyped = InvoiceIssuedToToJSONTyped;
21
+ const InvoiceIssuedToTax_js_1 = require("./InvoiceIssuedToTax.js");
22
+ /**
23
+ * Check if a given object implements the InvoiceIssuedTo interface.
24
+ */
25
+ function instanceOfInvoiceIssuedTo(value) {
26
+ if (!('companyName' in value) || value['companyName'] === undefined)
27
+ return false;
28
+ if (!('fullName' in value) || value['fullName'] === undefined)
29
+ return false;
30
+ if (!('address' in value) || value['address'] === undefined)
31
+ return false;
32
+ if (!('cityStateZip' in value) || value['cityStateZip'] === undefined)
33
+ return false;
34
+ if (!('country' in value) || value['country'] === undefined)
35
+ return false;
36
+ if (!('countryName' in value) || value['countryName'] === undefined)
37
+ return false;
38
+ return true;
39
+ }
40
+ function InvoiceIssuedToFromJSON(json) {
41
+ return InvoiceIssuedToFromJSONTyped(json, false);
42
+ }
43
+ function InvoiceIssuedToFromJSONTyped(json, ignoreDiscriminator) {
44
+ if (json == null) {
45
+ return json;
46
+ }
47
+ return {
48
+ 'companyName': json['company_name'],
49
+ 'fullName': json['full_name'],
50
+ 'address': json['address'],
51
+ 'cityStateZip': json['city_state_zip'],
52
+ 'country': json['country'],
53
+ 'countryName': json['country_name'],
54
+ 'tax': json['tax'] == null ? undefined : (0, InvoiceIssuedToTax_js_1.InvoiceIssuedToTaxFromJSON)(json['tax']),
55
+ };
56
+ }
57
+ function InvoiceIssuedToToJSON(json) {
58
+ return InvoiceIssuedToToJSONTyped(json, false);
59
+ }
60
+ function InvoiceIssuedToToJSONTyped(value, ignoreDiscriminator = false) {
61
+ if (value == null) {
62
+ return value;
63
+ }
64
+ return {
65
+ 'company_name': value['companyName'],
66
+ 'full_name': value['fullName'],
67
+ 'address': value['address'],
68
+ 'city_state_zip': value['cityStateZip'],
69
+ 'country': value['country'],
70
+ 'country_name': value['countryName'],
71
+ 'tax': (0, InvoiceIssuedToTax_js_1.InvoiceIssuedToTaxToJSON)(value['tax']),
72
+ };
73
+ }
@@ -0,0 +1,44 @@
1
+ /**
2
+ * HostAfricaApi
3
+ * HostAfrica API
4
+ *
5
+ * The version of the OpenAPI document: 1.1.0 - 2026-07-16
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * Tax applied to the invoice recipient
14
+ * @export
15
+ * @interface InvoiceIssuedToTax
16
+ */
17
+ export interface InvoiceIssuedToTax {
18
+ /**
19
+ * Tax name or region label (e.g. SA)
20
+ * @type {string}
21
+ * @memberof InvoiceIssuedToTax
22
+ */
23
+ name: string;
24
+ /**
25
+ * Tax rate percentage
26
+ * @type {number}
27
+ * @memberof InvoiceIssuedToTax
28
+ */
29
+ rate: number;
30
+ /**
31
+ * Tax level
32
+ * @type {number}
33
+ * @memberof InvoiceIssuedToTax
34
+ */
35
+ level: number;
36
+ }
37
+ /**
38
+ * Check if a given object implements the InvoiceIssuedToTax interface.
39
+ */
40
+ export declare function instanceOfInvoiceIssuedToTax(value: object): value is InvoiceIssuedToTax;
41
+ export declare function InvoiceIssuedToTaxFromJSON(json: any): InvoiceIssuedToTax;
42
+ export declare function InvoiceIssuedToTaxFromJSONTyped(json: any, ignoreDiscriminator: boolean): InvoiceIssuedToTax;
43
+ export declare function InvoiceIssuedToTaxToJSON(json: any): InvoiceIssuedToTax;
44
+ export declare function InvoiceIssuedToTaxToJSONTyped(value?: InvoiceIssuedToTax | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * HostAfricaApi
6
+ * HostAfrica API
7
+ *
8
+ * The version of the OpenAPI document: 1.1.0 - 2026-07-16
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.instanceOfInvoiceIssuedToTax = instanceOfInvoiceIssuedToTax;
17
+ exports.InvoiceIssuedToTaxFromJSON = InvoiceIssuedToTaxFromJSON;
18
+ exports.InvoiceIssuedToTaxFromJSONTyped = InvoiceIssuedToTaxFromJSONTyped;
19
+ exports.InvoiceIssuedToTaxToJSON = InvoiceIssuedToTaxToJSON;
20
+ exports.InvoiceIssuedToTaxToJSONTyped = InvoiceIssuedToTaxToJSONTyped;
21
+ /**
22
+ * Check if a given object implements the InvoiceIssuedToTax interface.
23
+ */
24
+ function instanceOfInvoiceIssuedToTax(value) {
25
+ if (!('name' in value) || value['name'] === undefined)
26
+ return false;
27
+ if (!('rate' in value) || value['rate'] === undefined)
28
+ return false;
29
+ if (!('level' in value) || value['level'] === undefined)
30
+ return false;
31
+ return true;
32
+ }
33
+ function InvoiceIssuedToTaxFromJSON(json) {
34
+ return InvoiceIssuedToTaxFromJSONTyped(json, false);
35
+ }
36
+ function InvoiceIssuedToTaxFromJSONTyped(json, ignoreDiscriminator) {
37
+ if (json == null) {
38
+ return json;
39
+ }
40
+ return {
41
+ 'name': json['name'],
42
+ 'rate': json['rate'],
43
+ 'level': json['level'],
44
+ };
45
+ }
46
+ function InvoiceIssuedToTaxToJSON(json) {
47
+ return InvoiceIssuedToTaxToJSONTyped(json, false);
48
+ }
49
+ function InvoiceIssuedToTaxToJSONTyped(value, ignoreDiscriminator = false) {
50
+ if (value == null) {
51
+ return value;
52
+ }
53
+ return {
54
+ 'name': value['name'],
55
+ 'rate': value['rate'],
56
+ 'level': value['level'],
57
+ };
58
+ }
@@ -0,0 +1,56 @@
1
+ /**
2
+ * HostAfricaApi
3
+ * HostAfrica API
4
+ *
5
+ * The version of the OpenAPI document: 1.1.0 - 2026-07-16
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * A single invoice line item
14
+ * @export
15
+ * @interface InvoiceItem
16
+ */
17
+ export interface InvoiceItem {
18
+ /**
19
+ * Line item identifier
20
+ * @type {number}
21
+ * @memberof InvoiceItem
22
+ */
23
+ id: number;
24
+ /**
25
+ * Line item type (e.g. Hosting)
26
+ * @type {string}
27
+ * @memberof InvoiceItem
28
+ */
29
+ type: string;
30
+ /**
31
+ * Line item description
32
+ * @type {string}
33
+ * @memberof InvoiceItem
34
+ */
35
+ description: string;
36
+ /**
37
+ * Line item amount as a decimal string
38
+ * @type {string}
39
+ * @memberof InvoiceItem
40
+ */
41
+ amount: string;
42
+ /**
43
+ * Whether the line item is taxed (1 = taxed, 0 = not taxed)
44
+ * @type {number}
45
+ * @memberof InvoiceItem
46
+ */
47
+ taxed: number;
48
+ }
49
+ /**
50
+ * Check if a given object implements the InvoiceItem interface.
51
+ */
52
+ export declare function instanceOfInvoiceItem(value: object): value is InvoiceItem;
53
+ export declare function InvoiceItemFromJSON(json: any): InvoiceItem;
54
+ export declare function InvoiceItemFromJSONTyped(json: any, ignoreDiscriminator: boolean): InvoiceItem;
55
+ export declare function InvoiceItemToJSON(json: any): InvoiceItem;
56
+ export declare function InvoiceItemToJSONTyped(value?: InvoiceItem | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * HostAfricaApi
6
+ * HostAfrica API
7
+ *
8
+ * The version of the OpenAPI document: 1.1.0 - 2026-07-16
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.instanceOfInvoiceItem = instanceOfInvoiceItem;
17
+ exports.InvoiceItemFromJSON = InvoiceItemFromJSON;
18
+ exports.InvoiceItemFromJSONTyped = InvoiceItemFromJSONTyped;
19
+ exports.InvoiceItemToJSON = InvoiceItemToJSON;
20
+ exports.InvoiceItemToJSONTyped = InvoiceItemToJSONTyped;
21
+ /**
22
+ * Check if a given object implements the InvoiceItem interface.
23
+ */
24
+ function instanceOfInvoiceItem(value) {
25
+ if (!('id' in value) || value['id'] === undefined)
26
+ return false;
27
+ if (!('type' in value) || value['type'] === undefined)
28
+ return false;
29
+ if (!('description' in value) || value['description'] === undefined)
30
+ return false;
31
+ if (!('amount' in value) || value['amount'] === undefined)
32
+ return false;
33
+ if (!('taxed' in value) || value['taxed'] === undefined)
34
+ return false;
35
+ return true;
36
+ }
37
+ function InvoiceItemFromJSON(json) {
38
+ return InvoiceItemFromJSONTyped(json, false);
39
+ }
40
+ function InvoiceItemFromJSONTyped(json, ignoreDiscriminator) {
41
+ if (json == null) {
42
+ return json;
43
+ }
44
+ return {
45
+ 'id': json['id'],
46
+ 'type': json['type'],
47
+ 'description': json['description'],
48
+ 'amount': json['amount'],
49
+ 'taxed': json['taxed'],
50
+ };
51
+ }
52
+ function InvoiceItemToJSON(json) {
53
+ return InvoiceItemToJSONTyped(json, false);
54
+ }
55
+ function InvoiceItemToJSONTyped(value, ignoreDiscriminator = false) {
56
+ if (value == null) {
57
+ return value;
58
+ }
59
+ return {
60
+ 'id': value['id'],
61
+ 'type': value['type'],
62
+ 'description': value['description'],
63
+ 'amount': value['amount'],
64
+ 'taxed': value['taxed'],
65
+ };
66
+ }