@hostafrica/ha-sdk-typescript 1.1.2 → 1.1.3

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 (279) hide show
  1. package/dist/apis/DNSApi.d.ts +85 -1
  2. package/dist/apis/DNSApi.js +272 -0
  3. package/dist/apis/DomainsApi.d.ts +46 -1
  4. package/dist/apis/DomainsApi.js +141 -0
  5. package/dist/apis/ServiceManagementApi.d.ts +4 -4
  6. package/dist/apis/ServiceManagementApi.js +4 -4
  7. package/dist/apis/SnapshotsApi.d.ts +8 -8
  8. package/dist/apis/SnapshotsApi.js +8 -8
  9. package/dist/esm/apis/DNSApi.d.ts +85 -1
  10. package/dist/esm/apis/DNSApi.js +273 -1
  11. package/dist/esm/apis/DomainsApi.d.ts +46 -1
  12. package/dist/esm/apis/DomainsApi.js +142 -1
  13. package/dist/esm/apis/ServiceManagementApi.d.ts +4 -4
  14. package/dist/esm/apis/ServiceManagementApi.js +4 -4
  15. package/dist/esm/apis/SnapshotsApi.d.ts +8 -8
  16. package/dist/esm/apis/SnapshotsApi.js +8 -8
  17. package/dist/esm/models/AddDnsRecordRequestContent.d.ts +45 -0
  18. package/dist/esm/models/AddDnsRecordRequestContent.js +50 -0
  19. package/dist/esm/models/AddDnsRecordResponseContent.d.ts +40 -0
  20. package/dist/esm/models/AddDnsRecordResponseContent.js +49 -0
  21. package/dist/esm/models/DeleteDnsRecordRequestContent.d.ts +45 -0
  22. package/dist/esm/models/DeleteDnsRecordRequestContent.js +50 -0
  23. package/dist/esm/models/DeleteDnsRecordResponseContent.d.ts +40 -0
  24. package/dist/esm/models/DeleteDnsRecordResponseContent.js +49 -0
  25. package/dist/esm/models/DnsCreateCandidateInfo.d.ts +56 -0
  26. package/dist/esm/models/DnsCreateCandidateInfo.js +49 -0
  27. package/dist/esm/models/DnsRecordInfo.d.ts +89 -0
  28. package/dist/esm/models/DnsRecordInfo.js +55 -0
  29. package/dist/esm/models/DnsRecordMutationData.d.ts +39 -0
  30. package/dist/esm/models/DnsRecordMutationData.js +46 -0
  31. package/dist/esm/models/DnsRecordMutationRecord.d.ts +77 -0
  32. package/dist/esm/models/DnsRecordMutationRecord.js +55 -0
  33. package/dist/esm/models/DnsZoneInfo.d.ts +81 -0
  34. package/dist/esm/models/DnsZoneInfo.js +60 -0
  35. package/dist/esm/models/DnssecRecordInfo.d.ts +50 -0
  36. package/dist/esm/models/DnssecRecordInfo.js +55 -0
  37. package/dist/esm/models/DomainAddonFeature.d.ts +56 -0
  38. package/dist/esm/models/DomainAddonFeature.js +57 -0
  39. package/dist/esm/models/DomainAvailableFeatures.d.ts +69 -0
  40. package/dist/esm/models/DomainAvailableFeatures.js +54 -0
  41. package/dist/esm/models/DomainContactSourceType.d.ts +26 -0
  42. package/dist/esm/models/DomainContactSourceType.js +44 -0
  43. package/dist/esm/models/DomainContactUpdate.d.ts +47 -0
  44. package/dist/esm/models/DomainContactUpdate.js +48 -0
  45. package/dist/esm/models/DomainContactUpdates.d.ts +51 -0
  46. package/dist/esm/models/DomainContactUpdates.js +48 -0
  47. package/dist/esm/models/DomainContacts.d.ts +58 -0
  48. package/dist/esm/models/DomainContacts.js +47 -0
  49. package/dist/esm/models/DomainDetail.d.ts +251 -0
  50. package/dist/esm/models/DomainDetail.js +136 -0
  51. package/dist/esm/models/DomainExpiryCountdown.d.ts +44 -0
  52. package/dist/esm/models/DomainExpiryCountdown.js +51 -0
  53. package/dist/esm/models/DomainHostingLink.d.ts +4 -4
  54. package/dist/esm/models/DomainHostingLink.js +2 -6
  55. package/dist/esm/models/DomainInfo.d.ts +6 -0
  56. package/dist/esm/models/DomainInfo.js +2 -0
  57. package/dist/esm/models/DomainNameservers.d.ts +56 -0
  58. package/dist/esm/models/DomainNameservers.js +49 -0
  59. package/dist/esm/models/EditDnsRecordRequestContent.d.ts +45 -0
  60. package/dist/esm/models/EditDnsRecordRequestContent.js +50 -0
  61. package/dist/esm/models/EditDnsRecordResponseContent.d.ts +40 -0
  62. package/dist/esm/models/EditDnsRecordResponseContent.js +49 -0
  63. package/dist/esm/models/GetDnsZoneDetailsData.d.ts +81 -0
  64. package/dist/esm/models/GetDnsZoneDetailsData.js +60 -0
  65. package/dist/esm/models/GetDnsZoneDetailsRequestContent.d.ts +32 -0
  66. package/dist/esm/models/GetDnsZoneDetailsRequestContent.js +43 -0
  67. package/dist/esm/models/GetDnsZoneDetailsResponseContent.d.ts +40 -0
  68. package/dist/esm/models/GetDnsZoneDetailsResponseContent.js +49 -0
  69. package/dist/esm/models/GetDomainContactsData.d.ts +4 -3
  70. package/dist/esm/models/GetDomainContactsData.js +3 -2
  71. package/dist/esm/models/GetDomainData.d.ts +3 -3
  72. package/dist/esm/models/GetDomainData.js +3 -3
  73. package/dist/esm/models/ListDnsCreateCandidatesData.d.ts +45 -0
  74. package/dist/esm/models/ListDnsCreateCandidatesData.js +52 -0
  75. package/dist/esm/models/ListDnsCreateCandidatesResponseContent.d.ts +40 -0
  76. package/dist/esm/models/ListDnsCreateCandidatesResponseContent.js +49 -0
  77. package/dist/esm/models/ListDnsZonesData.d.ts +45 -0
  78. package/dist/esm/models/ListDnsZonesData.js +52 -0
  79. package/dist/esm/models/ListDnsZonesResponseContent.d.ts +40 -0
  80. package/dist/esm/models/ListDnsZonesResponseContent.js +49 -0
  81. package/dist/esm/models/ListDnssecRecordsData.d.ts +39 -0
  82. package/dist/esm/models/ListDnssecRecordsData.js +48 -0
  83. package/dist/esm/models/ListDnssecRecordsRequestContent.d.ts +32 -0
  84. package/dist/esm/models/ListDnssecRecordsRequestContent.js +43 -0
  85. package/dist/esm/models/ListDnssecRecordsResponseContent.d.ts +40 -0
  86. package/dist/esm/models/ListDnssecRecordsResponseContent.js +49 -0
  87. package/dist/esm/models/UpdateDomainContactsData.d.ts +38 -0
  88. package/dist/esm/models/UpdateDomainContactsData.js +45 -0
  89. package/dist/esm/models/UpdateDomainContactsRequestContent.d.ts +39 -0
  90. package/dist/esm/models/UpdateDomainContactsRequestContent.js +48 -0
  91. package/dist/esm/models/UpdateDomainContactsResponseContent.d.ts +40 -0
  92. package/dist/esm/models/UpdateDomainContactsResponseContent.js +49 -0
  93. package/dist/esm/models/UpdateDomainNameserversData.d.ts +45 -0
  94. package/dist/esm/models/UpdateDomainNameserversData.js +48 -0
  95. package/dist/esm/models/UpdateDomainNameserversRequestContent.d.ts +62 -0
  96. package/dist/esm/models/UpdateDomainNameserversRequestContent.js +57 -0
  97. package/dist/esm/models/UpdateDomainNameserversResponseContent.d.ts +40 -0
  98. package/dist/esm/models/UpdateDomainNameserversResponseContent.js +49 -0
  99. package/dist/esm/models/index.d.ts +37 -0
  100. package/dist/esm/models/index.js +37 -0
  101. package/dist/esm/retryablePaths.js +4 -0
  102. package/dist/models/AddDnsRecordRequestContent.d.ts +45 -0
  103. package/dist/models/AddDnsRecordRequestContent.js +57 -0
  104. package/dist/models/AddDnsRecordResponseContent.d.ts +40 -0
  105. package/dist/models/AddDnsRecordResponseContent.js +56 -0
  106. package/dist/models/DeleteDnsRecordRequestContent.d.ts +45 -0
  107. package/dist/models/DeleteDnsRecordRequestContent.js +57 -0
  108. package/dist/models/DeleteDnsRecordResponseContent.d.ts +40 -0
  109. package/dist/models/DeleteDnsRecordResponseContent.js +56 -0
  110. package/dist/models/DnsCreateCandidateInfo.d.ts +56 -0
  111. package/dist/models/DnsCreateCandidateInfo.js +56 -0
  112. package/dist/models/DnsRecordInfo.d.ts +89 -0
  113. package/dist/models/DnsRecordInfo.js +62 -0
  114. package/dist/models/DnsRecordMutationData.d.ts +39 -0
  115. package/dist/models/DnsRecordMutationData.js +53 -0
  116. package/dist/models/DnsRecordMutationRecord.d.ts +77 -0
  117. package/dist/models/DnsRecordMutationRecord.js +62 -0
  118. package/dist/models/DnsZoneInfo.d.ts +81 -0
  119. package/dist/models/DnsZoneInfo.js +67 -0
  120. package/dist/models/DnssecRecordInfo.d.ts +50 -0
  121. package/dist/models/DnssecRecordInfo.js +62 -0
  122. package/dist/models/DomainAddonFeature.d.ts +56 -0
  123. package/dist/models/DomainAddonFeature.js +64 -0
  124. package/dist/models/DomainAvailableFeatures.d.ts +69 -0
  125. package/dist/models/DomainAvailableFeatures.js +61 -0
  126. package/dist/models/DomainContactSourceType.d.ts +26 -0
  127. package/dist/models/DomainContactSourceType.js +52 -0
  128. package/dist/models/DomainContactUpdate.d.ts +47 -0
  129. package/dist/models/DomainContactUpdate.js +55 -0
  130. package/dist/models/DomainContactUpdates.d.ts +51 -0
  131. package/dist/models/DomainContactUpdates.js +55 -0
  132. package/dist/models/DomainContacts.d.ts +58 -0
  133. package/dist/models/DomainContacts.js +54 -0
  134. package/dist/models/DomainDetail.d.ts +251 -0
  135. package/dist/models/DomainDetail.js +143 -0
  136. package/dist/models/DomainExpiryCountdown.d.ts +44 -0
  137. package/dist/models/DomainExpiryCountdown.js +58 -0
  138. package/dist/models/DomainHostingLink.d.ts +4 -4
  139. package/dist/models/DomainHostingLink.js +2 -6
  140. package/dist/models/DomainInfo.d.ts +6 -0
  141. package/dist/models/DomainInfo.js +2 -0
  142. package/dist/models/DomainNameservers.d.ts +56 -0
  143. package/dist/models/DomainNameservers.js +56 -0
  144. package/dist/models/EditDnsRecordRequestContent.d.ts +45 -0
  145. package/dist/models/EditDnsRecordRequestContent.js +57 -0
  146. package/dist/models/EditDnsRecordResponseContent.d.ts +40 -0
  147. package/dist/models/EditDnsRecordResponseContent.js +56 -0
  148. package/dist/models/GetDnsZoneDetailsData.d.ts +81 -0
  149. package/dist/models/GetDnsZoneDetailsData.js +67 -0
  150. package/dist/models/GetDnsZoneDetailsRequestContent.d.ts +32 -0
  151. package/dist/models/GetDnsZoneDetailsRequestContent.js +50 -0
  152. package/dist/models/GetDnsZoneDetailsResponseContent.d.ts +40 -0
  153. package/dist/models/GetDnsZoneDetailsResponseContent.js +56 -0
  154. package/dist/models/GetDomainContactsData.d.ts +4 -3
  155. package/dist/models/GetDomainContactsData.js +3 -2
  156. package/dist/models/GetDomainData.d.ts +3 -3
  157. package/dist/models/GetDomainData.js +3 -3
  158. package/dist/models/ListDnsCreateCandidatesData.d.ts +45 -0
  159. package/dist/models/ListDnsCreateCandidatesData.js +59 -0
  160. package/dist/models/ListDnsCreateCandidatesResponseContent.d.ts +40 -0
  161. package/dist/models/ListDnsCreateCandidatesResponseContent.js +56 -0
  162. package/dist/models/ListDnsZonesData.d.ts +45 -0
  163. package/dist/models/ListDnsZonesData.js +59 -0
  164. package/dist/models/ListDnsZonesResponseContent.d.ts +40 -0
  165. package/dist/models/ListDnsZonesResponseContent.js +56 -0
  166. package/dist/models/ListDnssecRecordsData.d.ts +39 -0
  167. package/dist/models/ListDnssecRecordsData.js +55 -0
  168. package/dist/models/ListDnssecRecordsRequestContent.d.ts +32 -0
  169. package/dist/models/ListDnssecRecordsRequestContent.js +50 -0
  170. package/dist/models/ListDnssecRecordsResponseContent.d.ts +40 -0
  171. package/dist/models/ListDnssecRecordsResponseContent.js +56 -0
  172. package/dist/models/UpdateDomainContactsData.d.ts +38 -0
  173. package/dist/models/UpdateDomainContactsData.js +52 -0
  174. package/dist/models/UpdateDomainContactsRequestContent.d.ts +39 -0
  175. package/dist/models/UpdateDomainContactsRequestContent.js +55 -0
  176. package/dist/models/UpdateDomainContactsResponseContent.d.ts +40 -0
  177. package/dist/models/UpdateDomainContactsResponseContent.js +56 -0
  178. package/dist/models/UpdateDomainNameserversData.d.ts +45 -0
  179. package/dist/models/UpdateDomainNameserversData.js +55 -0
  180. package/dist/models/UpdateDomainNameserversRequestContent.d.ts +62 -0
  181. package/dist/models/UpdateDomainNameserversRequestContent.js +64 -0
  182. package/dist/models/UpdateDomainNameserversResponseContent.d.ts +40 -0
  183. package/dist/models/UpdateDomainNameserversResponseContent.js +56 -0
  184. package/dist/models/index.d.ts +37 -0
  185. package/dist/models/index.js +37 -0
  186. package/dist/retryablePaths.js +4 -0
  187. package/dist.zip +0 -0
  188. package/docs/AddDnsRecordRequestContent.md +38 -0
  189. package/docs/AddDnsRecordResponseContent.md +36 -0
  190. package/docs/DNSApi.md +462 -0
  191. package/docs/DeleteDnsRecordRequestContent.md +38 -0
  192. package/docs/DeleteDnsRecordResponseContent.md +36 -0
  193. package/docs/DnsCreateCandidateInfo.md +43 -0
  194. package/docs/DnsRecordInfo.md +49 -0
  195. package/docs/DnsRecordMutationData.md +36 -0
  196. package/docs/DnsRecordMutationRecord.md +49 -0
  197. package/docs/DnsZoneInfo.md +51 -0
  198. package/docs/DnssecRecordInfo.md +41 -0
  199. package/docs/DomainAddonFeature.md +43 -0
  200. package/docs/DomainAvailableFeatures.md +47 -0
  201. package/docs/DomainContactSourceType.md +32 -0
  202. package/docs/DomainContactUpdate.md +39 -0
  203. package/docs/DomainContactUpdates.md +41 -0
  204. package/docs/DomainContacts.md +41 -0
  205. package/docs/DomainDetail.md +107 -0
  206. package/docs/DomainExpiryCountdown.md +39 -0
  207. package/docs/DomainInfo.md +2 -0
  208. package/docs/DomainNameservers.md +43 -0
  209. package/docs/DomainsApi.md +240 -0
  210. package/docs/EditDnsRecordRequestContent.md +38 -0
  211. package/docs/EditDnsRecordResponseContent.md +36 -0
  212. package/docs/GetDnsZoneDetailsData.md +50 -0
  213. package/docs/GetDnsZoneDetailsRequestContent.md +34 -0
  214. package/docs/GetDnsZoneDetailsResponseContent.md +36 -0
  215. package/docs/GetDomainContactsData.md +1 -1
  216. package/docs/GetDomainData.md +1 -1
  217. package/docs/ListDnsCreateCandidatesData.md +38 -0
  218. package/docs/ListDnsCreateCandidatesResponseContent.md +36 -0
  219. package/docs/ListDnsZonesData.md +38 -0
  220. package/docs/ListDnsZonesResponseContent.md +36 -0
  221. package/docs/ListDnssecRecordsData.md +36 -0
  222. package/docs/ListDnssecRecordsRequestContent.md +34 -0
  223. package/docs/ListDnssecRecordsResponseContent.md +36 -0
  224. package/docs/ServiceManagementApi.md +2 -2
  225. package/docs/SnapshotsApi.md +4 -4
  226. package/docs/UpdateDomainContactsData.md +36 -0
  227. package/docs/UpdateDomainContactsRequestContent.md +36 -0
  228. package/docs/UpdateDomainContactsResponseContent.md +36 -0
  229. package/docs/UpdateDomainNameserversData.md +38 -0
  230. package/docs/UpdateDomainNameserversRequestContent.md +44 -0
  231. package/docs/UpdateDomainNameserversResponseContent.md +36 -0
  232. package/package.json +1 -1
  233. package/src/apis/DNSApi.ts +356 -0
  234. package/src/apis/DomainsApi.ts +195 -0
  235. package/src/apis/ServiceManagementApi.ts +4 -4
  236. package/src/apis/SnapshotsApi.ts +8 -8
  237. package/src/models/AddDnsRecordRequestContent.ts +91 -0
  238. package/src/models/AddDnsRecordResponseContent.ts +92 -0
  239. package/src/models/DeleteDnsRecordRequestContent.ts +91 -0
  240. package/src/models/DeleteDnsRecordResponseContent.ts +92 -0
  241. package/src/models/DnsCreateCandidateInfo.ts +97 -0
  242. package/src/models/DnsRecordInfo.ts +136 -0
  243. package/src/models/DnsRecordMutationData.ts +82 -0
  244. package/src/models/DnsRecordMutationRecord.ts +124 -0
  245. package/src/models/DnsZoneInfo.ts +138 -0
  246. package/src/models/DnssecRecordInfo.ts +93 -0
  247. package/src/models/DomainAddonFeature.ts +101 -0
  248. package/src/models/DomainAvailableFeatures.ts +121 -0
  249. package/src/models/DomainContactSourceType.ts +54 -0
  250. package/src/models/DomainContactUpdate.ts +92 -0
  251. package/src/models/DomainContactUpdates.ts +97 -0
  252. package/src/models/DomainContacts.ts +89 -0
  253. package/src/models/DomainDetail.ts +385 -0
  254. package/src/models/DomainExpiryCountdown.ts +84 -0
  255. package/src/models/DomainHostingLink.ts +6 -8
  256. package/src/models/DomainInfo.ts +8 -0
  257. package/src/models/DomainNameservers.ts +97 -0
  258. package/src/models/EditDnsRecordRequestContent.ts +91 -0
  259. package/src/models/EditDnsRecordResponseContent.ts +92 -0
  260. package/src/models/GetDnsZoneDetailsData.ts +138 -0
  261. package/src/models/GetDnsZoneDetailsRequestContent.ts +66 -0
  262. package/src/models/GetDnsZoneDetailsResponseContent.ts +92 -0
  263. package/src/models/GetDomainContactsData.ts +13 -5
  264. package/src/models/GetDomainData.ts +10 -10
  265. package/src/models/ListDnsCreateCandidatesData.ts +92 -0
  266. package/src/models/ListDnsCreateCandidatesResponseContent.ts +92 -0
  267. package/src/models/ListDnsZonesData.ts +92 -0
  268. package/src/models/ListDnsZonesResponseContent.ts +92 -0
  269. package/src/models/ListDnssecRecordsData.ts +83 -0
  270. package/src/models/ListDnssecRecordsRequestContent.ts +66 -0
  271. package/src/models/ListDnssecRecordsResponseContent.ts +92 -0
  272. package/src/models/UpdateDomainContactsData.ts +74 -0
  273. package/src/models/UpdateDomainContactsRequestContent.ts +83 -0
  274. package/src/models/UpdateDomainContactsResponseContent.ts +92 -0
  275. package/src/models/UpdateDomainNameserversData.ts +90 -0
  276. package/src/models/UpdateDomainNameserversRequestContent.ts +108 -0
  277. package/src/models/UpdateDomainNameserversResponseContent.ts +92 -0
  278. package/src/models/index.ts +37 -0
  279. package/src/retryablePaths.ts +4 -0
@@ -0,0 +1,121 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * HostAfricaApi
5
+ * HostAfrica API
6
+ *
7
+ * The version of the OpenAPI document: 1.1.0 - 2026-07-16
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime.js';
16
+ import type { DomainAddonFeature } from './DomainAddonFeature.js';
17
+ import {
18
+ DomainAddonFeatureFromJSON,
19
+ DomainAddonFeatureFromJSONTyped,
20
+ DomainAddonFeatureToJSON,
21
+ DomainAddonFeatureToJSONTyped,
22
+ } from './DomainAddonFeature.js';
23
+
24
+ /**
25
+ * Feature flags and priced addons available for a domain
26
+ * @export
27
+ * @interface DomainAvailableFeatures
28
+ */
29
+ export interface DomainAvailableFeatures {
30
+ /**
31
+ * Whether EPP/auth code retrieval is available
32
+ * @type {boolean}
33
+ * @memberof DomainAvailableFeatures
34
+ */
35
+ eppcode?: boolean;
36
+ /**
37
+ * Whether DNSSEC management is available
38
+ * @type {boolean}
39
+ * @memberof DomainAvailableFeatures
40
+ */
41
+ dnssec?: boolean;
42
+ /**
43
+ * Whether private/custom nameservers are supported
44
+ * @type {boolean}
45
+ * @memberof DomainAvailableFeatures
46
+ */
47
+ privateNameservers?: boolean;
48
+ /**
49
+ * Whether domain redirect is available
50
+ * @type {boolean}
51
+ * @memberof DomainAvailableFeatures
52
+ */
53
+ redirector?: boolean;
54
+ /**
55
+ *
56
+ * @type {DomainAddonFeature}
57
+ * @memberof DomainAvailableFeatures
58
+ */
59
+ dnsmanagement?: DomainAddonFeature;
60
+ /**
61
+ *
62
+ * @type {DomainAddonFeature}
63
+ * @memberof DomainAvailableFeatures
64
+ */
65
+ emailforwarding?: DomainAddonFeature;
66
+ /**
67
+ *
68
+ * @type {DomainAddonFeature}
69
+ * @memberof DomainAvailableFeatures
70
+ */
71
+ idprotection?: DomainAddonFeature;
72
+ }
73
+
74
+ /**
75
+ * Check if a given object implements the DomainAvailableFeatures interface.
76
+ */
77
+ export function instanceOfDomainAvailableFeatures(value: object): value is DomainAvailableFeatures {
78
+ return true;
79
+ }
80
+
81
+ export function DomainAvailableFeaturesFromJSON(json: any): DomainAvailableFeatures {
82
+ return DomainAvailableFeaturesFromJSONTyped(json, false);
83
+ }
84
+
85
+ export function DomainAvailableFeaturesFromJSONTyped(json: any, ignoreDiscriminator: boolean): DomainAvailableFeatures {
86
+ if (json == null) {
87
+ return json;
88
+ }
89
+ return {
90
+
91
+ 'eppcode': json['eppcode'] == null ? undefined : json['eppcode'],
92
+ 'dnssec': json['dnssec'] == null ? undefined : json['dnssec'],
93
+ 'privateNameservers': json['private_nameservers'] == null ? undefined : json['private_nameservers'],
94
+ 'redirector': json['redirector'] == null ? undefined : json['redirector'],
95
+ 'dnsmanagement': json['dnsmanagement'] == null ? undefined : DomainAddonFeatureFromJSON(json['dnsmanagement']),
96
+ 'emailforwarding': json['emailforwarding'] == null ? undefined : DomainAddonFeatureFromJSON(json['emailforwarding']),
97
+ 'idprotection': json['idprotection'] == null ? undefined : DomainAddonFeatureFromJSON(json['idprotection']),
98
+ };
99
+ }
100
+
101
+ export function DomainAvailableFeaturesToJSON(json: any): DomainAvailableFeatures {
102
+ return DomainAvailableFeaturesToJSONTyped(json, false);
103
+ }
104
+
105
+ export function DomainAvailableFeaturesToJSONTyped(value?: DomainAvailableFeatures | null, ignoreDiscriminator: boolean = false): any {
106
+ if (value == null) {
107
+ return value;
108
+ }
109
+
110
+ return {
111
+
112
+ 'eppcode': value['eppcode'],
113
+ 'dnssec': value['dnssec'],
114
+ 'private_nameservers': value['privateNameservers'],
115
+ 'redirector': value['redirector'],
116
+ 'dnsmanagement': DomainAddonFeatureToJSON(value['dnsmanagement']),
117
+ 'emailforwarding': DomainAddonFeatureToJSON(value['emailforwarding']),
118
+ 'idprotection': DomainAddonFeatureToJSON(value['idprotection']),
119
+ };
120
+ }
121
+
@@ -0,0 +1,54 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * HostAfricaApi
5
+ * HostAfrica API
6
+ *
7
+ * The version of the OpenAPI document: 1.1.0 - 2026-07-16
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+
16
+ /**
17
+ *
18
+ * @export
19
+ */
20
+ export const DomainContactSourceType = {
21
+ Owner: 'owner',
22
+ Contact: 'contact',
23
+ Custom: 'custom'
24
+ } as const;
25
+ export type DomainContactSourceType = typeof DomainContactSourceType[keyof typeof DomainContactSourceType];
26
+
27
+
28
+ export function instanceOfDomainContactSourceType(value: any): boolean {
29
+ for (const key in DomainContactSourceType) {
30
+ if (Object.prototype.hasOwnProperty.call(DomainContactSourceType, key)) {
31
+ if (DomainContactSourceType[key as keyof typeof DomainContactSourceType] === value) {
32
+ return true;
33
+ }
34
+ }
35
+ }
36
+ return false;
37
+ }
38
+
39
+ export function DomainContactSourceTypeFromJSON(json: any): DomainContactSourceType {
40
+ return DomainContactSourceTypeFromJSONTyped(json, false);
41
+ }
42
+
43
+ export function DomainContactSourceTypeFromJSONTyped(json: any, ignoreDiscriminator: boolean): DomainContactSourceType {
44
+ return json as DomainContactSourceType;
45
+ }
46
+
47
+ export function DomainContactSourceTypeToJSON(value?: DomainContactSourceType | null): any {
48
+ return value as any;
49
+ }
50
+
51
+ export function DomainContactSourceTypeToJSONTyped(value: any, ignoreDiscriminator: boolean): DomainContactSourceType {
52
+ return value as DomainContactSourceType;
53
+ }
54
+
@@ -0,0 +1,92 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * HostAfricaApi
5
+ * HostAfrica API
6
+ *
7
+ * The version of the OpenAPI document: 1.1.0 - 2026-07-16
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime.js';
16
+ import type { DomainContactSourceType } from './DomainContactSourceType.js';
17
+ import {
18
+ DomainContactSourceTypeFromJSON,
19
+ DomainContactSourceTypeFromJSONTyped,
20
+ DomainContactSourceTypeToJSON,
21
+ DomainContactSourceTypeToJSONTyped,
22
+ } from './DomainContactSourceType.js';
23
+
24
+ /**
25
+ * Update payload for one WHOIS contact role
26
+ * @export
27
+ * @interface DomainContactUpdate
28
+ */
29
+ export interface DomainContactUpdate {
30
+ /**
31
+ *
32
+ * @type {DomainContactSourceType}
33
+ * @memberof DomainContactUpdate
34
+ */
35
+ type: DomainContactSourceType;
36
+ /**
37
+ * Saved WHMCS contact id; required when type is contact
38
+ * @type {number}
39
+ * @memberof DomainContactUpdate
40
+ */
41
+ id?: number;
42
+ /**
43
+ * WHOIS contact field values for one role; field names vary by TLD/registrar
44
+ * @type {{ [key: string]: string; }}
45
+ * @memberof DomainContactUpdate
46
+ */
47
+ fields?: { [key: string]: string; };
48
+ }
49
+
50
+
51
+
52
+ /**
53
+ * Check if a given object implements the DomainContactUpdate interface.
54
+ */
55
+ export function instanceOfDomainContactUpdate(value: object): value is DomainContactUpdate {
56
+ if (!('type' in value) || value['type'] === undefined) return false;
57
+ return true;
58
+ }
59
+
60
+ export function DomainContactUpdateFromJSON(json: any): DomainContactUpdate {
61
+ return DomainContactUpdateFromJSONTyped(json, false);
62
+ }
63
+
64
+ export function DomainContactUpdateFromJSONTyped(json: any, ignoreDiscriminator: boolean): DomainContactUpdate {
65
+ if (json == null) {
66
+ return json;
67
+ }
68
+ return {
69
+
70
+ 'type': DomainContactSourceTypeFromJSON(json['type']),
71
+ 'id': json['id'] == null ? undefined : json['id'],
72
+ 'fields': json['fields'] == null ? undefined : json['fields'],
73
+ };
74
+ }
75
+
76
+ export function DomainContactUpdateToJSON(json: any): DomainContactUpdate {
77
+ return DomainContactUpdateToJSONTyped(json, false);
78
+ }
79
+
80
+ export function DomainContactUpdateToJSONTyped(value?: DomainContactUpdate | null, ignoreDiscriminator: boolean = false): any {
81
+ if (value == null) {
82
+ return value;
83
+ }
84
+
85
+ return {
86
+
87
+ 'type': DomainContactSourceTypeToJSON(value['type']),
88
+ 'id': value['id'],
89
+ 'fields': value['fields'],
90
+ };
91
+ }
92
+
@@ -0,0 +1,97 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * HostAfricaApi
5
+ * HostAfrica API
6
+ *
7
+ * The version of the OpenAPI document: 1.1.0 - 2026-07-16
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime.js';
16
+ import type { DomainContactUpdate } from './DomainContactUpdate.js';
17
+ import {
18
+ DomainContactUpdateFromJSON,
19
+ DomainContactUpdateFromJSONTyped,
20
+ DomainContactUpdateToJSON,
21
+ DomainContactUpdateToJSONTyped,
22
+ } from './DomainContactUpdate.js';
23
+
24
+ /**
25
+ * WHOIS contact updates keyed by Registrant, Admin, Tech, and Billing
26
+ * @export
27
+ * @interface DomainContactUpdates
28
+ */
29
+ export interface DomainContactUpdates {
30
+ /**
31
+ *
32
+ * @type {DomainContactUpdate}
33
+ * @memberof DomainContactUpdates
34
+ */
35
+ registrant?: DomainContactUpdate;
36
+ /**
37
+ *
38
+ * @type {DomainContactUpdate}
39
+ * @memberof DomainContactUpdates
40
+ */
41
+ admin?: DomainContactUpdate;
42
+ /**
43
+ *
44
+ * @type {DomainContactUpdate}
45
+ * @memberof DomainContactUpdates
46
+ */
47
+ tech?: DomainContactUpdate;
48
+ /**
49
+ *
50
+ * @type {DomainContactUpdate}
51
+ * @memberof DomainContactUpdates
52
+ */
53
+ billing?: DomainContactUpdate;
54
+ }
55
+
56
+ /**
57
+ * Check if a given object implements the DomainContactUpdates interface.
58
+ */
59
+ export function instanceOfDomainContactUpdates(value: object): value is DomainContactUpdates {
60
+ return true;
61
+ }
62
+
63
+ export function DomainContactUpdatesFromJSON(json: any): DomainContactUpdates {
64
+ return DomainContactUpdatesFromJSONTyped(json, false);
65
+ }
66
+
67
+ export function DomainContactUpdatesFromJSONTyped(json: any, ignoreDiscriminator: boolean): DomainContactUpdates {
68
+ if (json == null) {
69
+ return json;
70
+ }
71
+ return {
72
+
73
+ 'registrant': json['Registrant'] == null ? undefined : DomainContactUpdateFromJSON(json['Registrant']),
74
+ 'admin': json['Admin'] == null ? undefined : DomainContactUpdateFromJSON(json['Admin']),
75
+ 'tech': json['Tech'] == null ? undefined : DomainContactUpdateFromJSON(json['Tech']),
76
+ 'billing': json['Billing'] == null ? undefined : DomainContactUpdateFromJSON(json['Billing']),
77
+ };
78
+ }
79
+
80
+ export function DomainContactUpdatesToJSON(json: any): DomainContactUpdates {
81
+ return DomainContactUpdatesToJSONTyped(json, false);
82
+ }
83
+
84
+ export function DomainContactUpdatesToJSONTyped(value?: DomainContactUpdates | null, ignoreDiscriminator: boolean = false): any {
85
+ if (value == null) {
86
+ return value;
87
+ }
88
+
89
+ return {
90
+
91
+ 'Registrant': DomainContactUpdateToJSON(value['registrant']),
92
+ 'Admin': DomainContactUpdateToJSON(value['admin']),
93
+ 'Tech': DomainContactUpdateToJSON(value['tech']),
94
+ 'Billing': DomainContactUpdateToJSON(value['billing']),
95
+ };
96
+ }
97
+
@@ -0,0 +1,89 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * HostAfricaApi
5
+ * HostAfrica API
6
+ *
7
+ * The version of the OpenAPI document: 1.1.0 - 2026-07-16
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime.js';
16
+ /**
17
+ * WHOIS contacts keyed by contact role
18
+ * @export
19
+ * @interface DomainContacts
20
+ */
21
+ export interface DomainContacts {
22
+ /**
23
+ * WHOIS contact field values for one role; field names vary by TLD/registrar
24
+ * @type {{ [key: string]: string; }}
25
+ * @memberof DomainContacts
26
+ */
27
+ registrant?: { [key: string]: string; };
28
+ /**
29
+ * WHOIS contact field values for one role; field names vary by TLD/registrar
30
+ * @type {{ [key: string]: string; }}
31
+ * @memberof DomainContacts
32
+ */
33
+ admin?: { [key: string]: string; };
34
+ /**
35
+ * WHOIS contact field values for one role; field names vary by TLD/registrar
36
+ * @type {{ [key: string]: string; }}
37
+ * @memberof DomainContacts
38
+ */
39
+ tech?: { [key: string]: string; };
40
+ /**
41
+ * WHOIS contact field values for one role; field names vary by TLD/registrar
42
+ * @type {{ [key: string]: string; }}
43
+ * @memberof DomainContacts
44
+ */
45
+ billing?: { [key: string]: string; };
46
+ }
47
+
48
+ /**
49
+ * Check if a given object implements the DomainContacts interface.
50
+ */
51
+ export function instanceOfDomainContacts(value: object): value is DomainContacts {
52
+ return true;
53
+ }
54
+
55
+ export function DomainContactsFromJSON(json: any): DomainContacts {
56
+ return DomainContactsFromJSONTyped(json, false);
57
+ }
58
+
59
+ export function DomainContactsFromJSONTyped(json: any, ignoreDiscriminator: boolean): DomainContacts {
60
+ if (json == null) {
61
+ return json;
62
+ }
63
+ return {
64
+
65
+ 'registrant': json['Registrant'] == null ? undefined : json['Registrant'],
66
+ 'admin': json['Admin'] == null ? undefined : json['Admin'],
67
+ 'tech': json['Tech'] == null ? undefined : json['Tech'],
68
+ 'billing': json['Billing'] == null ? undefined : json['Billing'],
69
+ };
70
+ }
71
+
72
+ export function DomainContactsToJSON(json: any): DomainContacts {
73
+ return DomainContactsToJSONTyped(json, false);
74
+ }
75
+
76
+ export function DomainContactsToJSONTyped(value?: DomainContacts | null, ignoreDiscriminator: boolean = false): any {
77
+ if (value == null) {
78
+ return value;
79
+ }
80
+
81
+ return {
82
+
83
+ 'Registrant': value['registrant'],
84
+ 'Admin': value['admin'],
85
+ 'Tech': value['tech'],
86
+ 'Billing': value['billing'],
87
+ };
88
+ }
89
+