@cdktf-providers/vmware-avi 30.2.5 → 31.2.1

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 (569) hide show
  1. package/README.md +3 -3
  2. package/dist/actiongroupconfig/index.d.ts +17 -17
  3. package/dist/actiongroupconfig/index.js +6 -6
  4. package/dist/albservicesconfig/index.d.ts +94 -85
  5. package/dist/albservicesconfig/index.js +79 -51
  6. package/dist/albservicesfiledownload/index.d.ts +21 -21
  7. package/dist/albservicesfiledownload/index.js +6 -6
  8. package/dist/albservicesfileupload/index.d.ts +12 -12
  9. package/dist/albservicesfileupload/index.js +6 -6
  10. package/dist/albservicesjob/index.d.ts +27 -27
  11. package/dist/albservicesjob/index.js +6 -6
  12. package/dist/alertconfig/index.d.ts +42 -42
  13. package/dist/alertconfig/index.js +6 -6
  14. package/dist/alertemailconfig/index.d.ts +12 -12
  15. package/dist/alertemailconfig/index.js +6 -6
  16. package/dist/alertscriptconfig/index.d.ts +20 -11
  17. package/dist/alertscriptconfig/index.js +29 -6
  18. package/dist/alertsyslogconfig/index.d.ts +21 -21
  19. package/dist/alertsyslogconfig/index.js +6 -6
  20. package/dist/analyticsprofile/index.d.ts +164 -155
  21. package/dist/analyticsprofile/index.js +29 -6
  22. package/dist/apiratelimitprofile/index.d.ts +149 -0
  23. package/dist/apiratelimitprofile/index.js +354 -0
  24. package/dist/applicationinsightspolicy/index.d.ts +423 -0
  25. package/dist/applicationinsightspolicy/index.js +1086 -0
  26. package/dist/applicationpersistenceprofile/index.d.ts +99 -37
  27. package/dist/applicationpersistenceprofile/index.js +165 -6
  28. package/dist/applicationprofile/index-structs/structs0.d.ts +493 -448
  29. package/dist/applicationprofile/index-structs/structs0.js +276 -130
  30. package/dist/applicationprofile/index-structs/structs400.d.ts +236 -185
  31. package/dist/applicationprofile/index-structs/structs400.js +131 -1
  32. package/dist/applicationprofile/index.d.ts +35 -24
  33. package/dist/applicationprofile/index.js +29 -6
  34. package/dist/authmappingprofile/index.d.ts +33 -33
  35. package/dist/authmappingprofile/index.js +6 -6
  36. package/dist/authprofile/index.d.ts +108 -99
  37. package/dist/authprofile/index.js +34 -6
  38. package/dist/autoscalelaunchconfig/index.d.ts +20 -20
  39. package/dist/autoscalelaunchconfig/index.js +6 -6
  40. package/dist/availabilityzone/index.d.ts +202 -16
  41. package/dist/availabilityzone/index.js +502 -20
  42. package/dist/backup/index.d.ts +12 -12
  43. package/dist/backup/index.js +6 -6
  44. package/dist/backupconfiguration/index.d.ts +33 -24
  45. package/dist/backupconfiguration/index.js +29 -6
  46. package/dist/botconfigconsolidator/index.d.ts +62 -9
  47. package/dist/botconfigconsolidator/index.js +137 -6
  48. package/dist/botdetectionpolicy/index.d.ts +187 -125
  49. package/dist/botdetectionpolicy/index.js +165 -6
  50. package/dist/botipreputationtypemapping/index.d.ts +66 -13
  51. package/dist/botipreputationtypemapping/index.js +137 -6
  52. package/dist/botmapping/index.d.ts +123 -61
  53. package/dist/botmapping/index.js +165 -6
  54. package/dist/certificatemanagementprofile/index.d.ts +18 -18
  55. package/dist/certificatemanagementprofile/index.js +6 -6
  56. package/dist/cloud/index.d.ts +368 -983
  57. package/dist/cloud/index.js +313 -2049
  58. package/dist/cloudconnectoruser/index.d.ts +31 -111
  59. package/dist/cloudconnectoruser/index.js +6 -221
  60. package/dist/cloudproperties/index.d.ts +424 -255
  61. package/dist/cloudproperties/index.js +732 -264
  62. package/dist/cluster/index.d.ts +77 -77
  63. package/dist/cluster/index.js +6 -6
  64. package/dist/clusterclouddetails/index.d.ts +12 -12
  65. package/dist/clusterclouddetails/index.js +6 -6
  66. package/dist/controllerportalregistration/index.d.ts +15 -15
  67. package/dist/controllerportalregistration/index.js +6 -6
  68. package/dist/controllerproperties/index.d.ts +380 -211
  69. package/dist/controllerproperties/index.js +671 -218
  70. package/dist/controllersite/index.d.ts +11 -11
  71. package/dist/controllersite/index.js +6 -6
  72. package/dist/csrfpolicy/index.d.ts +126 -108
  73. package/dist/csrfpolicy/index.js +57 -6
  74. package/dist/customipamdnsprofile/index.d.ts +15 -15
  75. package/dist/customipamdnsprofile/index.js +6 -6
  76. package/dist/data-avi-actiongroupconfig/index.d.ts +7 -7
  77. package/dist/data-avi-actiongroupconfig/index.js +6 -6
  78. package/dist/data-avi-albservicesconfig/index.d.ts +10 -9
  79. package/dist/data-avi-albservicesconfig/index.js +17 -13
  80. package/dist/data-avi-albservicesfiledownload/index.d.ts +7 -7
  81. package/dist/data-avi-albservicesfiledownload/index.js +6 -6
  82. package/dist/data-avi-albservicesfileupload/index.d.ts +7 -7
  83. package/dist/data-avi-albservicesfileupload/index.js +6 -6
  84. package/dist/data-avi-albservicesjob/index.d.ts +7 -7
  85. package/dist/data-avi-albservicesjob/index.js +6 -6
  86. package/dist/data-avi-alertconfig/index.d.ts +7 -7
  87. package/dist/data-avi-alertconfig/index.js +6 -6
  88. package/dist/data-avi-alertemailconfig/index.d.ts +7 -7
  89. package/dist/data-avi-alertemailconfig/index.js +6 -6
  90. package/dist/data-avi-alertscriptconfig/index.d.ts +8 -7
  91. package/dist/data-avi-alertscriptconfig/index.js +10 -6
  92. package/dist/data-avi-alertsyslogconfig/index.d.ts +7 -7
  93. package/dist/data-avi-alertsyslogconfig/index.js +6 -6
  94. package/dist/data-avi-analyticsprofile/index.d.ts +8 -7
  95. package/dist/data-avi-analyticsprofile/index.js +10 -6
  96. package/dist/data-avi-apiratelimitprofile/index.d.ts +108 -0
  97. package/dist/data-avi-apiratelimitprofile/index.js +247 -0
  98. package/dist/data-avi-applicationinsightspolicy/index.d.ts +251 -0
  99. package/dist/data-avi-applicationinsightspolicy/index.js +575 -0
  100. package/dist/data-avi-applicationpersistenceprofile/index.d.ts +42 -7
  101. package/dist/data-avi-applicationpersistenceprofile/index.js +85 -6
  102. package/dist/data-avi-applicationprofile/index-structs/structs0.d.ts +38 -34
  103. package/dist/data-avi-applicationprofile/index-structs/structs0.js +94 -75
  104. package/dist/data-avi-applicationprofile/index-structs/structs400.d.ts +35 -1
  105. package/dist/data-avi-applicationprofile/index-structs/structs400.js +76 -1
  106. package/dist/data-avi-applicationprofile/index.d.ts +9 -7
  107. package/dist/data-avi-applicationprofile/index.js +11 -6
  108. package/dist/data-avi-authmappingprofile/index.d.ts +7 -7
  109. package/dist/data-avi-authmappingprofile/index.js +6 -6
  110. package/dist/data-avi-authprofile/index.d.ts +8 -7
  111. package/dist/data-avi-authprofile/index.js +10 -6
  112. package/dist/data-avi-autoscalelaunchconfig/index.d.ts +7 -7
  113. package/dist/data-avi-autoscalelaunchconfig/index.js +6 -6
  114. package/dist/data-avi-availabilityzone/index.d.ts +114 -9
  115. package/dist/data-avi-availabilityzone/index.js +247 -10
  116. package/dist/data-avi-backup/index.d.ts +6 -6
  117. package/dist/data-avi-backup/index.js +6 -6
  118. package/dist/data-avi-backupconfiguration/index.d.ts +8 -7
  119. package/dist/data-avi-backupconfiguration/index.js +10 -6
  120. package/dist/data-avi-botconfigconsolidator/index.d.ts +41 -7
  121. package/dist/data-avi-botconfigconsolidator/index.js +81 -6
  122. package/dist/data-avi-botdetectionpolicy/index.d.ts +42 -7
  123. package/dist/data-avi-botdetectionpolicy/index.js +85 -6
  124. package/dist/data-avi-botipreputationtypemapping/index.d.ts +41 -7
  125. package/dist/data-avi-botipreputationtypemapping/index.js +81 -6
  126. package/dist/data-avi-botmapping/index.d.ts +42 -7
  127. package/dist/data-avi-botmapping/index.js +85 -6
  128. package/dist/data-avi-certificatemanagementprofile/index.d.ts +7 -7
  129. package/dist/data-avi-certificatemanagementprofile/index.js +6 -6
  130. package/dist/data-avi-cloud/index.d.ts +10 -248
  131. package/dist/data-avi-cloud/index.js +18 -604
  132. package/dist/data-avi-cloudconnectoruser/index.d.ts +7 -44
  133. package/dist/data-avi-cloudconnectoruser/index.js +6 -93
  134. package/dist/data-avi-cloudproperties/index.d.ts +90 -15
  135. package/dist/data-avi-cloudproperties/index.js +221 -43
  136. package/dist/data-avi-cluster/index.d.ts +11 -11
  137. package/dist/data-avi-cluster/index.js +6 -6
  138. package/dist/data-avi-clusterclouddetails/index.d.ts +7 -7
  139. package/dist/data-avi-clusterclouddetails/index.js +6 -6
  140. package/dist/data-avi-controllerportalregistration/index.d.ts +7 -7
  141. package/dist/data-avi-controllerportalregistration/index.js +6 -6
  142. package/dist/data-avi-controllerproperties/index.d.ts +90 -15
  143. package/dist/data-avi-controllerproperties/index.js +221 -43
  144. package/dist/data-avi-controllersite/index.d.ts +7 -7
  145. package/dist/data-avi-controllersite/index.js +6 -6
  146. package/dist/data-avi-csrfpolicy/index.d.ts +9 -7
  147. package/dist/data-avi-csrfpolicy/index.js +14 -6
  148. package/dist/data-avi-customipamdnsprofile/index.d.ts +7 -7
  149. package/dist/data-avi-customipamdnsprofile/index.js +6 -6
  150. package/dist/data-avi-dnspolicy/index.d.ts +7 -7
  151. package/dist/data-avi-dnspolicy/index.js +6 -6
  152. package/dist/data-avi-dynamicdnsrecord/index.d.ts +7 -7
  153. package/dist/data-avi-dynamicdnsrecord/index.js +6 -6
  154. package/dist/data-avi-errorpagebody/index.d.ts +7 -7
  155. package/dist/data-avi-errorpagebody/index.js +6 -6
  156. package/dist/data-avi-errorpageprofile/index.d.ts +7 -7
  157. package/dist/data-avi-errorpageprofile/index.js +6 -6
  158. package/dist/data-avi-federationcheckpoint/index.d.ts +7 -7
  159. package/dist/data-avi-federationcheckpoint/index.js +6 -6
  160. package/dist/data-avi-fileobject/index.d.ts +82 -7
  161. package/dist/data-avi-fileobject/index.js +184 -6
  162. package/dist/data-avi-fileservice/index.d.ts +7 -7
  163. package/dist/data-avi-fileservice/index.js +6 -6
  164. package/dist/data-avi-geodb/index.d.ts +7 -7
  165. package/dist/data-avi-geodb/index.js +6 -6
  166. package/dist/data-avi-gslb/index.d.ts +126 -19
  167. package/dist/data-avi-gslb/index.js +267 -22
  168. package/dist/data-avi-gslbcrmruntime/index.d.ts +11 -8
  169. package/dist/data-avi-gslbcrmruntime/index.js +22 -9
  170. package/dist/data-avi-gslbgeodbprofile/index.d.ts +8 -46
  171. package/dist/data-avi-gslbgeodbprofile/index.js +9 -100
  172. package/dist/data-avi-gslbhsmruntime/index.d.ts +11 -7
  173. package/dist/data-avi-gslbhsmruntime/index.js +22 -5
  174. package/dist/data-avi-gslbservice/index.d.ts +117 -7
  175. package/dist/data-avi-gslbservice/index.js +263 -6
  176. package/dist/data-avi-gslbsmruntime/index.d.ts +57 -7
  177. package/dist/data-avi-gslbsmruntime/index.js +145 -5
  178. package/dist/data-avi-hardwaresecuritymodulegroup/index.d.ts +275 -7
  179. package/dist/data-avi-hardwaresecuritymodulegroup/index.js +651 -6
  180. package/dist/data-avi-healthmonitor/index.d.ts +226 -7
  181. package/dist/data-avi-healthmonitor/index.js +577 -6
  182. package/dist/data-avi-httppolicyset/index-structs/structs0.d.ts +3 -0
  183. package/dist/data-avi-httppolicyset/index-structs/structs0.js +12 -0
  184. package/dist/data-avi-httppolicyset/index-structs/structs400.d.ts +1 -0
  185. package/dist/data-avi-httppolicyset/index-structs/structs400.js +4 -0
  186. package/dist/data-avi-httppolicyset/index.d.ts +7 -7
  187. package/dist/data-avi-httppolicyset/index.js +5 -5
  188. package/dist/data-avi-icapprofile/index.d.ts +8 -8
  189. package/dist/data-avi-icapprofile/index.js +6 -6
  190. package/dist/data-avi-image/index.d.ts +157 -9
  191. package/dist/data-avi-image/index.js +362 -14
  192. package/dist/data-avi-inventoryfaultconfig/index.d.ts +8 -7
  193. package/dist/data-avi-inventoryfaultconfig/index.js +10 -6
  194. package/dist/data-avi-ipaddrgroup/index.d.ts +7 -7
  195. package/dist/data-avi-ipaddrgroup/index.js +6 -6
  196. package/dist/data-avi-ipamdnsproviderprofile/index.d.ts +7 -8
  197. package/dist/data-avi-ipamdnsproviderprofile/index.js +6 -10
  198. package/dist/data-avi-ipreputationdb/index.d.ts +10 -7
  199. package/dist/data-avi-ipreputationdb/index.js +18 -6
  200. package/dist/data-avi-jwtserverprofile/index.d.ts +7 -7
  201. package/dist/data-avi-jwtserverprofile/index.js +6 -6
  202. package/dist/data-avi-l4policyset/index.d.ts +7 -7
  203. package/dist/data-avi-l4policyset/index.js +6 -6
  204. package/dist/data-avi-labelgroup/index.d.ts +6 -6
  205. package/dist/data-avi-labelgroup/index.js +6 -6
  206. package/dist/data-avi-licenseledgerdetails/index.d.ts +77 -5
  207. package/dist/data-avi-licenseledgerdetails/index.js +172 -6
  208. package/dist/data-avi-licensestatus/index.d.ts +9 -5
  209. package/dist/data-avi-licensestatus/index.js +22 -6
  210. package/dist/data-avi-localworkerfdsversion/index.d.ts +7 -7
  211. package/dist/data-avi-localworkerfdsversion/index.js +6 -5
  212. package/dist/data-avi-memorybalancerrequest/index.d.ts +7 -7
  213. package/dist/data-avi-memorybalancerrequest/index.js +6 -6
  214. package/dist/data-avi-microservicegroup/index.d.ts +7 -7
  215. package/dist/data-avi-microservicegroup/index.js +6 -6
  216. package/dist/data-avi-natpolicy/index.d.ts +7 -7
  217. package/dist/data-avi-natpolicy/index.js +6 -6
  218. package/dist/data-avi-network/index.d.ts +8 -8
  219. package/dist/data-avi-network/index.js +6 -6
  220. package/dist/data-avi-networkprofile/index.d.ts +43 -7
  221. package/dist/data-avi-networkprofile/index.js +89 -6
  222. package/dist/data-avi-networksecuritypolicy/index.d.ts +7 -7
  223. package/dist/data-avi-networksecuritypolicy/index.js +6 -6
  224. package/dist/data-avi-networkservice/index.d.ts +8 -8
  225. package/dist/data-avi-networkservice/index.js +6 -6
  226. package/dist/data-avi-nsxtsegmentruntime/index.d.ts +8 -8
  227. package/dist/data-avi-nsxtsegmentruntime/index.js +6 -6
  228. package/dist/data-avi-pkiprofile/index.d.ts +41 -7
  229. package/dist/data-avi-pkiprofile/index.js +81 -6
  230. package/dist/data-avi-pool/index.d.ts +83 -11
  231. package/dist/data-avi-pool/index.js +178 -12
  232. package/dist/data-avi-poolgroup/index.d.ts +8 -8
  233. package/dist/data-avi-poolgroup/index.js +6 -6
  234. package/dist/data-avi-poolgroupdeploymentpolicy/index.d.ts +7 -7
  235. package/dist/data-avi-poolgroupdeploymentpolicy/index.js +6 -6
  236. package/dist/data-avi-positivesecuritypolicy/index.d.ts +182 -0
  237. package/dist/data-avi-positivesecuritypolicy/index.js +421 -0
  238. package/dist/data-avi-prioritylabels/index.d.ts +8 -8
  239. package/dist/data-avi-prioritylabels/index.js +6 -6
  240. package/dist/data-avi-protocolparser/index.d.ts +7 -7
  241. package/dist/data-avi-protocolparser/index.js +6 -6
  242. package/dist/data-avi-ratelimitconfiguration/index.d.ts +145 -0
  243. package/dist/data-avi-ratelimitconfiguration/index.js +334 -0
  244. package/dist/data-avi-report/index.d.ts +723 -0
  245. package/dist/data-avi-report/index.js +1670 -0
  246. package/dist/data-avi-reportprofile/index.d.ts +92 -0
  247. package/dist/data-avi-reportprofile/index.js +209 -0
  248. package/dist/data-avi-retentionpolicy/index.d.ts +7 -7
  249. package/dist/data-avi-retentionpolicy/index.js +6 -5
  250. package/dist/data-avi-rmcloudopsproto/index.d.ts +7 -6
  251. package/dist/data-avi-rmcloudopsproto/index.js +10 -6
  252. package/dist/data-avi-role/index.d.ts +7 -7
  253. package/dist/data-avi-role/index.js +6 -6
  254. package/dist/data-avi-scheduler/index.d.ts +7 -7
  255. package/dist/data-avi-scheduler/index.js +6 -6
  256. package/dist/data-avi-securitymanagerdata/index.d.ts +9 -7
  257. package/dist/data-avi-securitymanagerdata/index.js +14 -6
  258. package/dist/data-avi-securitypolicy/index.d.ts +7 -7
  259. package/dist/data-avi-securitypolicy/index.js +6 -6
  260. package/dist/data-avi-seproperties/index.d.ts +6 -5
  261. package/dist/data-avi-seproperties/index.js +10 -6
  262. package/dist/data-avi-server/index.d.ts +43 -6
  263. package/dist/data-avi-server/index.js +93 -6
  264. package/dist/data-avi-serverautoscalepolicy/index.d.ts +7 -7
  265. package/dist/data-avi-serverautoscalepolicy/index.js +6 -6
  266. package/dist/data-avi-serviceauthprofile/index.d.ts +7 -7
  267. package/dist/data-avi-serviceauthprofile/index.js +6 -6
  268. package/dist/data-avi-serviceengine/index.d.ts +9 -8
  269. package/dist/data-avi-serviceengine/index.js +10 -6
  270. package/dist/data-avi-serviceenginegroup/index.d.ts +159 -9
  271. package/dist/data-avi-serviceenginegroup/index.js +366 -10
  272. package/dist/data-avi-siteversion/index.d.ts +7 -7
  273. package/dist/data-avi-siteversion/index.js +6 -6
  274. package/dist/data-avi-snmptrapprofile/index.d.ts +7 -7
  275. package/dist/data-avi-snmptrapprofile/index.js +6 -6
  276. package/dist/data-avi-sslkeyandcertificate/index.d.ts +75 -7
  277. package/dist/data-avi-sslkeyandcertificate/index.js +156 -6
  278. package/dist/data-avi-sslprofile/index.d.ts +8 -7
  279. package/dist/data-avi-sslprofile/index.js +10 -6
  280. package/dist/data-avi-ssopolicy/index.d.ts +7 -7
  281. package/dist/data-avi-ssopolicy/index.js +6 -6
  282. package/dist/data-avi-statediffoperation/index.d.ts +7 -7
  283. package/dist/data-avi-statediffoperation/index.js +6 -6
  284. package/dist/data-avi-statediffsnapshot/index.d.ts +31 -7
  285. package/dist/data-avi-statediffsnapshot/index.js +102 -6
  286. package/dist/data-avi-stringgroup/index.d.ts +7 -7
  287. package/dist/data-avi-stringgroup/index.js +6 -6
  288. package/dist/data-avi-systemconfiguration/index.d.ts +156 -5
  289. package/dist/data-avi-systemconfiguration/index.js +366 -6
  290. package/dist/data-avi-systemlimits/index.d.ts +11 -8
  291. package/dist/data-avi-systemlimits/index.js +30 -18
  292. package/dist/data-avi-systemreport/index.d.ts +383 -7
  293. package/dist/data-avi-systemreport/index.js +900 -6
  294. package/dist/data-avi-taskjournal/index.d.ts +90 -7
  295. package/dist/data-avi-taskjournal/index.js +216 -6
  296. package/dist/data-avi-techsupport/index.d.ts +501 -0
  297. package/dist/data-avi-techsupport/index.js +1209 -0
  298. package/dist/data-avi-techsupportmessage/index.d.ts +47 -0
  299. package/dist/data-avi-techsupportmessage/index.js +103 -0
  300. package/dist/data-avi-techsupportprofile/index.d.ts +163 -0
  301. package/dist/data-avi-techsupportprofile/index.js +371 -0
  302. package/dist/data-avi-tenant/index.d.ts +41 -6
  303. package/dist/data-avi-tenant/index.js +85 -6
  304. package/dist/data-avi-tenantsystemconfiguration/index.d.ts +7 -7
  305. package/dist/data-avi-tenantsystemconfiguration/index.js +6 -6
  306. package/dist/data-avi-testsedatastorelevel1/index.d.ts +7 -7
  307. package/dist/data-avi-testsedatastorelevel1/index.js +6 -6
  308. package/dist/data-avi-testsedatastorelevel2/index.d.ts +7 -7
  309. package/dist/data-avi-testsedatastorelevel2/index.js +6 -6
  310. package/dist/data-avi-testsedatastorelevel3/index.d.ts +7 -7
  311. package/dist/data-avi-testsedatastorelevel3/index.js +6 -6
  312. package/dist/data-avi-trafficcloneprofile/index.d.ts +8 -8
  313. package/dist/data-avi-trafficcloneprofile/index.js +6 -6
  314. package/dist/data-avi-trustedhostprofile/index.d.ts +7 -7
  315. package/dist/data-avi-trustedhostprofile/index.js +6 -5
  316. package/dist/data-avi-upgradeprofile/index.d.ts +15 -15
  317. package/dist/data-avi-upgradeprofile/index.js +15 -14
  318. package/dist/data-avi-upgradestatusinfo/index.d.ts +704 -7
  319. package/dist/data-avi-upgradestatusinfo/index.js +1728 -99
  320. package/dist/data-avi-upgradestatussummary/index.d.ts +7 -7
  321. package/dist/data-avi-upgradestatussummary/index.js +6 -6
  322. package/dist/data-avi-user/index.d.ts +7 -6
  323. package/dist/data-avi-user/index.js +10 -6
  324. package/dist/data-avi-useraccountprofile/index.d.ts +6 -6
  325. package/dist/data-avi-useraccountprofile/index.js +6 -6
  326. package/dist/data-avi-vcenterserver/index.d.ts +8 -8
  327. package/dist/data-avi-vcenterserver/index.js +6 -6
  328. package/dist/data-avi-virtualservice/index-structs/structs0.d.ts +143 -134
  329. package/dist/data-avi-virtualservice/index-structs/structs0.js +1051 -1024
  330. package/dist/data-avi-virtualservice/index-structs/structs400.d.ts +341 -1
  331. package/dist/data-avi-virtualservice/index-structs/structs400.js +1217 -458
  332. package/dist/data-avi-virtualservice/index.d.ts +10 -9
  333. package/dist/data-avi-virtualservice/index.js +13 -9
  334. package/dist/data-avi-vrfcontext/index.d.ts +8 -8
  335. package/dist/data-avi-vrfcontext/index.js +6 -6
  336. package/dist/data-avi-vsdatascriptset/index.d.ts +77 -7
  337. package/dist/data-avi-vsdatascriptset/index.js +164 -6
  338. package/dist/data-avi-vsgs/index.d.ts +7 -7
  339. package/dist/data-avi-vsgs/index.js +6 -6
  340. package/dist/data-avi-vsvip/index.d.ts +214 -8
  341. package/dist/data-avi-vsvip/index.js +464 -6
  342. package/dist/data-avi-wafapplicationsignatureprovider/index.d.ts +7 -7
  343. package/dist/data-avi-wafapplicationsignatureprovider/index.js +6 -6
  344. package/dist/data-avi-wafcrs/index.d.ts +7 -7
  345. package/dist/data-avi-wafcrs/index.js +6 -6
  346. package/dist/data-avi-wafpolicy/index.d.ts +12 -160
  347. package/dist/data-avi-wafpolicy/index.js +24 -372
  348. package/dist/data-avi-wafpolicypsmgroup/index.d.ts +10 -7
  349. package/dist/data-avi-wafpolicypsmgroup/index.js +18 -6
  350. package/dist/data-avi-wafprofile/index.d.ts +85 -7
  351. package/dist/data-avi-wafprofile/index.js +196 -6
  352. package/dist/data-avi-webapput/index.d.ts +18 -9
  353. package/dist/data-avi-webapput/index.js +36 -13
  354. package/dist/data-avi-webhook/index.d.ts +7 -7
  355. package/dist/data-avi-webhook/index.js +6 -6
  356. package/dist/dnspolicy/index.d.ts +112 -112
  357. package/dist/dnspolicy/index.js +6 -6
  358. package/dist/dynamicdnsrecord/index.d.ts +45 -45
  359. package/dist/dynamicdnsrecord/index.js +6 -6
  360. package/dist/errorpagebody/index.d.ts +14 -14
  361. package/dist/errorpagebody/index.js +6 -6
  362. package/dist/errorpageprofile/index.d.ts +23 -23
  363. package/dist/errorpageprofile/index.js +6 -6
  364. package/dist/federationcheckpoint/index.d.ts +12 -12
  365. package/dist/federationcheckpoint/index.js +6 -6
  366. package/dist/fileobject/index.d.ts +201 -32
  367. package/dist/fileobject/index.js +454 -6
  368. package/dist/fileservice/index.d.ts +7 -7
  369. package/dist/fileservice/index.js +6 -6
  370. package/dist/geodb/index.d.ts +21 -21
  371. package/dist/geodb/index.js +6 -6
  372. package/dist/gslb/index.d.ts +321 -117
  373. package/dist/gslb/index.js +593 -60
  374. package/dist/gslbcrmruntime/index.d.ts +139 -112
  375. package/dist/gslbcrmruntime/index.js +118 -33
  376. package/dist/gslbgeodbprofile/index.d.ts +24 -112
  377. package/dist/gslbgeodbprofile/index.js +33 -278
  378. package/dist/gslbhsmruntime/index.d.ts +136 -100
  379. package/dist/gslbhsmruntime/index.js +118 -5
  380. package/dist/gslbservice/index.d.ts +301 -77
  381. package/dist/gslbservice/index.js +602 -6
  382. package/dist/gslbsmruntime/index.d.ts +308 -114
  383. package/dist/gslbsmruntime/index.js +576 -5
  384. package/dist/hardwaresecuritymodulegroup/index.d.ts +693 -53
  385. package/dist/hardwaresecuritymodulegroup/index.js +1790 -6
  386. package/dist/healthmonitor/index.d.ts +868 -168
  387. package/dist/healthmonitor/index.js +2041 -22
  388. package/dist/httppolicyset/index-structs/structs0.d.ts +354 -327
  389. package/dist/httppolicyset/index-structs/structs0.js +84 -0
  390. package/dist/httppolicyset/index-structs/structs400.d.ts +113 -104
  391. package/dist/httppolicyset/index-structs/structs400.js +28 -0
  392. package/dist/httppolicyset/index.d.ts +18 -18
  393. package/dist/httppolicyset/index.js +5 -5
  394. package/dist/icapprofile/index.d.ts +24 -24
  395. package/dist/icapprofile/index.js +6 -6
  396. package/dist/image/index.d.ts +447 -127
  397. package/dist/image/index.js +963 -88
  398. package/dist/index.d.ts +32 -2
  399. package/dist/index.js +32 -2
  400. package/dist/inventoryfaultconfig/index.d.ts +34 -25
  401. package/dist/inventoryfaultconfig/index.js +34 -6
  402. package/dist/ipaddrgroup/index.d.ts +38 -38
  403. package/dist/ipaddrgroup/index.js +6 -6
  404. package/dist/ipamdnsproviderprofile/index.d.ts +142 -151
  405. package/dist/ipamdnsproviderprofile/index.js +6 -34
  406. package/dist/ipreputationdb/index.d.ts +49 -22
  407. package/dist/ipreputationdb/index.js +75 -6
  408. package/dist/jwtserverprofile/index.d.ts +19 -19
  409. package/dist/jwtserverprofile/index.js +6 -6
  410. package/dist/l4policyset/index.d.ts +53 -53
  411. package/dist/l4policyset/index.js +6 -6
  412. package/dist/labelgroup/index.d.ts +13 -13
  413. package/dist/labelgroup/index.js +6 -6
  414. package/dist/lazy-index.js +32 -2
  415. package/dist/licenseledgerdetails/index.d.ts +166 -24
  416. package/dist/licenseledgerdetails/index.js +375 -6
  417. package/dist/licensestatus/index.d.ts +58 -22
  418. package/dist/licensestatus/index.js +118 -6
  419. package/dist/localworkerfdsversion/index.d.ts +9 -9
  420. package/dist/localworkerfdsversion/index.js +6 -5
  421. package/dist/memorybalancerrequest/index.d.ts +22 -22
  422. package/dist/memorybalancerrequest/index.js +6 -6
  423. package/dist/microservicegroup/index.d.ts +12 -12
  424. package/dist/microservicegroup/index.js +6 -6
  425. package/dist/natpolicy/index.d.ts +79 -79
  426. package/dist/natpolicy/index.js +6 -6
  427. package/dist/network/index.d.ts +38 -38
  428. package/dist/network/index.js +6 -6
  429. package/dist/networkprofile/index.d.ts +137 -66
  430. package/dist/networkprofile/index.js +198 -6
  431. package/dist/networksecuritypolicy/index.d.ts +67 -67
  432. package/dist/networksecuritypolicy/index.js +6 -6
  433. package/dist/networkservice/index.d.ts +45 -45
  434. package/dist/networkservice/index.js +6 -6
  435. package/dist/nsxtsegmentruntime/index.d.ts +25 -25
  436. package/dist/nsxtsegmentruntime/index.js +6 -6
  437. package/dist/pkiprofile/index.d.ts +114 -61
  438. package/dist/pkiprofile/index.js +142 -6
  439. package/dist/pool/index.d.ts +349 -211
  440. package/dist/pool/index.js +406 -39
  441. package/dist/poolgroup/index.d.ts +41 -41
  442. package/dist/poolgroup/index.js +6 -6
  443. package/dist/poolgroupdeploymentpolicy/index.d.ts +23 -23
  444. package/dist/poolgroupdeploymentpolicy/index.js +6 -6
  445. package/dist/positivesecuritypolicy/index.d.ts +311 -0
  446. package/dist/positivesecuritypolicy/index.js +795 -0
  447. package/dist/prioritylabels/index.d.ts +16 -16
  448. package/dist/prioritylabels/index.js +6 -6
  449. package/dist/protocolparser/index.d.ts +14 -14
  450. package/dist/protocolparser/index.js +6 -6
  451. package/dist/provider/index.d.ts +13 -13
  452. package/dist/provider/index.js +6 -6
  453. package/dist/ratelimitconfiguration/index.d.ts +227 -0
  454. package/dist/ratelimitconfiguration/index.js +553 -0
  455. package/dist/report/index.d.ts +1376 -0
  456. package/dist/report/index.js +3623 -0
  457. package/dist/reportprofile/index.d.ts +151 -0
  458. package/dist/reportprofile/index.js +380 -0
  459. package/dist/retentionpolicy/index.d.ts +49 -49
  460. package/dist/retentionpolicy/index.js +6 -5
  461. package/dist/rmcloudopsproto/index.d.ts +18 -9
  462. package/dist/rmcloudopsproto/index.js +29 -6
  463. package/dist/role/index.d.ts +23 -23
  464. package/dist/role/index.js +6 -6
  465. package/dist/scheduler/index.d.ts +18 -18
  466. package/dist/scheduler/index.js +6 -6
  467. package/dist/securitymanagerdata/index.d.ts +40 -22
  468. package/dist/securitymanagerdata/index.js +62 -6
  469. package/dist/securitypolicy/index.d.ts +33 -33
  470. package/dist/securitypolicy/index.js +6 -6
  471. package/dist/seproperties/index.d.ts +190 -181
  472. package/dist/seproperties/index.js +34 -6
  473. package/dist/server/index.d.ts +120 -43
  474. package/dist/server/index.js +207 -6
  475. package/dist/serverautoscalepolicy/index.d.ts +34 -34
  476. package/dist/serverautoscalepolicy/index.js +6 -6
  477. package/dist/serviceauthprofile/index.d.ts +17 -17
  478. package/dist/serviceauthprofile/index.js +6 -6
  479. package/dist/serviceengine/index.d.ts +153 -144
  480. package/dist/serviceengine/index.js +34 -6
  481. package/dist/serviceenginegroup/index.d.ts +775 -439
  482. package/dist/serviceenginegroup/index.js +948 -93
  483. package/dist/siteversion/index.d.ts +16 -16
  484. package/dist/siteversion/index.js +6 -6
  485. package/dist/snmptrapprofile/index.d.ts +22 -22
  486. package/dist/snmptrapprofile/index.js +6 -6
  487. package/dist/sslkeyandcertificate/index.d.ts +207 -101
  488. package/dist/sslkeyandcertificate/index.js +278 -6
  489. package/dist/sslprofile/index.d.ts +44 -35
  490. package/dist/sslprofile/index.js +29 -6
  491. package/dist/ssopolicy/index.d.ts +91 -91
  492. package/dist/ssopolicy/index.js +6 -6
  493. package/dist/statediffoperation/index.d.ts +18 -18
  494. package/dist/statediffoperation/index.js +6 -6
  495. package/dist/statediffsnapshot/index.d.ts +309 -93
  496. package/dist/statediffsnapshot/index.js +678 -6
  497. package/dist/stringgroup/index.d.ts +18 -18
  498. package/dist/stringgroup/index.js +6 -6
  499. package/dist/systemconfiguration/index.d.ts +545 -200
  500. package/dist/systemconfiguration/index.js +932 -34
  501. package/dist/systemlimits/index.d.ts +149 -122
  502. package/dist/systemlimits/index.js +174 -90
  503. package/dist/systemreport/index.d.ts +920 -72
  504. package/dist/systemreport/index.js +2341 -6
  505. package/dist/taskjournal/index.d.ts +278 -37
  506. package/dist/taskjournal/index.js +816 -134
  507. package/dist/techsupport/index.d.ts +1152 -0
  508. package/dist/techsupport/index.js +3106 -0
  509. package/dist/techsupportmessage/index.d.ts +71 -0
  510. package/dist/techsupportmessage/index.js +160 -0
  511. package/dist/techsupportprofile/index.d.ts +284 -0
  512. package/dist/techsupportprofile/index.js +706 -0
  513. package/dist/tenant/index.d.ts +82 -20
  514. package/dist/tenant/index.js +170 -6
  515. package/dist/tenantsystemconfiguration/index.d.ts +10 -10
  516. package/dist/tenantsystemconfiguration/index.js +6 -6
  517. package/dist/testsedatastorelevel1/index.d.ts +10 -10
  518. package/dist/testsedatastorelevel1/index.js +6 -6
  519. package/dist/testsedatastorelevel2/index.d.ts +10 -10
  520. package/dist/testsedatastorelevel2/index.js +6 -6
  521. package/dist/testsedatastorelevel3/index.d.ts +9 -9
  522. package/dist/testsedatastorelevel3/index.js +6 -6
  523. package/dist/trafficcloneprofile/index.d.ts +25 -25
  524. package/dist/trafficcloneprofile/index.js +6 -6
  525. package/dist/trustedhostprofile/index.d.ts +14 -14
  526. package/dist/trustedhostprofile/index.js +6 -5
  527. package/dist/upgradeprofile/index.d.ts +41 -41
  528. package/dist/upgradeprofile/index.js +26 -25
  529. package/dist/upgradestatusinfo/index.d.ts +1815 -355
  530. package/dist/upgradestatusinfo/index.js +4027 -38
  531. package/dist/upgradestatussummary/index.d.ts +26 -26
  532. package/dist/upgradestatussummary/index.js +6 -6
  533. package/dist/user/index.d.ts +42 -32
  534. package/dist/user/index.js +33 -7
  535. package/dist/useraccount/index.d.ts +11 -11
  536. package/dist/useraccount/index.js +6 -6
  537. package/dist/useraccountprofile/index.d.ts +14 -14
  538. package/dist/useraccountprofile/index.js +6 -6
  539. package/dist/vcenterserver/index.d.ts +15 -15
  540. package/dist/vcenterserver/index.js +6 -6
  541. package/dist/virtualservice/index-structs/structs0.d.ts +581 -514
  542. package/dist/virtualservice/index-structs/structs0.js +4423 -4234
  543. package/dist/virtualservice/index-structs/structs400.d.ts +689 -158
  544. package/dist/virtualservice/index-structs/structs400.js +3376 -1992
  545. package/dist/virtualservice/index.d.ts +117 -108
  546. package/dist/virtualservice/index.js +51 -28
  547. package/dist/vrfcontext/index.d.ts +117 -117
  548. package/dist/vrfcontext/index.js +6 -6
  549. package/dist/vsdatascriptset/index.d.ts +152 -32
  550. package/dist/vsdatascriptset/index.js +312 -6
  551. package/dist/vsgs/index.d.ts +14 -14
  552. package/dist/vsgs/index.js +6 -6
  553. package/dist/vsvip/index.d.ts +434 -110
  554. package/dist/vsvip/index.js +842 -6
  555. package/dist/wafapplicationsignatureprovider/index.d.ts +49 -49
  556. package/dist/wafapplicationsignatureprovider/index.js +6 -6
  557. package/dist/wafcrs/index.d.ts +69 -69
  558. package/dist/wafcrs/index.js +6 -6
  559. package/dist/wafpolicy/index.d.ts +344 -662
  560. package/dist/wafpolicy/index.js +156 -1015
  561. package/dist/wafpolicypsmgroup/index.d.ts +82 -55
  562. package/dist/wafpolicypsmgroup/index.js +80 -6
  563. package/dist/wafprofile/index.d.ts +238 -44
  564. package/dist/wafprofile/index.js +552 -6
  565. package/dist/webapput/index.d.ts +135 -126
  566. package/dist/webapput/index.js +66 -43
  567. package/dist/webhook/index.d.ts +15 -15
  568. package/dist/webhook/index.js +6 -6
  569. package/package.json +2 -2
@@ -0,0 +1,3623 @@
1
+ // https://registry.terraform.io/providers/vmware/avi/31.2.1/docs/resources/report
2
+ // generated from terraform resource schema
3
+ import * as cdktf from 'cdktf';
4
+ export function reportPreCheckChecksToTerraform(struct) {
5
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
6
+ return struct;
7
+ }
8
+ if (cdktf.isComplexElement(struct)) {
9
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
10
+ }
11
+ return {
12
+ check_code: cdktf.stringToTerraform(struct.checkCode),
13
+ description: cdktf.stringToTerraform(struct.description),
14
+ details: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.details),
15
+ duration: cdktf.stringToTerraform(struct.duration),
16
+ end_time: cdktf.stringToTerraform(struct.endTime),
17
+ error_details: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.errorDetails),
18
+ start_time: cdktf.stringToTerraform(struct.startTime),
19
+ state: cdktf.stringToTerraform(struct.state),
20
+ };
21
+ }
22
+ export function reportPreCheckChecksToHclTerraform(struct) {
23
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
24
+ return struct;
25
+ }
26
+ if (cdktf.isComplexElement(struct)) {
27
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
28
+ }
29
+ const attrs = {
30
+ check_code: {
31
+ value: cdktf.stringToHclTerraform(struct.checkCode),
32
+ isBlock: false,
33
+ type: "simple",
34
+ storageClassType: "string",
35
+ },
36
+ description: {
37
+ value: cdktf.stringToHclTerraform(struct.description),
38
+ isBlock: false,
39
+ type: "simple",
40
+ storageClassType: "string",
41
+ },
42
+ details: {
43
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.details),
44
+ isBlock: false,
45
+ type: "list",
46
+ storageClassType: "stringList",
47
+ },
48
+ duration: {
49
+ value: cdktf.stringToHclTerraform(struct.duration),
50
+ isBlock: false,
51
+ type: "simple",
52
+ storageClassType: "string",
53
+ },
54
+ end_time: {
55
+ value: cdktf.stringToHclTerraform(struct.endTime),
56
+ isBlock: false,
57
+ type: "simple",
58
+ storageClassType: "string",
59
+ },
60
+ error_details: {
61
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.errorDetails),
62
+ isBlock: false,
63
+ type: "list",
64
+ storageClassType: "stringList",
65
+ },
66
+ start_time: {
67
+ value: cdktf.stringToHclTerraform(struct.startTime),
68
+ isBlock: false,
69
+ type: "simple",
70
+ storageClassType: "string",
71
+ },
72
+ state: {
73
+ value: cdktf.stringToHclTerraform(struct.state),
74
+ isBlock: false,
75
+ type: "simple",
76
+ storageClassType: "string",
77
+ },
78
+ };
79
+ // remove undefined attributes
80
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
81
+ }
82
+ export class ReportPreCheckChecksOutputReference extends cdktf.ComplexObject {
83
+ isEmptyObject = false;
84
+ resolvableValue;
85
+ /**
86
+ * @param terraformResource The parent resource
87
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
88
+ * @param complexObjectIndex the index of this item in the list
89
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
90
+ */
91
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
92
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
93
+ }
94
+ get internalValue() {
95
+ if (this.resolvableValue) {
96
+ return this.resolvableValue;
97
+ }
98
+ let hasAnyValues = this.isEmptyObject;
99
+ const internalValueResult = {};
100
+ if (this._checkCode !== undefined) {
101
+ hasAnyValues = true;
102
+ internalValueResult.checkCode = this._checkCode;
103
+ }
104
+ if (this._description !== undefined) {
105
+ hasAnyValues = true;
106
+ internalValueResult.description = this._description;
107
+ }
108
+ if (this._details !== undefined) {
109
+ hasAnyValues = true;
110
+ internalValueResult.details = this._details;
111
+ }
112
+ if (this._duration !== undefined) {
113
+ hasAnyValues = true;
114
+ internalValueResult.duration = this._duration;
115
+ }
116
+ if (this._endTime !== undefined) {
117
+ hasAnyValues = true;
118
+ internalValueResult.endTime = this._endTime;
119
+ }
120
+ if (this._errorDetails !== undefined) {
121
+ hasAnyValues = true;
122
+ internalValueResult.errorDetails = this._errorDetails;
123
+ }
124
+ if (this._startTime !== undefined) {
125
+ hasAnyValues = true;
126
+ internalValueResult.startTime = this._startTime;
127
+ }
128
+ if (this._state !== undefined) {
129
+ hasAnyValues = true;
130
+ internalValueResult.state = this._state;
131
+ }
132
+ return hasAnyValues ? internalValueResult : undefined;
133
+ }
134
+ set internalValue(value) {
135
+ if (value === undefined) {
136
+ this.isEmptyObject = false;
137
+ this.resolvableValue = undefined;
138
+ this._checkCode = undefined;
139
+ this._description = undefined;
140
+ this._details = undefined;
141
+ this._duration = undefined;
142
+ this._endTime = undefined;
143
+ this._errorDetails = undefined;
144
+ this._startTime = undefined;
145
+ this._state = undefined;
146
+ }
147
+ else if (cdktf.Tokenization.isResolvable(value)) {
148
+ this.isEmptyObject = false;
149
+ this.resolvableValue = value;
150
+ }
151
+ else {
152
+ this.isEmptyObject = Object.keys(value).length === 0;
153
+ this.resolvableValue = undefined;
154
+ this._checkCode = value.checkCode;
155
+ this._description = value.description;
156
+ this._details = value.details;
157
+ this._duration = value.duration;
158
+ this._endTime = value.endTime;
159
+ this._errorDetails = value.errorDetails;
160
+ this._startTime = value.startTime;
161
+ this._state = value.state;
162
+ }
163
+ }
164
+ // check_code - computed: true, optional: true, required: false
165
+ _checkCode;
166
+ get checkCode() {
167
+ return this.getStringAttribute('check_code');
168
+ }
169
+ set checkCode(value) {
170
+ this._checkCode = value;
171
+ }
172
+ resetCheckCode() {
173
+ this._checkCode = undefined;
174
+ }
175
+ // Temporarily expose input value. Use with caution.
176
+ get checkCodeInput() {
177
+ return this._checkCode;
178
+ }
179
+ // description - computed: true, optional: true, required: false
180
+ _description;
181
+ get description() {
182
+ return this.getStringAttribute('description');
183
+ }
184
+ set description(value) {
185
+ this._description = value;
186
+ }
187
+ resetDescription() {
188
+ this._description = undefined;
189
+ }
190
+ // Temporarily expose input value. Use with caution.
191
+ get descriptionInput() {
192
+ return this._description;
193
+ }
194
+ // details - computed: false, optional: true, required: false
195
+ _details;
196
+ get details() {
197
+ return this.getListAttribute('details');
198
+ }
199
+ set details(value) {
200
+ this._details = value;
201
+ }
202
+ resetDetails() {
203
+ this._details = undefined;
204
+ }
205
+ // Temporarily expose input value. Use with caution.
206
+ get detailsInput() {
207
+ return this._details;
208
+ }
209
+ // duration - computed: true, optional: true, required: false
210
+ _duration;
211
+ get duration() {
212
+ return this.getStringAttribute('duration');
213
+ }
214
+ set duration(value) {
215
+ this._duration = value;
216
+ }
217
+ resetDuration() {
218
+ this._duration = undefined;
219
+ }
220
+ // Temporarily expose input value. Use with caution.
221
+ get durationInput() {
222
+ return this._duration;
223
+ }
224
+ // end_time - computed: true, optional: true, required: false
225
+ _endTime;
226
+ get endTime() {
227
+ return this.getStringAttribute('end_time');
228
+ }
229
+ set endTime(value) {
230
+ this._endTime = value;
231
+ }
232
+ resetEndTime() {
233
+ this._endTime = undefined;
234
+ }
235
+ // Temporarily expose input value. Use with caution.
236
+ get endTimeInput() {
237
+ return this._endTime;
238
+ }
239
+ // error_details - computed: false, optional: true, required: false
240
+ _errorDetails;
241
+ get errorDetails() {
242
+ return this.getListAttribute('error_details');
243
+ }
244
+ set errorDetails(value) {
245
+ this._errorDetails = value;
246
+ }
247
+ resetErrorDetails() {
248
+ this._errorDetails = undefined;
249
+ }
250
+ // Temporarily expose input value. Use with caution.
251
+ get errorDetailsInput() {
252
+ return this._errorDetails;
253
+ }
254
+ // start_time - computed: true, optional: true, required: false
255
+ _startTime;
256
+ get startTime() {
257
+ return this.getStringAttribute('start_time');
258
+ }
259
+ set startTime(value) {
260
+ this._startTime = value;
261
+ }
262
+ resetStartTime() {
263
+ this._startTime = undefined;
264
+ }
265
+ // Temporarily expose input value. Use with caution.
266
+ get startTimeInput() {
267
+ return this._startTime;
268
+ }
269
+ // state - computed: true, optional: true, required: false
270
+ _state;
271
+ get state() {
272
+ return this.getStringAttribute('state');
273
+ }
274
+ set state(value) {
275
+ this._state = value;
276
+ }
277
+ resetState() {
278
+ this._state = undefined;
279
+ }
280
+ // Temporarily expose input value. Use with caution.
281
+ get stateInput() {
282
+ return this._state;
283
+ }
284
+ }
285
+ export class ReportPreCheckChecksList extends cdktf.ComplexList {
286
+ terraformResource;
287
+ terraformAttribute;
288
+ wrapsSet;
289
+ internalValue;
290
+ /**
291
+ * @param terraformResource The parent resource
292
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
293
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
294
+ */
295
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
296
+ super(terraformResource, terraformAttribute, wrapsSet);
297
+ this.terraformResource = terraformResource;
298
+ this.terraformAttribute = terraformAttribute;
299
+ this.wrapsSet = wrapsSet;
300
+ }
301
+ /**
302
+ * @param index the index of the item to return
303
+ */
304
+ get(index) {
305
+ return new ReportPreCheckChecksOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
306
+ }
307
+ }
308
+ export function reportPreCheckStateLastChangedTimeToTerraform(struct) {
309
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
310
+ return struct;
311
+ }
312
+ if (cdktf.isComplexElement(struct)) {
313
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
314
+ }
315
+ return {
316
+ secs: cdktf.stringToTerraform(struct.secs),
317
+ usecs: cdktf.stringToTerraform(struct.usecs),
318
+ };
319
+ }
320
+ export function reportPreCheckStateLastChangedTimeToHclTerraform(struct) {
321
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
322
+ return struct;
323
+ }
324
+ if (cdktf.isComplexElement(struct)) {
325
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
326
+ }
327
+ const attrs = {
328
+ secs: {
329
+ value: cdktf.stringToHclTerraform(struct.secs),
330
+ isBlock: false,
331
+ type: "simple",
332
+ storageClassType: "string",
333
+ },
334
+ usecs: {
335
+ value: cdktf.stringToHclTerraform(struct.usecs),
336
+ isBlock: false,
337
+ type: "simple",
338
+ storageClassType: "string",
339
+ },
340
+ };
341
+ // remove undefined attributes
342
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
343
+ }
344
+ export class ReportPreCheckStateLastChangedTimeOutputReference extends cdktf.ComplexObject {
345
+ isEmptyObject = false;
346
+ resolvableValue;
347
+ /**
348
+ * @param terraformResource The parent resource
349
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
350
+ * @param complexObjectIndex the index of this item in the list
351
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
352
+ */
353
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
354
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
355
+ }
356
+ get internalValue() {
357
+ if (this.resolvableValue) {
358
+ return this.resolvableValue;
359
+ }
360
+ let hasAnyValues = this.isEmptyObject;
361
+ const internalValueResult = {};
362
+ if (this._secs !== undefined) {
363
+ hasAnyValues = true;
364
+ internalValueResult.secs = this._secs;
365
+ }
366
+ if (this._usecs !== undefined) {
367
+ hasAnyValues = true;
368
+ internalValueResult.usecs = this._usecs;
369
+ }
370
+ return hasAnyValues ? internalValueResult : undefined;
371
+ }
372
+ set internalValue(value) {
373
+ if (value === undefined) {
374
+ this.isEmptyObject = false;
375
+ this.resolvableValue = undefined;
376
+ this._secs = undefined;
377
+ this._usecs = undefined;
378
+ }
379
+ else if (cdktf.Tokenization.isResolvable(value)) {
380
+ this.isEmptyObject = false;
381
+ this.resolvableValue = value;
382
+ }
383
+ else {
384
+ this.isEmptyObject = Object.keys(value).length === 0;
385
+ this.resolvableValue = undefined;
386
+ this._secs = value.secs;
387
+ this._usecs = value.usecs;
388
+ }
389
+ }
390
+ // secs - computed: false, optional: false, required: true
391
+ _secs;
392
+ get secs() {
393
+ return this.getStringAttribute('secs');
394
+ }
395
+ set secs(value) {
396
+ this._secs = value;
397
+ }
398
+ // Temporarily expose input value. Use with caution.
399
+ get secsInput() {
400
+ return this._secs;
401
+ }
402
+ // usecs - computed: false, optional: false, required: true
403
+ _usecs;
404
+ get usecs() {
405
+ return this.getStringAttribute('usecs');
406
+ }
407
+ set usecs(value) {
408
+ this._usecs = value;
409
+ }
410
+ // Temporarily expose input value. Use with caution.
411
+ get usecsInput() {
412
+ return this._usecs;
413
+ }
414
+ }
415
+ export class ReportPreCheckStateLastChangedTimeList extends cdktf.ComplexList {
416
+ terraformResource;
417
+ terraformAttribute;
418
+ wrapsSet;
419
+ internalValue;
420
+ /**
421
+ * @param terraformResource The parent resource
422
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
423
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
424
+ */
425
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
426
+ super(terraformResource, terraformAttribute, wrapsSet);
427
+ this.terraformResource = terraformResource;
428
+ this.terraformAttribute = terraformAttribute;
429
+ this.wrapsSet = wrapsSet;
430
+ }
431
+ /**
432
+ * @param index the index of the item to return
433
+ */
434
+ get(index) {
435
+ return new ReportPreCheckStateLastChangedTimeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
436
+ }
437
+ }
438
+ export function reportPreCheckStateToTerraform(struct) {
439
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
440
+ return struct;
441
+ }
442
+ if (cdktf.isComplexElement(struct)) {
443
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
444
+ }
445
+ return {
446
+ reason: cdktf.stringToTerraform(struct.reason),
447
+ state: cdktf.stringToTerraform(struct.state),
448
+ last_changed_time: cdktf.listMapper(reportPreCheckStateLastChangedTimeToTerraform, true)(struct.lastChangedTime),
449
+ };
450
+ }
451
+ export function reportPreCheckStateToHclTerraform(struct) {
452
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
453
+ return struct;
454
+ }
455
+ if (cdktf.isComplexElement(struct)) {
456
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
457
+ }
458
+ const attrs = {
459
+ reason: {
460
+ value: cdktf.stringToHclTerraform(struct.reason),
461
+ isBlock: false,
462
+ type: "simple",
463
+ storageClassType: "string",
464
+ },
465
+ state: {
466
+ value: cdktf.stringToHclTerraform(struct.state),
467
+ isBlock: false,
468
+ type: "simple",
469
+ storageClassType: "string",
470
+ },
471
+ last_changed_time: {
472
+ value: cdktf.listMapperHcl(reportPreCheckStateLastChangedTimeToHclTerraform, true)(struct.lastChangedTime),
473
+ isBlock: true,
474
+ type: "set",
475
+ storageClassType: "ReportPreCheckStateLastChangedTimeList",
476
+ },
477
+ };
478
+ // remove undefined attributes
479
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
480
+ }
481
+ export class ReportPreCheckStateOutputReference extends cdktf.ComplexObject {
482
+ isEmptyObject = false;
483
+ resolvableValue;
484
+ /**
485
+ * @param terraformResource The parent resource
486
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
487
+ * @param complexObjectIndex the index of this item in the list
488
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
489
+ */
490
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
491
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
492
+ }
493
+ get internalValue() {
494
+ if (this.resolvableValue) {
495
+ return this.resolvableValue;
496
+ }
497
+ let hasAnyValues = this.isEmptyObject;
498
+ const internalValueResult = {};
499
+ if (this._reason !== undefined) {
500
+ hasAnyValues = true;
501
+ internalValueResult.reason = this._reason;
502
+ }
503
+ if (this._state !== undefined) {
504
+ hasAnyValues = true;
505
+ internalValueResult.state = this._state;
506
+ }
507
+ if (this._lastChangedTime?.internalValue !== undefined) {
508
+ hasAnyValues = true;
509
+ internalValueResult.lastChangedTime = this._lastChangedTime?.internalValue;
510
+ }
511
+ return hasAnyValues ? internalValueResult : undefined;
512
+ }
513
+ set internalValue(value) {
514
+ if (value === undefined) {
515
+ this.isEmptyObject = false;
516
+ this.resolvableValue = undefined;
517
+ this._reason = undefined;
518
+ this._state = undefined;
519
+ this._lastChangedTime.internalValue = undefined;
520
+ }
521
+ else if (cdktf.Tokenization.isResolvable(value)) {
522
+ this.isEmptyObject = false;
523
+ this.resolvableValue = value;
524
+ }
525
+ else {
526
+ this.isEmptyObject = Object.keys(value).length === 0;
527
+ this.resolvableValue = undefined;
528
+ this._reason = value.reason;
529
+ this._state = value.state;
530
+ this._lastChangedTime.internalValue = value.lastChangedTime;
531
+ }
532
+ }
533
+ // reason - computed: true, optional: true, required: false
534
+ _reason;
535
+ get reason() {
536
+ return this.getStringAttribute('reason');
537
+ }
538
+ set reason(value) {
539
+ this._reason = value;
540
+ }
541
+ resetReason() {
542
+ this._reason = undefined;
543
+ }
544
+ // Temporarily expose input value. Use with caution.
545
+ get reasonInput() {
546
+ return this._reason;
547
+ }
548
+ // state - computed: true, optional: true, required: false
549
+ _state;
550
+ get state() {
551
+ return this.getStringAttribute('state');
552
+ }
553
+ set state(value) {
554
+ this._state = value;
555
+ }
556
+ resetState() {
557
+ this._state = undefined;
558
+ }
559
+ // Temporarily expose input value. Use with caution.
560
+ get stateInput() {
561
+ return this._state;
562
+ }
563
+ // last_changed_time - computed: false, optional: true, required: false
564
+ _lastChangedTime = new ReportPreCheckStateLastChangedTimeList(this, "last_changed_time", true);
565
+ get lastChangedTime() {
566
+ return this._lastChangedTime;
567
+ }
568
+ putLastChangedTime(value) {
569
+ this._lastChangedTime.internalValue = value;
570
+ }
571
+ resetLastChangedTime() {
572
+ this._lastChangedTime.internalValue = undefined;
573
+ }
574
+ // Temporarily expose input value. Use with caution.
575
+ get lastChangedTimeInput() {
576
+ return this._lastChangedTime.internalValue;
577
+ }
578
+ }
579
+ export class ReportPreCheckStateList extends cdktf.ComplexList {
580
+ terraformResource;
581
+ terraformAttribute;
582
+ wrapsSet;
583
+ internalValue;
584
+ /**
585
+ * @param terraformResource The parent resource
586
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
587
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
588
+ */
589
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
590
+ super(terraformResource, terraformAttribute, wrapsSet);
591
+ this.terraformResource = terraformResource;
592
+ this.terraformAttribute = terraformAttribute;
593
+ this.wrapsSet = wrapsSet;
594
+ }
595
+ /**
596
+ * @param index the index of the item to return
597
+ */
598
+ get(index) {
599
+ return new ReportPreCheckStateOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
600
+ }
601
+ }
602
+ export function reportPreCheckToTerraform(struct) {
603
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
604
+ return struct;
605
+ }
606
+ if (cdktf.isComplexElement(struct)) {
607
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
608
+ }
609
+ return {
610
+ checks_completed: cdktf.stringToTerraform(struct.checksCompleted),
611
+ duration: cdktf.stringToTerraform(struct.duration),
612
+ end_time: cdktf.stringToTerraform(struct.endTime),
613
+ progress: cdktf.stringToTerraform(struct.progress),
614
+ start_time: cdktf.stringToTerraform(struct.startTime),
615
+ total_checks: cdktf.stringToTerraform(struct.totalChecks),
616
+ checks: cdktf.listMapper(reportPreCheckChecksToTerraform, true)(struct.checks),
617
+ state: cdktf.listMapper(reportPreCheckStateToTerraform, true)(struct.state),
618
+ };
619
+ }
620
+ export function reportPreCheckToHclTerraform(struct) {
621
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
622
+ return struct;
623
+ }
624
+ if (cdktf.isComplexElement(struct)) {
625
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
626
+ }
627
+ const attrs = {
628
+ checks_completed: {
629
+ value: cdktf.stringToHclTerraform(struct.checksCompleted),
630
+ isBlock: false,
631
+ type: "simple",
632
+ storageClassType: "string",
633
+ },
634
+ duration: {
635
+ value: cdktf.stringToHclTerraform(struct.duration),
636
+ isBlock: false,
637
+ type: "simple",
638
+ storageClassType: "string",
639
+ },
640
+ end_time: {
641
+ value: cdktf.stringToHclTerraform(struct.endTime),
642
+ isBlock: false,
643
+ type: "simple",
644
+ storageClassType: "string",
645
+ },
646
+ progress: {
647
+ value: cdktf.stringToHclTerraform(struct.progress),
648
+ isBlock: false,
649
+ type: "simple",
650
+ storageClassType: "string",
651
+ },
652
+ start_time: {
653
+ value: cdktf.stringToHclTerraform(struct.startTime),
654
+ isBlock: false,
655
+ type: "simple",
656
+ storageClassType: "string",
657
+ },
658
+ total_checks: {
659
+ value: cdktf.stringToHclTerraform(struct.totalChecks),
660
+ isBlock: false,
661
+ type: "simple",
662
+ storageClassType: "string",
663
+ },
664
+ checks: {
665
+ value: cdktf.listMapperHcl(reportPreCheckChecksToHclTerraform, true)(struct.checks),
666
+ isBlock: true,
667
+ type: "list",
668
+ storageClassType: "ReportPreCheckChecksList",
669
+ },
670
+ state: {
671
+ value: cdktf.listMapperHcl(reportPreCheckStateToHclTerraform, true)(struct.state),
672
+ isBlock: true,
673
+ type: "set",
674
+ storageClassType: "ReportPreCheckStateList",
675
+ },
676
+ };
677
+ // remove undefined attributes
678
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
679
+ }
680
+ export class ReportPreCheckOutputReference extends cdktf.ComplexObject {
681
+ isEmptyObject = false;
682
+ resolvableValue;
683
+ /**
684
+ * @param terraformResource The parent resource
685
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
686
+ * @param complexObjectIndex the index of this item in the list
687
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
688
+ */
689
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
690
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
691
+ }
692
+ get internalValue() {
693
+ if (this.resolvableValue) {
694
+ return this.resolvableValue;
695
+ }
696
+ let hasAnyValues = this.isEmptyObject;
697
+ const internalValueResult = {};
698
+ if (this._checksCompleted !== undefined) {
699
+ hasAnyValues = true;
700
+ internalValueResult.checksCompleted = this._checksCompleted;
701
+ }
702
+ if (this._duration !== undefined) {
703
+ hasAnyValues = true;
704
+ internalValueResult.duration = this._duration;
705
+ }
706
+ if (this._endTime !== undefined) {
707
+ hasAnyValues = true;
708
+ internalValueResult.endTime = this._endTime;
709
+ }
710
+ if (this._progress !== undefined) {
711
+ hasAnyValues = true;
712
+ internalValueResult.progress = this._progress;
713
+ }
714
+ if (this._startTime !== undefined) {
715
+ hasAnyValues = true;
716
+ internalValueResult.startTime = this._startTime;
717
+ }
718
+ if (this._totalChecks !== undefined) {
719
+ hasAnyValues = true;
720
+ internalValueResult.totalChecks = this._totalChecks;
721
+ }
722
+ if (this._checks?.internalValue !== undefined) {
723
+ hasAnyValues = true;
724
+ internalValueResult.checks = this._checks?.internalValue;
725
+ }
726
+ if (this._state?.internalValue !== undefined) {
727
+ hasAnyValues = true;
728
+ internalValueResult.state = this._state?.internalValue;
729
+ }
730
+ return hasAnyValues ? internalValueResult : undefined;
731
+ }
732
+ set internalValue(value) {
733
+ if (value === undefined) {
734
+ this.isEmptyObject = false;
735
+ this.resolvableValue = undefined;
736
+ this._checksCompleted = undefined;
737
+ this._duration = undefined;
738
+ this._endTime = undefined;
739
+ this._progress = undefined;
740
+ this._startTime = undefined;
741
+ this._totalChecks = undefined;
742
+ this._checks.internalValue = undefined;
743
+ this._state.internalValue = undefined;
744
+ }
745
+ else if (cdktf.Tokenization.isResolvable(value)) {
746
+ this.isEmptyObject = false;
747
+ this.resolvableValue = value;
748
+ }
749
+ else {
750
+ this.isEmptyObject = Object.keys(value).length === 0;
751
+ this.resolvableValue = undefined;
752
+ this._checksCompleted = value.checksCompleted;
753
+ this._duration = value.duration;
754
+ this._endTime = value.endTime;
755
+ this._progress = value.progress;
756
+ this._startTime = value.startTime;
757
+ this._totalChecks = value.totalChecks;
758
+ this._checks.internalValue = value.checks;
759
+ this._state.internalValue = value.state;
760
+ }
761
+ }
762
+ // checks_completed - computed: true, optional: true, required: false
763
+ _checksCompleted;
764
+ get checksCompleted() {
765
+ return this.getStringAttribute('checks_completed');
766
+ }
767
+ set checksCompleted(value) {
768
+ this._checksCompleted = value;
769
+ }
770
+ resetChecksCompleted() {
771
+ this._checksCompleted = undefined;
772
+ }
773
+ // Temporarily expose input value. Use with caution.
774
+ get checksCompletedInput() {
775
+ return this._checksCompleted;
776
+ }
777
+ // duration - computed: true, optional: true, required: false
778
+ _duration;
779
+ get duration() {
780
+ return this.getStringAttribute('duration');
781
+ }
782
+ set duration(value) {
783
+ this._duration = value;
784
+ }
785
+ resetDuration() {
786
+ this._duration = undefined;
787
+ }
788
+ // Temporarily expose input value. Use with caution.
789
+ get durationInput() {
790
+ return this._duration;
791
+ }
792
+ // end_time - computed: true, optional: true, required: false
793
+ _endTime;
794
+ get endTime() {
795
+ return this.getStringAttribute('end_time');
796
+ }
797
+ set endTime(value) {
798
+ this._endTime = value;
799
+ }
800
+ resetEndTime() {
801
+ this._endTime = undefined;
802
+ }
803
+ // Temporarily expose input value. Use with caution.
804
+ get endTimeInput() {
805
+ return this._endTime;
806
+ }
807
+ // progress - computed: false, optional: true, required: false
808
+ _progress;
809
+ get progress() {
810
+ return this.getStringAttribute('progress');
811
+ }
812
+ set progress(value) {
813
+ this._progress = value;
814
+ }
815
+ resetProgress() {
816
+ this._progress = undefined;
817
+ }
818
+ // Temporarily expose input value. Use with caution.
819
+ get progressInput() {
820
+ return this._progress;
821
+ }
822
+ // start_time - computed: true, optional: true, required: false
823
+ _startTime;
824
+ get startTime() {
825
+ return this.getStringAttribute('start_time');
826
+ }
827
+ set startTime(value) {
828
+ this._startTime = value;
829
+ }
830
+ resetStartTime() {
831
+ this._startTime = undefined;
832
+ }
833
+ // Temporarily expose input value. Use with caution.
834
+ get startTimeInput() {
835
+ return this._startTime;
836
+ }
837
+ // total_checks - computed: true, optional: true, required: false
838
+ _totalChecks;
839
+ get totalChecks() {
840
+ return this.getStringAttribute('total_checks');
841
+ }
842
+ set totalChecks(value) {
843
+ this._totalChecks = value;
844
+ }
845
+ resetTotalChecks() {
846
+ this._totalChecks = undefined;
847
+ }
848
+ // Temporarily expose input value. Use with caution.
849
+ get totalChecksInput() {
850
+ return this._totalChecks;
851
+ }
852
+ // checks - computed: false, optional: true, required: false
853
+ _checks = new ReportPreCheckChecksList(this, "checks", false);
854
+ get checks() {
855
+ return this._checks;
856
+ }
857
+ putChecks(value) {
858
+ this._checks.internalValue = value;
859
+ }
860
+ resetChecks() {
861
+ this._checks.internalValue = undefined;
862
+ }
863
+ // Temporarily expose input value. Use with caution.
864
+ get checksInput() {
865
+ return this._checks.internalValue;
866
+ }
867
+ // state - computed: false, optional: true, required: false
868
+ _state = new ReportPreCheckStateList(this, "state", true);
869
+ get state() {
870
+ return this._state;
871
+ }
872
+ putState(value) {
873
+ this._state.internalValue = value;
874
+ }
875
+ resetState() {
876
+ this._state.internalValue = undefined;
877
+ }
878
+ // Temporarily expose input value. Use with caution.
879
+ get stateInput() {
880
+ return this._state.internalValue;
881
+ }
882
+ }
883
+ export class ReportPreCheckList extends cdktf.ComplexList {
884
+ terraformResource;
885
+ terraformAttribute;
886
+ wrapsSet;
887
+ internalValue;
888
+ /**
889
+ * @param terraformResource The parent resource
890
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
891
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
892
+ */
893
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
894
+ super(terraformResource, terraformAttribute, wrapsSet);
895
+ this.terraformResource = terraformResource;
896
+ this.terraformAttribute = terraformAttribute;
897
+ this.wrapsSet = wrapsSet;
898
+ }
899
+ /**
900
+ * @param index the index of the item to return
901
+ */
902
+ get(index) {
903
+ return new ReportPreCheckOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
904
+ }
905
+ }
906
+ export function reportRequestDurationEndTimeToTerraform(struct) {
907
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
908
+ return struct;
909
+ }
910
+ if (cdktf.isComplexElement(struct)) {
911
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
912
+ }
913
+ return {
914
+ secs: cdktf.stringToTerraform(struct.secs),
915
+ usecs: cdktf.stringToTerraform(struct.usecs),
916
+ };
917
+ }
918
+ export function reportRequestDurationEndTimeToHclTerraform(struct) {
919
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
920
+ return struct;
921
+ }
922
+ if (cdktf.isComplexElement(struct)) {
923
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
924
+ }
925
+ const attrs = {
926
+ secs: {
927
+ value: cdktf.stringToHclTerraform(struct.secs),
928
+ isBlock: false,
929
+ type: "simple",
930
+ storageClassType: "string",
931
+ },
932
+ usecs: {
933
+ value: cdktf.stringToHclTerraform(struct.usecs),
934
+ isBlock: false,
935
+ type: "simple",
936
+ storageClassType: "string",
937
+ },
938
+ };
939
+ // remove undefined attributes
940
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
941
+ }
942
+ export class ReportRequestDurationEndTimeOutputReference extends cdktf.ComplexObject {
943
+ isEmptyObject = false;
944
+ resolvableValue;
945
+ /**
946
+ * @param terraformResource The parent resource
947
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
948
+ * @param complexObjectIndex the index of this item in the list
949
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
950
+ */
951
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
952
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
953
+ }
954
+ get internalValue() {
955
+ if (this.resolvableValue) {
956
+ return this.resolvableValue;
957
+ }
958
+ let hasAnyValues = this.isEmptyObject;
959
+ const internalValueResult = {};
960
+ if (this._secs !== undefined) {
961
+ hasAnyValues = true;
962
+ internalValueResult.secs = this._secs;
963
+ }
964
+ if (this._usecs !== undefined) {
965
+ hasAnyValues = true;
966
+ internalValueResult.usecs = this._usecs;
967
+ }
968
+ return hasAnyValues ? internalValueResult : undefined;
969
+ }
970
+ set internalValue(value) {
971
+ if (value === undefined) {
972
+ this.isEmptyObject = false;
973
+ this.resolvableValue = undefined;
974
+ this._secs = undefined;
975
+ this._usecs = undefined;
976
+ }
977
+ else if (cdktf.Tokenization.isResolvable(value)) {
978
+ this.isEmptyObject = false;
979
+ this.resolvableValue = value;
980
+ }
981
+ else {
982
+ this.isEmptyObject = Object.keys(value).length === 0;
983
+ this.resolvableValue = undefined;
984
+ this._secs = value.secs;
985
+ this._usecs = value.usecs;
986
+ }
987
+ }
988
+ // secs - computed: false, optional: false, required: true
989
+ _secs;
990
+ get secs() {
991
+ return this.getStringAttribute('secs');
992
+ }
993
+ set secs(value) {
994
+ this._secs = value;
995
+ }
996
+ // Temporarily expose input value. Use with caution.
997
+ get secsInput() {
998
+ return this._secs;
999
+ }
1000
+ // usecs - computed: false, optional: false, required: true
1001
+ _usecs;
1002
+ get usecs() {
1003
+ return this.getStringAttribute('usecs');
1004
+ }
1005
+ set usecs(value) {
1006
+ this._usecs = value;
1007
+ }
1008
+ // Temporarily expose input value. Use with caution.
1009
+ get usecsInput() {
1010
+ return this._usecs;
1011
+ }
1012
+ }
1013
+ export class ReportRequestDurationEndTimeList extends cdktf.ComplexList {
1014
+ terraformResource;
1015
+ terraformAttribute;
1016
+ wrapsSet;
1017
+ internalValue;
1018
+ /**
1019
+ * @param terraformResource The parent resource
1020
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1021
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
1022
+ */
1023
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
1024
+ super(terraformResource, terraformAttribute, wrapsSet);
1025
+ this.terraformResource = terraformResource;
1026
+ this.terraformAttribute = terraformAttribute;
1027
+ this.wrapsSet = wrapsSet;
1028
+ }
1029
+ /**
1030
+ * @param index the index of the item to return
1031
+ */
1032
+ get(index) {
1033
+ return new ReportRequestDurationEndTimeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
1034
+ }
1035
+ }
1036
+ export function reportRequestDurationStartTimeToTerraform(struct) {
1037
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1038
+ return struct;
1039
+ }
1040
+ if (cdktf.isComplexElement(struct)) {
1041
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1042
+ }
1043
+ return {
1044
+ secs: cdktf.stringToTerraform(struct.secs),
1045
+ usecs: cdktf.stringToTerraform(struct.usecs),
1046
+ };
1047
+ }
1048
+ export function reportRequestDurationStartTimeToHclTerraform(struct) {
1049
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1050
+ return struct;
1051
+ }
1052
+ if (cdktf.isComplexElement(struct)) {
1053
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1054
+ }
1055
+ const attrs = {
1056
+ secs: {
1057
+ value: cdktf.stringToHclTerraform(struct.secs),
1058
+ isBlock: false,
1059
+ type: "simple",
1060
+ storageClassType: "string",
1061
+ },
1062
+ usecs: {
1063
+ value: cdktf.stringToHclTerraform(struct.usecs),
1064
+ isBlock: false,
1065
+ type: "simple",
1066
+ storageClassType: "string",
1067
+ },
1068
+ };
1069
+ // remove undefined attributes
1070
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1071
+ }
1072
+ export class ReportRequestDurationStartTimeOutputReference extends cdktf.ComplexObject {
1073
+ isEmptyObject = false;
1074
+ resolvableValue;
1075
+ /**
1076
+ * @param terraformResource The parent resource
1077
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1078
+ * @param complexObjectIndex the index of this item in the list
1079
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
1080
+ */
1081
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
1082
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
1083
+ }
1084
+ get internalValue() {
1085
+ if (this.resolvableValue) {
1086
+ return this.resolvableValue;
1087
+ }
1088
+ let hasAnyValues = this.isEmptyObject;
1089
+ const internalValueResult = {};
1090
+ if (this._secs !== undefined) {
1091
+ hasAnyValues = true;
1092
+ internalValueResult.secs = this._secs;
1093
+ }
1094
+ if (this._usecs !== undefined) {
1095
+ hasAnyValues = true;
1096
+ internalValueResult.usecs = this._usecs;
1097
+ }
1098
+ return hasAnyValues ? internalValueResult : undefined;
1099
+ }
1100
+ set internalValue(value) {
1101
+ if (value === undefined) {
1102
+ this.isEmptyObject = false;
1103
+ this.resolvableValue = undefined;
1104
+ this._secs = undefined;
1105
+ this._usecs = undefined;
1106
+ }
1107
+ else if (cdktf.Tokenization.isResolvable(value)) {
1108
+ this.isEmptyObject = false;
1109
+ this.resolvableValue = value;
1110
+ }
1111
+ else {
1112
+ this.isEmptyObject = Object.keys(value).length === 0;
1113
+ this.resolvableValue = undefined;
1114
+ this._secs = value.secs;
1115
+ this._usecs = value.usecs;
1116
+ }
1117
+ }
1118
+ // secs - computed: false, optional: false, required: true
1119
+ _secs;
1120
+ get secs() {
1121
+ return this.getStringAttribute('secs');
1122
+ }
1123
+ set secs(value) {
1124
+ this._secs = value;
1125
+ }
1126
+ // Temporarily expose input value. Use with caution.
1127
+ get secsInput() {
1128
+ return this._secs;
1129
+ }
1130
+ // usecs - computed: false, optional: false, required: true
1131
+ _usecs;
1132
+ get usecs() {
1133
+ return this.getStringAttribute('usecs');
1134
+ }
1135
+ set usecs(value) {
1136
+ this._usecs = value;
1137
+ }
1138
+ // Temporarily expose input value. Use with caution.
1139
+ get usecsInput() {
1140
+ return this._usecs;
1141
+ }
1142
+ }
1143
+ export class ReportRequestDurationStartTimeList extends cdktf.ComplexList {
1144
+ terraformResource;
1145
+ terraformAttribute;
1146
+ wrapsSet;
1147
+ internalValue;
1148
+ /**
1149
+ * @param terraformResource The parent resource
1150
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1151
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
1152
+ */
1153
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
1154
+ super(terraformResource, terraformAttribute, wrapsSet);
1155
+ this.terraformResource = terraformResource;
1156
+ this.terraformAttribute = terraformAttribute;
1157
+ this.wrapsSet = wrapsSet;
1158
+ }
1159
+ /**
1160
+ * @param index the index of the item to return
1161
+ */
1162
+ get(index) {
1163
+ return new ReportRequestDurationStartTimeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
1164
+ }
1165
+ }
1166
+ export function reportRequestDurationToTerraform(struct) {
1167
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1168
+ return struct;
1169
+ }
1170
+ if (cdktf.isComplexElement(struct)) {
1171
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1172
+ }
1173
+ return {
1174
+ period: cdktf.stringToTerraform(struct.period),
1175
+ end_time: cdktf.listMapper(reportRequestDurationEndTimeToTerraform, true)(struct.endTime),
1176
+ start_time: cdktf.listMapper(reportRequestDurationStartTimeToTerraform, true)(struct.startTime),
1177
+ };
1178
+ }
1179
+ export function reportRequestDurationToHclTerraform(struct) {
1180
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1181
+ return struct;
1182
+ }
1183
+ if (cdktf.isComplexElement(struct)) {
1184
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1185
+ }
1186
+ const attrs = {
1187
+ period: {
1188
+ value: cdktf.stringToHclTerraform(struct.period),
1189
+ isBlock: false,
1190
+ type: "simple",
1191
+ storageClassType: "string",
1192
+ },
1193
+ end_time: {
1194
+ value: cdktf.listMapperHcl(reportRequestDurationEndTimeToHclTerraform, true)(struct.endTime),
1195
+ isBlock: true,
1196
+ type: "set",
1197
+ storageClassType: "ReportRequestDurationEndTimeList",
1198
+ },
1199
+ start_time: {
1200
+ value: cdktf.listMapperHcl(reportRequestDurationStartTimeToHclTerraform, true)(struct.startTime),
1201
+ isBlock: true,
1202
+ type: "set",
1203
+ storageClassType: "ReportRequestDurationStartTimeList",
1204
+ },
1205
+ };
1206
+ // remove undefined attributes
1207
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1208
+ }
1209
+ export class ReportRequestDurationOutputReference extends cdktf.ComplexObject {
1210
+ isEmptyObject = false;
1211
+ resolvableValue;
1212
+ /**
1213
+ * @param terraformResource The parent resource
1214
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1215
+ * @param complexObjectIndex the index of this item in the list
1216
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
1217
+ */
1218
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
1219
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
1220
+ }
1221
+ get internalValue() {
1222
+ if (this.resolvableValue) {
1223
+ return this.resolvableValue;
1224
+ }
1225
+ let hasAnyValues = this.isEmptyObject;
1226
+ const internalValueResult = {};
1227
+ if (this._period !== undefined) {
1228
+ hasAnyValues = true;
1229
+ internalValueResult.period = this._period;
1230
+ }
1231
+ if (this._endTime?.internalValue !== undefined) {
1232
+ hasAnyValues = true;
1233
+ internalValueResult.endTime = this._endTime?.internalValue;
1234
+ }
1235
+ if (this._startTime?.internalValue !== undefined) {
1236
+ hasAnyValues = true;
1237
+ internalValueResult.startTime = this._startTime?.internalValue;
1238
+ }
1239
+ return hasAnyValues ? internalValueResult : undefined;
1240
+ }
1241
+ set internalValue(value) {
1242
+ if (value === undefined) {
1243
+ this.isEmptyObject = false;
1244
+ this.resolvableValue = undefined;
1245
+ this._period = undefined;
1246
+ this._endTime.internalValue = undefined;
1247
+ this._startTime.internalValue = undefined;
1248
+ }
1249
+ else if (cdktf.Tokenization.isResolvable(value)) {
1250
+ this.isEmptyObject = false;
1251
+ this.resolvableValue = value;
1252
+ }
1253
+ else {
1254
+ this.isEmptyObject = Object.keys(value).length === 0;
1255
+ this.resolvableValue = undefined;
1256
+ this._period = value.period;
1257
+ this._endTime.internalValue = value.endTime;
1258
+ this._startTime.internalValue = value.startTime;
1259
+ }
1260
+ }
1261
+ // period - computed: true, optional: true, required: false
1262
+ _period;
1263
+ get period() {
1264
+ return this.getStringAttribute('period');
1265
+ }
1266
+ set period(value) {
1267
+ this._period = value;
1268
+ }
1269
+ resetPeriod() {
1270
+ this._period = undefined;
1271
+ }
1272
+ // Temporarily expose input value. Use with caution.
1273
+ get periodInput() {
1274
+ return this._period;
1275
+ }
1276
+ // end_time - computed: false, optional: true, required: false
1277
+ _endTime = new ReportRequestDurationEndTimeList(this, "end_time", true);
1278
+ get endTime() {
1279
+ return this._endTime;
1280
+ }
1281
+ putEndTime(value) {
1282
+ this._endTime.internalValue = value;
1283
+ }
1284
+ resetEndTime() {
1285
+ this._endTime.internalValue = undefined;
1286
+ }
1287
+ // Temporarily expose input value. Use with caution.
1288
+ get endTimeInput() {
1289
+ return this._endTime.internalValue;
1290
+ }
1291
+ // start_time - computed: false, optional: true, required: false
1292
+ _startTime = new ReportRequestDurationStartTimeList(this, "start_time", true);
1293
+ get startTime() {
1294
+ return this._startTime;
1295
+ }
1296
+ putStartTime(value) {
1297
+ this._startTime.internalValue = value;
1298
+ }
1299
+ resetStartTime() {
1300
+ this._startTime.internalValue = undefined;
1301
+ }
1302
+ // Temporarily expose input value. Use with caution.
1303
+ get startTimeInput() {
1304
+ return this._startTime.internalValue;
1305
+ }
1306
+ }
1307
+ export class ReportRequestDurationList extends cdktf.ComplexList {
1308
+ terraformResource;
1309
+ terraformAttribute;
1310
+ wrapsSet;
1311
+ internalValue;
1312
+ /**
1313
+ * @param terraformResource The parent resource
1314
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1315
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
1316
+ */
1317
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
1318
+ super(terraformResource, terraformAttribute, wrapsSet);
1319
+ this.terraformResource = terraformResource;
1320
+ this.terraformAttribute = terraformAttribute;
1321
+ this.wrapsSet = wrapsSet;
1322
+ }
1323
+ /**
1324
+ * @param index the index of the item to return
1325
+ */
1326
+ get(index) {
1327
+ return new ReportRequestDurationOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
1328
+ }
1329
+ }
1330
+ export function reportRequestParametersToTerraform(struct) {
1331
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1332
+ return struct;
1333
+ }
1334
+ if (cdktf.isComplexElement(struct)) {
1335
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1336
+ }
1337
+ return {
1338
+ name: cdktf.stringToTerraform(struct.name),
1339
+ value: cdktf.stringToTerraform(struct.value),
1340
+ };
1341
+ }
1342
+ export function reportRequestParametersToHclTerraform(struct) {
1343
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1344
+ return struct;
1345
+ }
1346
+ if (cdktf.isComplexElement(struct)) {
1347
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1348
+ }
1349
+ const attrs = {
1350
+ name: {
1351
+ value: cdktf.stringToHclTerraform(struct.name),
1352
+ isBlock: false,
1353
+ type: "simple",
1354
+ storageClassType: "string",
1355
+ },
1356
+ value: {
1357
+ value: cdktf.stringToHclTerraform(struct.value),
1358
+ isBlock: false,
1359
+ type: "simple",
1360
+ storageClassType: "string",
1361
+ },
1362
+ };
1363
+ // remove undefined attributes
1364
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1365
+ }
1366
+ export class ReportRequestParametersOutputReference extends cdktf.ComplexObject {
1367
+ isEmptyObject = false;
1368
+ resolvableValue;
1369
+ /**
1370
+ * @param terraformResource The parent resource
1371
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1372
+ * @param complexObjectIndex the index of this item in the list
1373
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
1374
+ */
1375
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
1376
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
1377
+ }
1378
+ get internalValue() {
1379
+ if (this.resolvableValue) {
1380
+ return this.resolvableValue;
1381
+ }
1382
+ let hasAnyValues = this.isEmptyObject;
1383
+ const internalValueResult = {};
1384
+ if (this._name !== undefined) {
1385
+ hasAnyValues = true;
1386
+ internalValueResult.name = this._name;
1387
+ }
1388
+ if (this._value !== undefined) {
1389
+ hasAnyValues = true;
1390
+ internalValueResult.value = this._value;
1391
+ }
1392
+ return hasAnyValues ? internalValueResult : undefined;
1393
+ }
1394
+ set internalValue(value) {
1395
+ if (value === undefined) {
1396
+ this.isEmptyObject = false;
1397
+ this.resolvableValue = undefined;
1398
+ this._name = undefined;
1399
+ this._value = undefined;
1400
+ }
1401
+ else if (cdktf.Tokenization.isResolvable(value)) {
1402
+ this.isEmptyObject = false;
1403
+ this.resolvableValue = value;
1404
+ }
1405
+ else {
1406
+ this.isEmptyObject = Object.keys(value).length === 0;
1407
+ this.resolvableValue = undefined;
1408
+ this._name = value.name;
1409
+ this._value = value.value;
1410
+ }
1411
+ }
1412
+ // name - computed: true, optional: true, required: false
1413
+ _name;
1414
+ get name() {
1415
+ return this.getStringAttribute('name');
1416
+ }
1417
+ set name(value) {
1418
+ this._name = value;
1419
+ }
1420
+ resetName() {
1421
+ this._name = undefined;
1422
+ }
1423
+ // Temporarily expose input value. Use with caution.
1424
+ get nameInput() {
1425
+ return this._name;
1426
+ }
1427
+ // value - computed: true, optional: true, required: false
1428
+ _value;
1429
+ get value() {
1430
+ return this.getStringAttribute('value');
1431
+ }
1432
+ set value(value) {
1433
+ this._value = value;
1434
+ }
1435
+ resetValue() {
1436
+ this._value = undefined;
1437
+ }
1438
+ // Temporarily expose input value. Use with caution.
1439
+ get valueInput() {
1440
+ return this._value;
1441
+ }
1442
+ }
1443
+ export class ReportRequestParametersList extends cdktf.ComplexList {
1444
+ terraformResource;
1445
+ terraformAttribute;
1446
+ wrapsSet;
1447
+ internalValue;
1448
+ /**
1449
+ * @param terraformResource The parent resource
1450
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1451
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
1452
+ */
1453
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
1454
+ super(terraformResource, terraformAttribute, wrapsSet);
1455
+ this.terraformResource = terraformResource;
1456
+ this.terraformAttribute = terraformAttribute;
1457
+ this.wrapsSet = wrapsSet;
1458
+ }
1459
+ /**
1460
+ * @param index the index of the item to return
1461
+ */
1462
+ get(index) {
1463
+ return new ReportRequestParametersOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
1464
+ }
1465
+ }
1466
+ export function reportRequestSectionsSubSectionsToTerraform(struct) {
1467
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1468
+ return struct;
1469
+ }
1470
+ if (cdktf.isComplexElement(struct)) {
1471
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1472
+ }
1473
+ return {
1474
+ id: cdktf.stringToTerraform(struct.id),
1475
+ };
1476
+ }
1477
+ export function reportRequestSectionsSubSectionsToHclTerraform(struct) {
1478
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1479
+ return struct;
1480
+ }
1481
+ if (cdktf.isComplexElement(struct)) {
1482
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1483
+ }
1484
+ const attrs = {
1485
+ id: {
1486
+ value: cdktf.stringToHclTerraform(struct.id),
1487
+ isBlock: false,
1488
+ type: "simple",
1489
+ storageClassType: "string",
1490
+ },
1491
+ };
1492
+ // remove undefined attributes
1493
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1494
+ }
1495
+ export class ReportRequestSectionsSubSectionsOutputReference extends cdktf.ComplexObject {
1496
+ isEmptyObject = false;
1497
+ resolvableValue;
1498
+ /**
1499
+ * @param terraformResource The parent resource
1500
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1501
+ * @param complexObjectIndex the index of this item in the list
1502
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
1503
+ */
1504
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
1505
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
1506
+ }
1507
+ get internalValue() {
1508
+ if (this.resolvableValue) {
1509
+ return this.resolvableValue;
1510
+ }
1511
+ let hasAnyValues = this.isEmptyObject;
1512
+ const internalValueResult = {};
1513
+ if (this._id !== undefined) {
1514
+ hasAnyValues = true;
1515
+ internalValueResult.id = this._id;
1516
+ }
1517
+ return hasAnyValues ? internalValueResult : undefined;
1518
+ }
1519
+ set internalValue(value) {
1520
+ if (value === undefined) {
1521
+ this.isEmptyObject = false;
1522
+ this.resolvableValue = undefined;
1523
+ this._id = undefined;
1524
+ }
1525
+ else if (cdktf.Tokenization.isResolvable(value)) {
1526
+ this.isEmptyObject = false;
1527
+ this.resolvableValue = value;
1528
+ }
1529
+ else {
1530
+ this.isEmptyObject = Object.keys(value).length === 0;
1531
+ this.resolvableValue = undefined;
1532
+ this._id = value.id;
1533
+ }
1534
+ }
1535
+ // id - computed: false, optional: false, required: true
1536
+ _id;
1537
+ get id() {
1538
+ return this.getStringAttribute('id');
1539
+ }
1540
+ set id(value) {
1541
+ this._id = value;
1542
+ }
1543
+ // Temporarily expose input value. Use with caution.
1544
+ get idInput() {
1545
+ return this._id;
1546
+ }
1547
+ }
1548
+ export class ReportRequestSectionsSubSectionsList extends cdktf.ComplexList {
1549
+ terraformResource;
1550
+ terraformAttribute;
1551
+ wrapsSet;
1552
+ internalValue;
1553
+ /**
1554
+ * @param terraformResource The parent resource
1555
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1556
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
1557
+ */
1558
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
1559
+ super(terraformResource, terraformAttribute, wrapsSet);
1560
+ this.terraformResource = terraformResource;
1561
+ this.terraformAttribute = terraformAttribute;
1562
+ this.wrapsSet = wrapsSet;
1563
+ }
1564
+ /**
1565
+ * @param index the index of the item to return
1566
+ */
1567
+ get(index) {
1568
+ return new ReportRequestSectionsSubSectionsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
1569
+ }
1570
+ }
1571
+ export function reportRequestSectionsToTerraform(struct) {
1572
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1573
+ return struct;
1574
+ }
1575
+ if (cdktf.isComplexElement(struct)) {
1576
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1577
+ }
1578
+ return {
1579
+ id: cdktf.stringToTerraform(struct.id),
1580
+ sub_sections: cdktf.listMapper(reportRequestSectionsSubSectionsToTerraform, true)(struct.subSections),
1581
+ };
1582
+ }
1583
+ export function reportRequestSectionsToHclTerraform(struct) {
1584
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1585
+ return struct;
1586
+ }
1587
+ if (cdktf.isComplexElement(struct)) {
1588
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1589
+ }
1590
+ const attrs = {
1591
+ id: {
1592
+ value: cdktf.stringToHclTerraform(struct.id),
1593
+ isBlock: false,
1594
+ type: "simple",
1595
+ storageClassType: "string",
1596
+ },
1597
+ sub_sections: {
1598
+ value: cdktf.listMapperHcl(reportRequestSectionsSubSectionsToHclTerraform, true)(struct.subSections),
1599
+ isBlock: true,
1600
+ type: "list",
1601
+ storageClassType: "ReportRequestSectionsSubSectionsList",
1602
+ },
1603
+ };
1604
+ // remove undefined attributes
1605
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1606
+ }
1607
+ export class ReportRequestSectionsOutputReference extends cdktf.ComplexObject {
1608
+ isEmptyObject = false;
1609
+ resolvableValue;
1610
+ /**
1611
+ * @param terraformResource The parent resource
1612
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1613
+ * @param complexObjectIndex the index of this item in the list
1614
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
1615
+ */
1616
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
1617
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
1618
+ }
1619
+ get internalValue() {
1620
+ if (this.resolvableValue) {
1621
+ return this.resolvableValue;
1622
+ }
1623
+ let hasAnyValues = this.isEmptyObject;
1624
+ const internalValueResult = {};
1625
+ if (this._id !== undefined) {
1626
+ hasAnyValues = true;
1627
+ internalValueResult.id = this._id;
1628
+ }
1629
+ if (this._subSections?.internalValue !== undefined) {
1630
+ hasAnyValues = true;
1631
+ internalValueResult.subSections = this._subSections?.internalValue;
1632
+ }
1633
+ return hasAnyValues ? internalValueResult : undefined;
1634
+ }
1635
+ set internalValue(value) {
1636
+ if (value === undefined) {
1637
+ this.isEmptyObject = false;
1638
+ this.resolvableValue = undefined;
1639
+ this._id = undefined;
1640
+ this._subSections.internalValue = undefined;
1641
+ }
1642
+ else if (cdktf.Tokenization.isResolvable(value)) {
1643
+ this.isEmptyObject = false;
1644
+ this.resolvableValue = value;
1645
+ }
1646
+ else {
1647
+ this.isEmptyObject = Object.keys(value).length === 0;
1648
+ this.resolvableValue = undefined;
1649
+ this._id = value.id;
1650
+ this._subSections.internalValue = value.subSections;
1651
+ }
1652
+ }
1653
+ // id - computed: false, optional: false, required: true
1654
+ _id;
1655
+ get id() {
1656
+ return this.getStringAttribute('id');
1657
+ }
1658
+ set id(value) {
1659
+ this._id = value;
1660
+ }
1661
+ // Temporarily expose input value. Use with caution.
1662
+ get idInput() {
1663
+ return this._id;
1664
+ }
1665
+ // sub_sections - computed: false, optional: true, required: false
1666
+ _subSections = new ReportRequestSectionsSubSectionsList(this, "sub_sections", false);
1667
+ get subSections() {
1668
+ return this._subSections;
1669
+ }
1670
+ putSubSections(value) {
1671
+ this._subSections.internalValue = value;
1672
+ }
1673
+ resetSubSections() {
1674
+ this._subSections.internalValue = undefined;
1675
+ }
1676
+ // Temporarily expose input value. Use with caution.
1677
+ get subSectionsInput() {
1678
+ return this._subSections.internalValue;
1679
+ }
1680
+ }
1681
+ export class ReportRequestSectionsList extends cdktf.ComplexList {
1682
+ terraformResource;
1683
+ terraformAttribute;
1684
+ wrapsSet;
1685
+ internalValue;
1686
+ /**
1687
+ * @param terraformResource The parent resource
1688
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1689
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
1690
+ */
1691
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
1692
+ super(terraformResource, terraformAttribute, wrapsSet);
1693
+ this.terraformResource = terraformResource;
1694
+ this.terraformAttribute = terraformAttribute;
1695
+ this.wrapsSet = wrapsSet;
1696
+ }
1697
+ /**
1698
+ * @param index the index of the item to return
1699
+ */
1700
+ get(index) {
1701
+ return new ReportRequestSectionsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
1702
+ }
1703
+ }
1704
+ export function reportRequestToTerraform(struct) {
1705
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1706
+ return struct;
1707
+ }
1708
+ if (cdktf.isComplexElement(struct)) {
1709
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1710
+ }
1711
+ return {
1712
+ name: cdktf.stringToTerraform(struct.name),
1713
+ report: cdktf.stringToTerraform(struct.report),
1714
+ duration: cdktf.listMapper(reportRequestDurationToTerraform, true)(struct.duration),
1715
+ parameters: cdktf.listMapper(reportRequestParametersToTerraform, true)(struct.parameters),
1716
+ sections: cdktf.listMapper(reportRequestSectionsToTerraform, true)(struct.sections),
1717
+ };
1718
+ }
1719
+ export function reportRequestToHclTerraform(struct) {
1720
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1721
+ return struct;
1722
+ }
1723
+ if (cdktf.isComplexElement(struct)) {
1724
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1725
+ }
1726
+ const attrs = {
1727
+ name: {
1728
+ value: cdktf.stringToHclTerraform(struct.name),
1729
+ isBlock: false,
1730
+ type: "simple",
1731
+ storageClassType: "string",
1732
+ },
1733
+ report: {
1734
+ value: cdktf.stringToHclTerraform(struct.report),
1735
+ isBlock: false,
1736
+ type: "simple",
1737
+ storageClassType: "string",
1738
+ },
1739
+ duration: {
1740
+ value: cdktf.listMapperHcl(reportRequestDurationToHclTerraform, true)(struct.duration),
1741
+ isBlock: true,
1742
+ type: "set",
1743
+ storageClassType: "ReportRequestDurationList",
1744
+ },
1745
+ parameters: {
1746
+ value: cdktf.listMapperHcl(reportRequestParametersToHclTerraform, true)(struct.parameters),
1747
+ isBlock: true,
1748
+ type: "list",
1749
+ storageClassType: "ReportRequestParametersList",
1750
+ },
1751
+ sections: {
1752
+ value: cdktf.listMapperHcl(reportRequestSectionsToHclTerraform, true)(struct.sections),
1753
+ isBlock: true,
1754
+ type: "list",
1755
+ storageClassType: "ReportRequestSectionsList",
1756
+ },
1757
+ };
1758
+ // remove undefined attributes
1759
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1760
+ }
1761
+ export class ReportRequestOutputReference extends cdktf.ComplexObject {
1762
+ isEmptyObject = false;
1763
+ resolvableValue;
1764
+ /**
1765
+ * @param terraformResource The parent resource
1766
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1767
+ * @param complexObjectIndex the index of this item in the list
1768
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
1769
+ */
1770
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
1771
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
1772
+ }
1773
+ get internalValue() {
1774
+ if (this.resolvableValue) {
1775
+ return this.resolvableValue;
1776
+ }
1777
+ let hasAnyValues = this.isEmptyObject;
1778
+ const internalValueResult = {};
1779
+ if (this._name !== undefined) {
1780
+ hasAnyValues = true;
1781
+ internalValueResult.name = this._name;
1782
+ }
1783
+ if (this._report !== undefined) {
1784
+ hasAnyValues = true;
1785
+ internalValueResult.report = this._report;
1786
+ }
1787
+ if (this._duration?.internalValue !== undefined) {
1788
+ hasAnyValues = true;
1789
+ internalValueResult.duration = this._duration?.internalValue;
1790
+ }
1791
+ if (this._parameters?.internalValue !== undefined) {
1792
+ hasAnyValues = true;
1793
+ internalValueResult.parameters = this._parameters?.internalValue;
1794
+ }
1795
+ if (this._sections?.internalValue !== undefined) {
1796
+ hasAnyValues = true;
1797
+ internalValueResult.sections = this._sections?.internalValue;
1798
+ }
1799
+ return hasAnyValues ? internalValueResult : undefined;
1800
+ }
1801
+ set internalValue(value) {
1802
+ if (value === undefined) {
1803
+ this.isEmptyObject = false;
1804
+ this.resolvableValue = undefined;
1805
+ this._name = undefined;
1806
+ this._report = undefined;
1807
+ this._duration.internalValue = undefined;
1808
+ this._parameters.internalValue = undefined;
1809
+ this._sections.internalValue = undefined;
1810
+ }
1811
+ else if (cdktf.Tokenization.isResolvable(value)) {
1812
+ this.isEmptyObject = false;
1813
+ this.resolvableValue = value;
1814
+ }
1815
+ else {
1816
+ this.isEmptyObject = Object.keys(value).length === 0;
1817
+ this.resolvableValue = undefined;
1818
+ this._name = value.name;
1819
+ this._report = value.report;
1820
+ this._duration.internalValue = value.duration;
1821
+ this._parameters.internalValue = value.parameters;
1822
+ this._sections.internalValue = value.sections;
1823
+ }
1824
+ }
1825
+ // name - computed: true, optional: true, required: false
1826
+ _name;
1827
+ get name() {
1828
+ return this.getStringAttribute('name');
1829
+ }
1830
+ set name(value) {
1831
+ this._name = value;
1832
+ }
1833
+ resetName() {
1834
+ this._name = undefined;
1835
+ }
1836
+ // Temporarily expose input value. Use with caution.
1837
+ get nameInput() {
1838
+ return this._name;
1839
+ }
1840
+ // report - computed: false, optional: false, required: true
1841
+ _report;
1842
+ get report() {
1843
+ return this.getStringAttribute('report');
1844
+ }
1845
+ set report(value) {
1846
+ this._report = value;
1847
+ }
1848
+ // Temporarily expose input value. Use with caution.
1849
+ get reportInput() {
1850
+ return this._report;
1851
+ }
1852
+ // duration - computed: false, optional: true, required: false
1853
+ _duration = new ReportRequestDurationList(this, "duration", true);
1854
+ get duration() {
1855
+ return this._duration;
1856
+ }
1857
+ putDuration(value) {
1858
+ this._duration.internalValue = value;
1859
+ }
1860
+ resetDuration() {
1861
+ this._duration.internalValue = undefined;
1862
+ }
1863
+ // Temporarily expose input value. Use with caution.
1864
+ get durationInput() {
1865
+ return this._duration.internalValue;
1866
+ }
1867
+ // parameters - computed: false, optional: true, required: false
1868
+ _parameters = new ReportRequestParametersList(this, "parameters", false);
1869
+ get parameters() {
1870
+ return this._parameters;
1871
+ }
1872
+ putParameters(value) {
1873
+ this._parameters.internalValue = value;
1874
+ }
1875
+ resetParameters() {
1876
+ this._parameters.internalValue = undefined;
1877
+ }
1878
+ // Temporarily expose input value. Use with caution.
1879
+ get parametersInput() {
1880
+ return this._parameters.internalValue;
1881
+ }
1882
+ // sections - computed: false, optional: true, required: false
1883
+ _sections = new ReportRequestSectionsList(this, "sections", false);
1884
+ get sections() {
1885
+ return this._sections;
1886
+ }
1887
+ putSections(value) {
1888
+ this._sections.internalValue = value;
1889
+ }
1890
+ resetSections() {
1891
+ this._sections.internalValue = undefined;
1892
+ }
1893
+ // Temporarily expose input value. Use with caution.
1894
+ get sectionsInput() {
1895
+ return this._sections.internalValue;
1896
+ }
1897
+ }
1898
+ export class ReportRequestList extends cdktf.ComplexList {
1899
+ terraformResource;
1900
+ terraformAttribute;
1901
+ wrapsSet;
1902
+ internalValue;
1903
+ /**
1904
+ * @param terraformResource The parent resource
1905
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1906
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
1907
+ */
1908
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
1909
+ super(terraformResource, terraformAttribute, wrapsSet);
1910
+ this.terraformResource = terraformResource;
1911
+ this.terraformAttribute = terraformAttribute;
1912
+ this.wrapsSet = wrapsSet;
1913
+ }
1914
+ /**
1915
+ * @param index the index of the item to return
1916
+ */
1917
+ get(index) {
1918
+ return new ReportRequestOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
1919
+ }
1920
+ }
1921
+ export function reportStateLastChangedTimeToTerraform(struct) {
1922
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1923
+ return struct;
1924
+ }
1925
+ if (cdktf.isComplexElement(struct)) {
1926
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1927
+ }
1928
+ return {
1929
+ secs: cdktf.stringToTerraform(struct.secs),
1930
+ usecs: cdktf.stringToTerraform(struct.usecs),
1931
+ };
1932
+ }
1933
+ export function reportStateLastChangedTimeToHclTerraform(struct) {
1934
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
1935
+ return struct;
1936
+ }
1937
+ if (cdktf.isComplexElement(struct)) {
1938
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
1939
+ }
1940
+ const attrs = {
1941
+ secs: {
1942
+ value: cdktf.stringToHclTerraform(struct.secs),
1943
+ isBlock: false,
1944
+ type: "simple",
1945
+ storageClassType: "string",
1946
+ },
1947
+ usecs: {
1948
+ value: cdktf.stringToHclTerraform(struct.usecs),
1949
+ isBlock: false,
1950
+ type: "simple",
1951
+ storageClassType: "string",
1952
+ },
1953
+ };
1954
+ // remove undefined attributes
1955
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1956
+ }
1957
+ export class ReportStateLastChangedTimeOutputReference extends cdktf.ComplexObject {
1958
+ isEmptyObject = false;
1959
+ resolvableValue;
1960
+ /**
1961
+ * @param terraformResource The parent resource
1962
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
1963
+ * @param complexObjectIndex the index of this item in the list
1964
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
1965
+ */
1966
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
1967
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
1968
+ }
1969
+ get internalValue() {
1970
+ if (this.resolvableValue) {
1971
+ return this.resolvableValue;
1972
+ }
1973
+ let hasAnyValues = this.isEmptyObject;
1974
+ const internalValueResult = {};
1975
+ if (this._secs !== undefined) {
1976
+ hasAnyValues = true;
1977
+ internalValueResult.secs = this._secs;
1978
+ }
1979
+ if (this._usecs !== undefined) {
1980
+ hasAnyValues = true;
1981
+ internalValueResult.usecs = this._usecs;
1982
+ }
1983
+ return hasAnyValues ? internalValueResult : undefined;
1984
+ }
1985
+ set internalValue(value) {
1986
+ if (value === undefined) {
1987
+ this.isEmptyObject = false;
1988
+ this.resolvableValue = undefined;
1989
+ this._secs = undefined;
1990
+ this._usecs = undefined;
1991
+ }
1992
+ else if (cdktf.Tokenization.isResolvable(value)) {
1993
+ this.isEmptyObject = false;
1994
+ this.resolvableValue = value;
1995
+ }
1996
+ else {
1997
+ this.isEmptyObject = Object.keys(value).length === 0;
1998
+ this.resolvableValue = undefined;
1999
+ this._secs = value.secs;
2000
+ this._usecs = value.usecs;
2001
+ }
2002
+ }
2003
+ // secs - computed: false, optional: false, required: true
2004
+ _secs;
2005
+ get secs() {
2006
+ return this.getStringAttribute('secs');
2007
+ }
2008
+ set secs(value) {
2009
+ this._secs = value;
2010
+ }
2011
+ // Temporarily expose input value. Use with caution.
2012
+ get secsInput() {
2013
+ return this._secs;
2014
+ }
2015
+ // usecs - computed: false, optional: false, required: true
2016
+ _usecs;
2017
+ get usecs() {
2018
+ return this.getStringAttribute('usecs');
2019
+ }
2020
+ set usecs(value) {
2021
+ this._usecs = value;
2022
+ }
2023
+ // Temporarily expose input value. Use with caution.
2024
+ get usecsInput() {
2025
+ return this._usecs;
2026
+ }
2027
+ }
2028
+ export class ReportStateLastChangedTimeList extends cdktf.ComplexList {
2029
+ terraformResource;
2030
+ terraformAttribute;
2031
+ wrapsSet;
2032
+ internalValue;
2033
+ /**
2034
+ * @param terraformResource The parent resource
2035
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2036
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
2037
+ */
2038
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
2039
+ super(terraformResource, terraformAttribute, wrapsSet);
2040
+ this.terraformResource = terraformResource;
2041
+ this.terraformAttribute = terraformAttribute;
2042
+ this.wrapsSet = wrapsSet;
2043
+ }
2044
+ /**
2045
+ * @param index the index of the item to return
2046
+ */
2047
+ get(index) {
2048
+ return new ReportStateLastChangedTimeOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
2049
+ }
2050
+ }
2051
+ export function reportStateToTerraform(struct) {
2052
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2053
+ return struct;
2054
+ }
2055
+ if (cdktf.isComplexElement(struct)) {
2056
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2057
+ }
2058
+ return {
2059
+ reason: cdktf.stringToTerraform(struct.reason),
2060
+ state: cdktf.stringToTerraform(struct.state),
2061
+ last_changed_time: cdktf.listMapper(reportStateLastChangedTimeToTerraform, true)(struct.lastChangedTime),
2062
+ };
2063
+ }
2064
+ export function reportStateToHclTerraform(struct) {
2065
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2066
+ return struct;
2067
+ }
2068
+ if (cdktf.isComplexElement(struct)) {
2069
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2070
+ }
2071
+ const attrs = {
2072
+ reason: {
2073
+ value: cdktf.stringToHclTerraform(struct.reason),
2074
+ isBlock: false,
2075
+ type: "simple",
2076
+ storageClassType: "string",
2077
+ },
2078
+ state: {
2079
+ value: cdktf.stringToHclTerraform(struct.state),
2080
+ isBlock: false,
2081
+ type: "simple",
2082
+ storageClassType: "string",
2083
+ },
2084
+ last_changed_time: {
2085
+ value: cdktf.listMapperHcl(reportStateLastChangedTimeToHclTerraform, true)(struct.lastChangedTime),
2086
+ isBlock: true,
2087
+ type: "set",
2088
+ storageClassType: "ReportStateLastChangedTimeList",
2089
+ },
2090
+ };
2091
+ // remove undefined attributes
2092
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
2093
+ }
2094
+ export class ReportStateOutputReference extends cdktf.ComplexObject {
2095
+ isEmptyObject = false;
2096
+ resolvableValue;
2097
+ /**
2098
+ * @param terraformResource The parent resource
2099
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2100
+ * @param complexObjectIndex the index of this item in the list
2101
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
2102
+ */
2103
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
2104
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
2105
+ }
2106
+ get internalValue() {
2107
+ if (this.resolvableValue) {
2108
+ return this.resolvableValue;
2109
+ }
2110
+ let hasAnyValues = this.isEmptyObject;
2111
+ const internalValueResult = {};
2112
+ if (this._reason !== undefined) {
2113
+ hasAnyValues = true;
2114
+ internalValueResult.reason = this._reason;
2115
+ }
2116
+ if (this._state !== undefined) {
2117
+ hasAnyValues = true;
2118
+ internalValueResult.state = this._state;
2119
+ }
2120
+ if (this._lastChangedTime?.internalValue !== undefined) {
2121
+ hasAnyValues = true;
2122
+ internalValueResult.lastChangedTime = this._lastChangedTime?.internalValue;
2123
+ }
2124
+ return hasAnyValues ? internalValueResult : undefined;
2125
+ }
2126
+ set internalValue(value) {
2127
+ if (value === undefined) {
2128
+ this.isEmptyObject = false;
2129
+ this.resolvableValue = undefined;
2130
+ this._reason = undefined;
2131
+ this._state = undefined;
2132
+ this._lastChangedTime.internalValue = undefined;
2133
+ }
2134
+ else if (cdktf.Tokenization.isResolvable(value)) {
2135
+ this.isEmptyObject = false;
2136
+ this.resolvableValue = value;
2137
+ }
2138
+ else {
2139
+ this.isEmptyObject = Object.keys(value).length === 0;
2140
+ this.resolvableValue = undefined;
2141
+ this._reason = value.reason;
2142
+ this._state = value.state;
2143
+ this._lastChangedTime.internalValue = value.lastChangedTime;
2144
+ }
2145
+ }
2146
+ // reason - computed: true, optional: true, required: false
2147
+ _reason;
2148
+ get reason() {
2149
+ return this.getStringAttribute('reason');
2150
+ }
2151
+ set reason(value) {
2152
+ this._reason = value;
2153
+ }
2154
+ resetReason() {
2155
+ this._reason = undefined;
2156
+ }
2157
+ // Temporarily expose input value. Use with caution.
2158
+ get reasonInput() {
2159
+ return this._reason;
2160
+ }
2161
+ // state - computed: true, optional: true, required: false
2162
+ _state;
2163
+ get state() {
2164
+ return this.getStringAttribute('state');
2165
+ }
2166
+ set state(value) {
2167
+ this._state = value;
2168
+ }
2169
+ resetState() {
2170
+ this._state = undefined;
2171
+ }
2172
+ // Temporarily expose input value. Use with caution.
2173
+ get stateInput() {
2174
+ return this._state;
2175
+ }
2176
+ // last_changed_time - computed: false, optional: true, required: false
2177
+ _lastChangedTime = new ReportStateLastChangedTimeList(this, "last_changed_time", true);
2178
+ get lastChangedTime() {
2179
+ return this._lastChangedTime;
2180
+ }
2181
+ putLastChangedTime(value) {
2182
+ this._lastChangedTime.internalValue = value;
2183
+ }
2184
+ resetLastChangedTime() {
2185
+ this._lastChangedTime.internalValue = undefined;
2186
+ }
2187
+ // Temporarily expose input value. Use with caution.
2188
+ get lastChangedTimeInput() {
2189
+ return this._lastChangedTime.internalValue;
2190
+ }
2191
+ }
2192
+ export class ReportStateList extends cdktf.ComplexList {
2193
+ terraformResource;
2194
+ terraformAttribute;
2195
+ wrapsSet;
2196
+ internalValue;
2197
+ /**
2198
+ * @param terraformResource The parent resource
2199
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2200
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
2201
+ */
2202
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
2203
+ super(terraformResource, terraformAttribute, wrapsSet);
2204
+ this.terraformResource = terraformResource;
2205
+ this.terraformAttribute = terraformAttribute;
2206
+ this.wrapsSet = wrapsSet;
2207
+ }
2208
+ /**
2209
+ * @param index the index of the item to return
2210
+ */
2211
+ get(index) {
2212
+ return new ReportStateOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
2213
+ }
2214
+ }
2215
+ export function reportTasksNodesEventsIpToTerraform(struct) {
2216
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2217
+ return struct;
2218
+ }
2219
+ if (cdktf.isComplexElement(struct)) {
2220
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2221
+ }
2222
+ return {
2223
+ addr: cdktf.stringToTerraform(struct.addr),
2224
+ type: cdktf.stringToTerraform(struct.type),
2225
+ };
2226
+ }
2227
+ export function reportTasksNodesEventsIpToHclTerraform(struct) {
2228
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2229
+ return struct;
2230
+ }
2231
+ if (cdktf.isComplexElement(struct)) {
2232
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2233
+ }
2234
+ const attrs = {
2235
+ addr: {
2236
+ value: cdktf.stringToHclTerraform(struct.addr),
2237
+ isBlock: false,
2238
+ type: "simple",
2239
+ storageClassType: "string",
2240
+ },
2241
+ type: {
2242
+ value: cdktf.stringToHclTerraform(struct.type),
2243
+ isBlock: false,
2244
+ type: "simple",
2245
+ storageClassType: "string",
2246
+ },
2247
+ };
2248
+ // remove undefined attributes
2249
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
2250
+ }
2251
+ export class ReportTasksNodesEventsIpOutputReference extends cdktf.ComplexObject {
2252
+ isEmptyObject = false;
2253
+ resolvableValue;
2254
+ /**
2255
+ * @param terraformResource The parent resource
2256
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2257
+ * @param complexObjectIndex the index of this item in the list
2258
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
2259
+ */
2260
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
2261
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
2262
+ }
2263
+ get internalValue() {
2264
+ if (this.resolvableValue) {
2265
+ return this.resolvableValue;
2266
+ }
2267
+ let hasAnyValues = this.isEmptyObject;
2268
+ const internalValueResult = {};
2269
+ if (this._addr !== undefined) {
2270
+ hasAnyValues = true;
2271
+ internalValueResult.addr = this._addr;
2272
+ }
2273
+ if (this._type !== undefined) {
2274
+ hasAnyValues = true;
2275
+ internalValueResult.type = this._type;
2276
+ }
2277
+ return hasAnyValues ? internalValueResult : undefined;
2278
+ }
2279
+ set internalValue(value) {
2280
+ if (value === undefined) {
2281
+ this.isEmptyObject = false;
2282
+ this.resolvableValue = undefined;
2283
+ this._addr = undefined;
2284
+ this._type = undefined;
2285
+ }
2286
+ else if (cdktf.Tokenization.isResolvable(value)) {
2287
+ this.isEmptyObject = false;
2288
+ this.resolvableValue = value;
2289
+ }
2290
+ else {
2291
+ this.isEmptyObject = Object.keys(value).length === 0;
2292
+ this.resolvableValue = undefined;
2293
+ this._addr = value.addr;
2294
+ this._type = value.type;
2295
+ }
2296
+ }
2297
+ // addr - computed: false, optional: false, required: true
2298
+ _addr;
2299
+ get addr() {
2300
+ return this.getStringAttribute('addr');
2301
+ }
2302
+ set addr(value) {
2303
+ this._addr = value;
2304
+ }
2305
+ // Temporarily expose input value. Use with caution.
2306
+ get addrInput() {
2307
+ return this._addr;
2308
+ }
2309
+ // type - computed: false, optional: false, required: true
2310
+ _type;
2311
+ get type() {
2312
+ return this.getStringAttribute('type');
2313
+ }
2314
+ set type(value) {
2315
+ this._type = value;
2316
+ }
2317
+ // Temporarily expose input value. Use with caution.
2318
+ get typeInput() {
2319
+ return this._type;
2320
+ }
2321
+ }
2322
+ export class ReportTasksNodesEventsIpList extends cdktf.ComplexList {
2323
+ terraformResource;
2324
+ terraformAttribute;
2325
+ wrapsSet;
2326
+ internalValue;
2327
+ /**
2328
+ * @param terraformResource The parent resource
2329
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2330
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
2331
+ */
2332
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
2333
+ super(terraformResource, terraformAttribute, wrapsSet);
2334
+ this.terraformResource = terraformResource;
2335
+ this.terraformAttribute = terraformAttribute;
2336
+ this.wrapsSet = wrapsSet;
2337
+ }
2338
+ /**
2339
+ * @param index the index of the item to return
2340
+ */
2341
+ get(index) {
2342
+ return new ReportTasksNodesEventsIpOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
2343
+ }
2344
+ }
2345
+ export function reportTasksNodesEventsToTerraform(struct) {
2346
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2347
+ return struct;
2348
+ }
2349
+ if (cdktf.isComplexElement(struct)) {
2350
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2351
+ }
2352
+ return {
2353
+ duration: cdktf.stringToTerraform(struct.duration),
2354
+ end_time: cdktf.stringToTerraform(struct.endTime),
2355
+ message: cdktf.stringToTerraform(struct.message),
2356
+ start_time: cdktf.stringToTerraform(struct.startTime),
2357
+ status: cdktf.stringToTerraform(struct.status),
2358
+ sub_tasks: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.subTasks),
2359
+ ip: cdktf.listMapper(reportTasksNodesEventsIpToTerraform, true)(struct.ip),
2360
+ };
2361
+ }
2362
+ export function reportTasksNodesEventsToHclTerraform(struct) {
2363
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2364
+ return struct;
2365
+ }
2366
+ if (cdktf.isComplexElement(struct)) {
2367
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2368
+ }
2369
+ const attrs = {
2370
+ duration: {
2371
+ value: cdktf.stringToHclTerraform(struct.duration),
2372
+ isBlock: false,
2373
+ type: "simple",
2374
+ storageClassType: "string",
2375
+ },
2376
+ end_time: {
2377
+ value: cdktf.stringToHclTerraform(struct.endTime),
2378
+ isBlock: false,
2379
+ type: "simple",
2380
+ storageClassType: "string",
2381
+ },
2382
+ message: {
2383
+ value: cdktf.stringToHclTerraform(struct.message),
2384
+ isBlock: false,
2385
+ type: "simple",
2386
+ storageClassType: "string",
2387
+ },
2388
+ start_time: {
2389
+ value: cdktf.stringToHclTerraform(struct.startTime),
2390
+ isBlock: false,
2391
+ type: "simple",
2392
+ storageClassType: "string",
2393
+ },
2394
+ status: {
2395
+ value: cdktf.stringToHclTerraform(struct.status),
2396
+ isBlock: false,
2397
+ type: "simple",
2398
+ storageClassType: "string",
2399
+ },
2400
+ sub_tasks: {
2401
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.subTasks),
2402
+ isBlock: false,
2403
+ type: "list",
2404
+ storageClassType: "stringList",
2405
+ },
2406
+ ip: {
2407
+ value: cdktf.listMapperHcl(reportTasksNodesEventsIpToHclTerraform, true)(struct.ip),
2408
+ isBlock: true,
2409
+ type: "set",
2410
+ storageClassType: "ReportTasksNodesEventsIpList",
2411
+ },
2412
+ };
2413
+ // remove undefined attributes
2414
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
2415
+ }
2416
+ export class ReportTasksNodesEventsOutputReference extends cdktf.ComplexObject {
2417
+ isEmptyObject = false;
2418
+ resolvableValue;
2419
+ /**
2420
+ * @param terraformResource The parent resource
2421
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2422
+ * @param complexObjectIndex the index of this item in the list
2423
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
2424
+ */
2425
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
2426
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
2427
+ }
2428
+ get internalValue() {
2429
+ if (this.resolvableValue) {
2430
+ return this.resolvableValue;
2431
+ }
2432
+ let hasAnyValues = this.isEmptyObject;
2433
+ const internalValueResult = {};
2434
+ if (this._duration !== undefined) {
2435
+ hasAnyValues = true;
2436
+ internalValueResult.duration = this._duration;
2437
+ }
2438
+ if (this._endTime !== undefined) {
2439
+ hasAnyValues = true;
2440
+ internalValueResult.endTime = this._endTime;
2441
+ }
2442
+ if (this._message !== undefined) {
2443
+ hasAnyValues = true;
2444
+ internalValueResult.message = this._message;
2445
+ }
2446
+ if (this._startTime !== undefined) {
2447
+ hasAnyValues = true;
2448
+ internalValueResult.startTime = this._startTime;
2449
+ }
2450
+ if (this._status !== undefined) {
2451
+ hasAnyValues = true;
2452
+ internalValueResult.status = this._status;
2453
+ }
2454
+ if (this._subTasks !== undefined) {
2455
+ hasAnyValues = true;
2456
+ internalValueResult.subTasks = this._subTasks;
2457
+ }
2458
+ if (this._ip?.internalValue !== undefined) {
2459
+ hasAnyValues = true;
2460
+ internalValueResult.ip = this._ip?.internalValue;
2461
+ }
2462
+ return hasAnyValues ? internalValueResult : undefined;
2463
+ }
2464
+ set internalValue(value) {
2465
+ if (value === undefined) {
2466
+ this.isEmptyObject = false;
2467
+ this.resolvableValue = undefined;
2468
+ this._duration = undefined;
2469
+ this._endTime = undefined;
2470
+ this._message = undefined;
2471
+ this._startTime = undefined;
2472
+ this._status = undefined;
2473
+ this._subTasks = undefined;
2474
+ this._ip.internalValue = undefined;
2475
+ }
2476
+ else if (cdktf.Tokenization.isResolvable(value)) {
2477
+ this.isEmptyObject = false;
2478
+ this.resolvableValue = value;
2479
+ }
2480
+ else {
2481
+ this.isEmptyObject = Object.keys(value).length === 0;
2482
+ this.resolvableValue = undefined;
2483
+ this._duration = value.duration;
2484
+ this._endTime = value.endTime;
2485
+ this._message = value.message;
2486
+ this._startTime = value.startTime;
2487
+ this._status = value.status;
2488
+ this._subTasks = value.subTasks;
2489
+ this._ip.internalValue = value.ip;
2490
+ }
2491
+ }
2492
+ // duration - computed: true, optional: true, required: false
2493
+ _duration;
2494
+ get duration() {
2495
+ return this.getStringAttribute('duration');
2496
+ }
2497
+ set duration(value) {
2498
+ this._duration = value;
2499
+ }
2500
+ resetDuration() {
2501
+ this._duration = undefined;
2502
+ }
2503
+ // Temporarily expose input value. Use with caution.
2504
+ get durationInput() {
2505
+ return this._duration;
2506
+ }
2507
+ // end_time - computed: true, optional: true, required: false
2508
+ _endTime;
2509
+ get endTime() {
2510
+ return this.getStringAttribute('end_time');
2511
+ }
2512
+ set endTime(value) {
2513
+ this._endTime = value;
2514
+ }
2515
+ resetEndTime() {
2516
+ this._endTime = undefined;
2517
+ }
2518
+ // Temporarily expose input value. Use with caution.
2519
+ get endTimeInput() {
2520
+ return this._endTime;
2521
+ }
2522
+ // message - computed: true, optional: true, required: false
2523
+ _message;
2524
+ get message() {
2525
+ return this.getStringAttribute('message');
2526
+ }
2527
+ set message(value) {
2528
+ this._message = value;
2529
+ }
2530
+ resetMessage() {
2531
+ this._message = undefined;
2532
+ }
2533
+ // Temporarily expose input value. Use with caution.
2534
+ get messageInput() {
2535
+ return this._message;
2536
+ }
2537
+ // start_time - computed: true, optional: true, required: false
2538
+ _startTime;
2539
+ get startTime() {
2540
+ return this.getStringAttribute('start_time');
2541
+ }
2542
+ set startTime(value) {
2543
+ this._startTime = value;
2544
+ }
2545
+ resetStartTime() {
2546
+ this._startTime = undefined;
2547
+ }
2548
+ // Temporarily expose input value. Use with caution.
2549
+ get startTimeInput() {
2550
+ return this._startTime;
2551
+ }
2552
+ // status - computed: true, optional: true, required: false
2553
+ _status;
2554
+ get status() {
2555
+ return this.getStringAttribute('status');
2556
+ }
2557
+ set status(value) {
2558
+ this._status = value;
2559
+ }
2560
+ resetStatus() {
2561
+ this._status = undefined;
2562
+ }
2563
+ // Temporarily expose input value. Use with caution.
2564
+ get statusInput() {
2565
+ return this._status;
2566
+ }
2567
+ // sub_tasks - computed: false, optional: true, required: false
2568
+ _subTasks;
2569
+ get subTasks() {
2570
+ return this.getListAttribute('sub_tasks');
2571
+ }
2572
+ set subTasks(value) {
2573
+ this._subTasks = value;
2574
+ }
2575
+ resetSubTasks() {
2576
+ this._subTasks = undefined;
2577
+ }
2578
+ // Temporarily expose input value. Use with caution.
2579
+ get subTasksInput() {
2580
+ return this._subTasks;
2581
+ }
2582
+ // ip - computed: false, optional: true, required: false
2583
+ _ip = new ReportTasksNodesEventsIpList(this, "ip", true);
2584
+ get ip() {
2585
+ return this._ip;
2586
+ }
2587
+ putIp(value) {
2588
+ this._ip.internalValue = value;
2589
+ }
2590
+ resetIp() {
2591
+ this._ip.internalValue = undefined;
2592
+ }
2593
+ // Temporarily expose input value. Use with caution.
2594
+ get ipInput() {
2595
+ return this._ip.internalValue;
2596
+ }
2597
+ }
2598
+ export class ReportTasksNodesEventsList extends cdktf.ComplexList {
2599
+ terraformResource;
2600
+ terraformAttribute;
2601
+ wrapsSet;
2602
+ internalValue;
2603
+ /**
2604
+ * @param terraformResource The parent resource
2605
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2606
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
2607
+ */
2608
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
2609
+ super(terraformResource, terraformAttribute, wrapsSet);
2610
+ this.terraformResource = terraformResource;
2611
+ this.terraformAttribute = terraformAttribute;
2612
+ this.wrapsSet = wrapsSet;
2613
+ }
2614
+ /**
2615
+ * @param index the index of the item to return
2616
+ */
2617
+ get(index) {
2618
+ return new ReportTasksNodesEventsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
2619
+ }
2620
+ }
2621
+ export function reportTasksSubEventsIpToTerraform(struct) {
2622
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2623
+ return struct;
2624
+ }
2625
+ if (cdktf.isComplexElement(struct)) {
2626
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2627
+ }
2628
+ return {
2629
+ addr: cdktf.stringToTerraform(struct.addr),
2630
+ type: cdktf.stringToTerraform(struct.type),
2631
+ };
2632
+ }
2633
+ export function reportTasksSubEventsIpToHclTerraform(struct) {
2634
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2635
+ return struct;
2636
+ }
2637
+ if (cdktf.isComplexElement(struct)) {
2638
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2639
+ }
2640
+ const attrs = {
2641
+ addr: {
2642
+ value: cdktf.stringToHclTerraform(struct.addr),
2643
+ isBlock: false,
2644
+ type: "simple",
2645
+ storageClassType: "string",
2646
+ },
2647
+ type: {
2648
+ value: cdktf.stringToHclTerraform(struct.type),
2649
+ isBlock: false,
2650
+ type: "simple",
2651
+ storageClassType: "string",
2652
+ },
2653
+ };
2654
+ // remove undefined attributes
2655
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
2656
+ }
2657
+ export class ReportTasksSubEventsIpOutputReference extends cdktf.ComplexObject {
2658
+ isEmptyObject = false;
2659
+ resolvableValue;
2660
+ /**
2661
+ * @param terraformResource The parent resource
2662
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2663
+ * @param complexObjectIndex the index of this item in the list
2664
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
2665
+ */
2666
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
2667
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
2668
+ }
2669
+ get internalValue() {
2670
+ if (this.resolvableValue) {
2671
+ return this.resolvableValue;
2672
+ }
2673
+ let hasAnyValues = this.isEmptyObject;
2674
+ const internalValueResult = {};
2675
+ if (this._addr !== undefined) {
2676
+ hasAnyValues = true;
2677
+ internalValueResult.addr = this._addr;
2678
+ }
2679
+ if (this._type !== undefined) {
2680
+ hasAnyValues = true;
2681
+ internalValueResult.type = this._type;
2682
+ }
2683
+ return hasAnyValues ? internalValueResult : undefined;
2684
+ }
2685
+ set internalValue(value) {
2686
+ if (value === undefined) {
2687
+ this.isEmptyObject = false;
2688
+ this.resolvableValue = undefined;
2689
+ this._addr = undefined;
2690
+ this._type = undefined;
2691
+ }
2692
+ else if (cdktf.Tokenization.isResolvable(value)) {
2693
+ this.isEmptyObject = false;
2694
+ this.resolvableValue = value;
2695
+ }
2696
+ else {
2697
+ this.isEmptyObject = Object.keys(value).length === 0;
2698
+ this.resolvableValue = undefined;
2699
+ this._addr = value.addr;
2700
+ this._type = value.type;
2701
+ }
2702
+ }
2703
+ // addr - computed: false, optional: false, required: true
2704
+ _addr;
2705
+ get addr() {
2706
+ return this.getStringAttribute('addr');
2707
+ }
2708
+ set addr(value) {
2709
+ this._addr = value;
2710
+ }
2711
+ // Temporarily expose input value. Use with caution.
2712
+ get addrInput() {
2713
+ return this._addr;
2714
+ }
2715
+ // type - computed: false, optional: false, required: true
2716
+ _type;
2717
+ get type() {
2718
+ return this.getStringAttribute('type');
2719
+ }
2720
+ set type(value) {
2721
+ this._type = value;
2722
+ }
2723
+ // Temporarily expose input value. Use with caution.
2724
+ get typeInput() {
2725
+ return this._type;
2726
+ }
2727
+ }
2728
+ export class ReportTasksSubEventsIpList extends cdktf.ComplexList {
2729
+ terraformResource;
2730
+ terraformAttribute;
2731
+ wrapsSet;
2732
+ internalValue;
2733
+ /**
2734
+ * @param terraformResource The parent resource
2735
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2736
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
2737
+ */
2738
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
2739
+ super(terraformResource, terraformAttribute, wrapsSet);
2740
+ this.terraformResource = terraformResource;
2741
+ this.terraformAttribute = terraformAttribute;
2742
+ this.wrapsSet = wrapsSet;
2743
+ }
2744
+ /**
2745
+ * @param index the index of the item to return
2746
+ */
2747
+ get(index) {
2748
+ return new ReportTasksSubEventsIpOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
2749
+ }
2750
+ }
2751
+ export function reportTasksSubEventsToTerraform(struct) {
2752
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2753
+ return struct;
2754
+ }
2755
+ if (cdktf.isComplexElement(struct)) {
2756
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2757
+ }
2758
+ return {
2759
+ duration: cdktf.stringToTerraform(struct.duration),
2760
+ end_time: cdktf.stringToTerraform(struct.endTime),
2761
+ message: cdktf.stringToTerraform(struct.message),
2762
+ start_time: cdktf.stringToTerraform(struct.startTime),
2763
+ status: cdktf.stringToTerraform(struct.status),
2764
+ sub_tasks: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.subTasks),
2765
+ ip: cdktf.listMapper(reportTasksSubEventsIpToTerraform, true)(struct.ip),
2766
+ };
2767
+ }
2768
+ export function reportTasksSubEventsToHclTerraform(struct) {
2769
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
2770
+ return struct;
2771
+ }
2772
+ if (cdktf.isComplexElement(struct)) {
2773
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
2774
+ }
2775
+ const attrs = {
2776
+ duration: {
2777
+ value: cdktf.stringToHclTerraform(struct.duration),
2778
+ isBlock: false,
2779
+ type: "simple",
2780
+ storageClassType: "string",
2781
+ },
2782
+ end_time: {
2783
+ value: cdktf.stringToHclTerraform(struct.endTime),
2784
+ isBlock: false,
2785
+ type: "simple",
2786
+ storageClassType: "string",
2787
+ },
2788
+ message: {
2789
+ value: cdktf.stringToHclTerraform(struct.message),
2790
+ isBlock: false,
2791
+ type: "simple",
2792
+ storageClassType: "string",
2793
+ },
2794
+ start_time: {
2795
+ value: cdktf.stringToHclTerraform(struct.startTime),
2796
+ isBlock: false,
2797
+ type: "simple",
2798
+ storageClassType: "string",
2799
+ },
2800
+ status: {
2801
+ value: cdktf.stringToHclTerraform(struct.status),
2802
+ isBlock: false,
2803
+ type: "simple",
2804
+ storageClassType: "string",
2805
+ },
2806
+ sub_tasks: {
2807
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.subTasks),
2808
+ isBlock: false,
2809
+ type: "list",
2810
+ storageClassType: "stringList",
2811
+ },
2812
+ ip: {
2813
+ value: cdktf.listMapperHcl(reportTasksSubEventsIpToHclTerraform, true)(struct.ip),
2814
+ isBlock: true,
2815
+ type: "set",
2816
+ storageClassType: "ReportTasksSubEventsIpList",
2817
+ },
2818
+ };
2819
+ // remove undefined attributes
2820
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
2821
+ }
2822
+ export class ReportTasksSubEventsOutputReference extends cdktf.ComplexObject {
2823
+ isEmptyObject = false;
2824
+ resolvableValue;
2825
+ /**
2826
+ * @param terraformResource The parent resource
2827
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
2828
+ * @param complexObjectIndex the index of this item in the list
2829
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
2830
+ */
2831
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
2832
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
2833
+ }
2834
+ get internalValue() {
2835
+ if (this.resolvableValue) {
2836
+ return this.resolvableValue;
2837
+ }
2838
+ let hasAnyValues = this.isEmptyObject;
2839
+ const internalValueResult = {};
2840
+ if (this._duration !== undefined) {
2841
+ hasAnyValues = true;
2842
+ internalValueResult.duration = this._duration;
2843
+ }
2844
+ if (this._endTime !== undefined) {
2845
+ hasAnyValues = true;
2846
+ internalValueResult.endTime = this._endTime;
2847
+ }
2848
+ if (this._message !== undefined) {
2849
+ hasAnyValues = true;
2850
+ internalValueResult.message = this._message;
2851
+ }
2852
+ if (this._startTime !== undefined) {
2853
+ hasAnyValues = true;
2854
+ internalValueResult.startTime = this._startTime;
2855
+ }
2856
+ if (this._status !== undefined) {
2857
+ hasAnyValues = true;
2858
+ internalValueResult.status = this._status;
2859
+ }
2860
+ if (this._subTasks !== undefined) {
2861
+ hasAnyValues = true;
2862
+ internalValueResult.subTasks = this._subTasks;
2863
+ }
2864
+ if (this._ip?.internalValue !== undefined) {
2865
+ hasAnyValues = true;
2866
+ internalValueResult.ip = this._ip?.internalValue;
2867
+ }
2868
+ return hasAnyValues ? internalValueResult : undefined;
2869
+ }
2870
+ set internalValue(value) {
2871
+ if (value === undefined) {
2872
+ this.isEmptyObject = false;
2873
+ this.resolvableValue = undefined;
2874
+ this._duration = undefined;
2875
+ this._endTime = undefined;
2876
+ this._message = undefined;
2877
+ this._startTime = undefined;
2878
+ this._status = undefined;
2879
+ this._subTasks = undefined;
2880
+ this._ip.internalValue = undefined;
2881
+ }
2882
+ else if (cdktf.Tokenization.isResolvable(value)) {
2883
+ this.isEmptyObject = false;
2884
+ this.resolvableValue = value;
2885
+ }
2886
+ else {
2887
+ this.isEmptyObject = Object.keys(value).length === 0;
2888
+ this.resolvableValue = undefined;
2889
+ this._duration = value.duration;
2890
+ this._endTime = value.endTime;
2891
+ this._message = value.message;
2892
+ this._startTime = value.startTime;
2893
+ this._status = value.status;
2894
+ this._subTasks = value.subTasks;
2895
+ this._ip.internalValue = value.ip;
2896
+ }
2897
+ }
2898
+ // duration - computed: true, optional: true, required: false
2899
+ _duration;
2900
+ get duration() {
2901
+ return this.getStringAttribute('duration');
2902
+ }
2903
+ set duration(value) {
2904
+ this._duration = value;
2905
+ }
2906
+ resetDuration() {
2907
+ this._duration = undefined;
2908
+ }
2909
+ // Temporarily expose input value. Use with caution.
2910
+ get durationInput() {
2911
+ return this._duration;
2912
+ }
2913
+ // end_time - computed: true, optional: true, required: false
2914
+ _endTime;
2915
+ get endTime() {
2916
+ return this.getStringAttribute('end_time');
2917
+ }
2918
+ set endTime(value) {
2919
+ this._endTime = value;
2920
+ }
2921
+ resetEndTime() {
2922
+ this._endTime = undefined;
2923
+ }
2924
+ // Temporarily expose input value. Use with caution.
2925
+ get endTimeInput() {
2926
+ return this._endTime;
2927
+ }
2928
+ // message - computed: true, optional: true, required: false
2929
+ _message;
2930
+ get message() {
2931
+ return this.getStringAttribute('message');
2932
+ }
2933
+ set message(value) {
2934
+ this._message = value;
2935
+ }
2936
+ resetMessage() {
2937
+ this._message = undefined;
2938
+ }
2939
+ // Temporarily expose input value. Use with caution.
2940
+ get messageInput() {
2941
+ return this._message;
2942
+ }
2943
+ // start_time - computed: true, optional: true, required: false
2944
+ _startTime;
2945
+ get startTime() {
2946
+ return this.getStringAttribute('start_time');
2947
+ }
2948
+ set startTime(value) {
2949
+ this._startTime = value;
2950
+ }
2951
+ resetStartTime() {
2952
+ this._startTime = undefined;
2953
+ }
2954
+ // Temporarily expose input value. Use with caution.
2955
+ get startTimeInput() {
2956
+ return this._startTime;
2957
+ }
2958
+ // status - computed: true, optional: true, required: false
2959
+ _status;
2960
+ get status() {
2961
+ return this.getStringAttribute('status');
2962
+ }
2963
+ set status(value) {
2964
+ this._status = value;
2965
+ }
2966
+ resetStatus() {
2967
+ this._status = undefined;
2968
+ }
2969
+ // Temporarily expose input value. Use with caution.
2970
+ get statusInput() {
2971
+ return this._status;
2972
+ }
2973
+ // sub_tasks - computed: false, optional: true, required: false
2974
+ _subTasks;
2975
+ get subTasks() {
2976
+ return this.getListAttribute('sub_tasks');
2977
+ }
2978
+ set subTasks(value) {
2979
+ this._subTasks = value;
2980
+ }
2981
+ resetSubTasks() {
2982
+ this._subTasks = undefined;
2983
+ }
2984
+ // Temporarily expose input value. Use with caution.
2985
+ get subTasksInput() {
2986
+ return this._subTasks;
2987
+ }
2988
+ // ip - computed: false, optional: true, required: false
2989
+ _ip = new ReportTasksSubEventsIpList(this, "ip", true);
2990
+ get ip() {
2991
+ return this._ip;
2992
+ }
2993
+ putIp(value) {
2994
+ this._ip.internalValue = value;
2995
+ }
2996
+ resetIp() {
2997
+ this._ip.internalValue = undefined;
2998
+ }
2999
+ // Temporarily expose input value. Use with caution.
3000
+ get ipInput() {
3001
+ return this._ip.internalValue;
3002
+ }
3003
+ }
3004
+ export class ReportTasksSubEventsList extends cdktf.ComplexList {
3005
+ terraformResource;
3006
+ terraformAttribute;
3007
+ wrapsSet;
3008
+ internalValue;
3009
+ /**
3010
+ * @param terraformResource The parent resource
3011
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
3012
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
3013
+ */
3014
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
3015
+ super(terraformResource, terraformAttribute, wrapsSet);
3016
+ this.terraformResource = terraformResource;
3017
+ this.terraformAttribute = terraformAttribute;
3018
+ this.wrapsSet = wrapsSet;
3019
+ }
3020
+ /**
3021
+ * @param index the index of the item to return
3022
+ */
3023
+ get(index) {
3024
+ return new ReportTasksSubEventsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
3025
+ }
3026
+ }
3027
+ export function reportTasksToTerraform(struct) {
3028
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
3029
+ return struct;
3030
+ }
3031
+ if (cdktf.isComplexElement(struct)) {
3032
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
3033
+ }
3034
+ return {
3035
+ task_name: cdktf.stringToTerraform(struct.taskName),
3036
+ nodes_events: cdktf.listMapper(reportTasksNodesEventsToTerraform, true)(struct.nodesEvents),
3037
+ sub_events: cdktf.listMapper(reportTasksSubEventsToTerraform, true)(struct.subEvents),
3038
+ };
3039
+ }
3040
+ export function reportTasksToHclTerraform(struct) {
3041
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
3042
+ return struct;
3043
+ }
3044
+ if (cdktf.isComplexElement(struct)) {
3045
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
3046
+ }
3047
+ const attrs = {
3048
+ task_name: {
3049
+ value: cdktf.stringToHclTerraform(struct.taskName),
3050
+ isBlock: false,
3051
+ type: "simple",
3052
+ storageClassType: "string",
3053
+ },
3054
+ nodes_events: {
3055
+ value: cdktf.listMapperHcl(reportTasksNodesEventsToHclTerraform, true)(struct.nodesEvents),
3056
+ isBlock: true,
3057
+ type: "list",
3058
+ storageClassType: "ReportTasksNodesEventsList",
3059
+ },
3060
+ sub_events: {
3061
+ value: cdktf.listMapperHcl(reportTasksSubEventsToHclTerraform, true)(struct.subEvents),
3062
+ isBlock: true,
3063
+ type: "list",
3064
+ storageClassType: "ReportTasksSubEventsList",
3065
+ },
3066
+ };
3067
+ // remove undefined attributes
3068
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
3069
+ }
3070
+ export class ReportTasksOutputReference extends cdktf.ComplexObject {
3071
+ isEmptyObject = false;
3072
+ resolvableValue;
3073
+ /**
3074
+ * @param terraformResource The parent resource
3075
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
3076
+ * @param complexObjectIndex the index of this item in the list
3077
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
3078
+ */
3079
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
3080
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
3081
+ }
3082
+ get internalValue() {
3083
+ if (this.resolvableValue) {
3084
+ return this.resolvableValue;
3085
+ }
3086
+ let hasAnyValues = this.isEmptyObject;
3087
+ const internalValueResult = {};
3088
+ if (this._taskName !== undefined) {
3089
+ hasAnyValues = true;
3090
+ internalValueResult.taskName = this._taskName;
3091
+ }
3092
+ if (this._nodesEvents?.internalValue !== undefined) {
3093
+ hasAnyValues = true;
3094
+ internalValueResult.nodesEvents = this._nodesEvents?.internalValue;
3095
+ }
3096
+ if (this._subEvents?.internalValue !== undefined) {
3097
+ hasAnyValues = true;
3098
+ internalValueResult.subEvents = this._subEvents?.internalValue;
3099
+ }
3100
+ return hasAnyValues ? internalValueResult : undefined;
3101
+ }
3102
+ set internalValue(value) {
3103
+ if (value === undefined) {
3104
+ this.isEmptyObject = false;
3105
+ this.resolvableValue = undefined;
3106
+ this._taskName = undefined;
3107
+ this._nodesEvents.internalValue = undefined;
3108
+ this._subEvents.internalValue = undefined;
3109
+ }
3110
+ else if (cdktf.Tokenization.isResolvable(value)) {
3111
+ this.isEmptyObject = false;
3112
+ this.resolvableValue = value;
3113
+ }
3114
+ else {
3115
+ this.isEmptyObject = Object.keys(value).length === 0;
3116
+ this.resolvableValue = undefined;
3117
+ this._taskName = value.taskName;
3118
+ this._nodesEvents.internalValue = value.nodesEvents;
3119
+ this._subEvents.internalValue = value.subEvents;
3120
+ }
3121
+ }
3122
+ // task_name - computed: true, optional: true, required: false
3123
+ _taskName;
3124
+ get taskName() {
3125
+ return this.getStringAttribute('task_name');
3126
+ }
3127
+ set taskName(value) {
3128
+ this._taskName = value;
3129
+ }
3130
+ resetTaskName() {
3131
+ this._taskName = undefined;
3132
+ }
3133
+ // Temporarily expose input value. Use with caution.
3134
+ get taskNameInput() {
3135
+ return this._taskName;
3136
+ }
3137
+ // nodes_events - computed: false, optional: true, required: false
3138
+ _nodesEvents = new ReportTasksNodesEventsList(this, "nodes_events", false);
3139
+ get nodesEvents() {
3140
+ return this._nodesEvents;
3141
+ }
3142
+ putNodesEvents(value) {
3143
+ this._nodesEvents.internalValue = value;
3144
+ }
3145
+ resetNodesEvents() {
3146
+ this._nodesEvents.internalValue = undefined;
3147
+ }
3148
+ // Temporarily expose input value. Use with caution.
3149
+ get nodesEventsInput() {
3150
+ return this._nodesEvents.internalValue;
3151
+ }
3152
+ // sub_events - computed: false, optional: true, required: false
3153
+ _subEvents = new ReportTasksSubEventsList(this, "sub_events", false);
3154
+ get subEvents() {
3155
+ return this._subEvents;
3156
+ }
3157
+ putSubEvents(value) {
3158
+ this._subEvents.internalValue = value;
3159
+ }
3160
+ resetSubEvents() {
3161
+ this._subEvents.internalValue = undefined;
3162
+ }
3163
+ // Temporarily expose input value. Use with caution.
3164
+ get subEventsInput() {
3165
+ return this._subEvents.internalValue;
3166
+ }
3167
+ }
3168
+ export class ReportTasksList extends cdktf.ComplexList {
3169
+ terraformResource;
3170
+ terraformAttribute;
3171
+ wrapsSet;
3172
+ internalValue;
3173
+ /**
3174
+ * @param terraformResource The parent resource
3175
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
3176
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
3177
+ */
3178
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
3179
+ super(terraformResource, terraformAttribute, wrapsSet);
3180
+ this.terraformResource = terraformResource;
3181
+ this.terraformAttribute = terraformAttribute;
3182
+ this.wrapsSet = wrapsSet;
3183
+ }
3184
+ /**
3185
+ * @param index the index of the item to return
3186
+ */
3187
+ get(index) {
3188
+ return new ReportTasksOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
3189
+ }
3190
+ }
3191
+ /**
3192
+ * Represents a {@link https://registry.terraform.io/providers/vmware/avi/31.2.1/docs/resources/report avi_report}
3193
+ */
3194
+ export class Report extends cdktf.TerraformResource {
3195
+ // =================
3196
+ // STATIC PROPERTIES
3197
+ // =================
3198
+ static tfResourceType = "avi_report";
3199
+ // ==============
3200
+ // STATIC Methods
3201
+ // ==============
3202
+ /**
3203
+ * Generates CDKTF code for importing a Report resource upon running "cdktf plan <stack-name>"
3204
+ * @param scope The scope in which to define this construct
3205
+ * @param importToId The construct id used in the generated config for the Report to import
3206
+ * @param importFromId The id of the existing Report that should be imported. Refer to the {@link https://registry.terraform.io/providers/vmware/avi/31.2.1/docs/resources/report#import import section} in the documentation of this resource for the id to use
3207
+ * @param provider? Optional instance of the provider where the Report to import is found
3208
+ */
3209
+ static generateConfigForImport(scope, importToId, importFromId, provider) {
3210
+ return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "avi_report", importId: importFromId, provider });
3211
+ }
3212
+ // ===========
3213
+ // INITIALIZER
3214
+ // ===========
3215
+ /**
3216
+ * Create a new {@link https://registry.terraform.io/providers/vmware/avi/31.2.1/docs/resources/report avi_report} Resource
3217
+ *
3218
+ * @param scope The scope in which to define this construct
3219
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
3220
+ * @param options ReportConfig = {}
3221
+ */
3222
+ constructor(scope, id, config = {}) {
3223
+ super(scope, id, {
3224
+ terraformResourceType: 'avi_report',
3225
+ terraformGeneratorMetadata: {
3226
+ providerName: 'avi',
3227
+ providerVersion: '31.2.1',
3228
+ providerVersionConstraint: '31.2.1'
3229
+ },
3230
+ provider: config.provider,
3231
+ dependsOn: config.dependsOn,
3232
+ count: config.count,
3233
+ lifecycle: config.lifecycle,
3234
+ provisioners: config.provisioners,
3235
+ connection: config.connection,
3236
+ forEach: config.forEach
3237
+ });
3238
+ this._duration = config.duration;
3239
+ this._endTime = config.endTime;
3240
+ this._filename = config.filename;
3241
+ this._id = config.id;
3242
+ this._name = config.name;
3243
+ this._node = config.nodeAttribute;
3244
+ this._progress = config.progress;
3245
+ this._startTime = config.startTime;
3246
+ this._tasksCompleted = config.tasksCompleted;
3247
+ this._tenantRef = config.tenantRef;
3248
+ this._totalTasks = config.totalTasks;
3249
+ this._uuid = config.uuid;
3250
+ this._preCheck.internalValue = config.preCheck;
3251
+ this._request.internalValue = config.request;
3252
+ this._state.internalValue = config.state;
3253
+ this._tasks.internalValue = config.tasks;
3254
+ }
3255
+ // ==========
3256
+ // ATTRIBUTES
3257
+ // ==========
3258
+ // duration - computed: true, optional: true, required: false
3259
+ _duration;
3260
+ get duration() {
3261
+ return this.getStringAttribute('duration');
3262
+ }
3263
+ set duration(value) {
3264
+ this._duration = value;
3265
+ }
3266
+ resetDuration() {
3267
+ this._duration = undefined;
3268
+ }
3269
+ // Temporarily expose input value. Use with caution.
3270
+ get durationInput() {
3271
+ return this._duration;
3272
+ }
3273
+ // end_time - computed: true, optional: true, required: false
3274
+ _endTime;
3275
+ get endTime() {
3276
+ return this.getStringAttribute('end_time');
3277
+ }
3278
+ set endTime(value) {
3279
+ this._endTime = value;
3280
+ }
3281
+ resetEndTime() {
3282
+ this._endTime = undefined;
3283
+ }
3284
+ // Temporarily expose input value. Use with caution.
3285
+ get endTimeInput() {
3286
+ return this._endTime;
3287
+ }
3288
+ // filename - computed: true, optional: true, required: false
3289
+ _filename;
3290
+ get filename() {
3291
+ return this.getStringAttribute('filename');
3292
+ }
3293
+ set filename(value) {
3294
+ this._filename = value;
3295
+ }
3296
+ resetFilename() {
3297
+ this._filename = undefined;
3298
+ }
3299
+ // Temporarily expose input value. Use with caution.
3300
+ get filenameInput() {
3301
+ return this._filename;
3302
+ }
3303
+ // id - computed: true, optional: true, required: false
3304
+ _id;
3305
+ get id() {
3306
+ return this.getStringAttribute('id');
3307
+ }
3308
+ set id(value) {
3309
+ this._id = value;
3310
+ }
3311
+ resetId() {
3312
+ this._id = undefined;
3313
+ }
3314
+ // Temporarily expose input value. Use with caution.
3315
+ get idInput() {
3316
+ return this._id;
3317
+ }
3318
+ // name - computed: true, optional: true, required: false
3319
+ _name;
3320
+ get name() {
3321
+ return this.getStringAttribute('name');
3322
+ }
3323
+ set name(value) {
3324
+ this._name = value;
3325
+ }
3326
+ resetName() {
3327
+ this._name = undefined;
3328
+ }
3329
+ // Temporarily expose input value. Use with caution.
3330
+ get nameInput() {
3331
+ return this._name;
3332
+ }
3333
+ // node - computed: true, optional: true, required: false
3334
+ _node;
3335
+ get nodeAttribute() {
3336
+ return this.getStringAttribute('node');
3337
+ }
3338
+ set nodeAttribute(value) {
3339
+ this._node = value;
3340
+ }
3341
+ resetNodeAttribute() {
3342
+ this._node = undefined;
3343
+ }
3344
+ // Temporarily expose input value. Use with caution.
3345
+ get nodeAttributeInput() {
3346
+ return this._node;
3347
+ }
3348
+ // progress - computed: false, optional: true, required: false
3349
+ _progress;
3350
+ get progress() {
3351
+ return this.getStringAttribute('progress');
3352
+ }
3353
+ set progress(value) {
3354
+ this._progress = value;
3355
+ }
3356
+ resetProgress() {
3357
+ this._progress = undefined;
3358
+ }
3359
+ // Temporarily expose input value. Use with caution.
3360
+ get progressInput() {
3361
+ return this._progress;
3362
+ }
3363
+ // start_time - computed: true, optional: true, required: false
3364
+ _startTime;
3365
+ get startTime() {
3366
+ return this.getStringAttribute('start_time');
3367
+ }
3368
+ set startTime(value) {
3369
+ this._startTime = value;
3370
+ }
3371
+ resetStartTime() {
3372
+ this._startTime = undefined;
3373
+ }
3374
+ // Temporarily expose input value. Use with caution.
3375
+ get startTimeInput() {
3376
+ return this._startTime;
3377
+ }
3378
+ // tasks_completed - computed: true, optional: true, required: false
3379
+ _tasksCompleted;
3380
+ get tasksCompleted() {
3381
+ return this.getStringAttribute('tasks_completed');
3382
+ }
3383
+ set tasksCompleted(value) {
3384
+ this._tasksCompleted = value;
3385
+ }
3386
+ resetTasksCompleted() {
3387
+ this._tasksCompleted = undefined;
3388
+ }
3389
+ // Temporarily expose input value. Use with caution.
3390
+ get tasksCompletedInput() {
3391
+ return this._tasksCompleted;
3392
+ }
3393
+ // tenant_ref - computed: true, optional: true, required: false
3394
+ _tenantRef;
3395
+ get tenantRef() {
3396
+ return this.getStringAttribute('tenant_ref');
3397
+ }
3398
+ set tenantRef(value) {
3399
+ this._tenantRef = value;
3400
+ }
3401
+ resetTenantRef() {
3402
+ this._tenantRef = undefined;
3403
+ }
3404
+ // Temporarily expose input value. Use with caution.
3405
+ get tenantRefInput() {
3406
+ return this._tenantRef;
3407
+ }
3408
+ // total_tasks - computed: true, optional: true, required: false
3409
+ _totalTasks;
3410
+ get totalTasks() {
3411
+ return this.getStringAttribute('total_tasks');
3412
+ }
3413
+ set totalTasks(value) {
3414
+ this._totalTasks = value;
3415
+ }
3416
+ resetTotalTasks() {
3417
+ this._totalTasks = undefined;
3418
+ }
3419
+ // Temporarily expose input value. Use with caution.
3420
+ get totalTasksInput() {
3421
+ return this._totalTasks;
3422
+ }
3423
+ // uuid - computed: true, optional: true, required: false
3424
+ _uuid;
3425
+ get uuid() {
3426
+ return this.getStringAttribute('uuid');
3427
+ }
3428
+ set uuid(value) {
3429
+ this._uuid = value;
3430
+ }
3431
+ resetUuid() {
3432
+ this._uuid = undefined;
3433
+ }
3434
+ // Temporarily expose input value. Use with caution.
3435
+ get uuidInput() {
3436
+ return this._uuid;
3437
+ }
3438
+ // pre_check - computed: false, optional: true, required: false
3439
+ _preCheck = new ReportPreCheckList(this, "pre_check", true);
3440
+ get preCheck() {
3441
+ return this._preCheck;
3442
+ }
3443
+ putPreCheck(value) {
3444
+ this._preCheck.internalValue = value;
3445
+ }
3446
+ resetPreCheck() {
3447
+ this._preCheck.internalValue = undefined;
3448
+ }
3449
+ // Temporarily expose input value. Use with caution.
3450
+ get preCheckInput() {
3451
+ return this._preCheck.internalValue;
3452
+ }
3453
+ // request - computed: false, optional: true, required: false
3454
+ _request = new ReportRequestList(this, "request", true);
3455
+ get request() {
3456
+ return this._request;
3457
+ }
3458
+ putRequest(value) {
3459
+ this._request.internalValue = value;
3460
+ }
3461
+ resetRequest() {
3462
+ this._request.internalValue = undefined;
3463
+ }
3464
+ // Temporarily expose input value. Use with caution.
3465
+ get requestInput() {
3466
+ return this._request.internalValue;
3467
+ }
3468
+ // state - computed: false, optional: true, required: false
3469
+ _state = new ReportStateList(this, "state", true);
3470
+ get state() {
3471
+ return this._state;
3472
+ }
3473
+ putState(value) {
3474
+ this._state.internalValue = value;
3475
+ }
3476
+ resetState() {
3477
+ this._state.internalValue = undefined;
3478
+ }
3479
+ // Temporarily expose input value. Use with caution.
3480
+ get stateInput() {
3481
+ return this._state.internalValue;
3482
+ }
3483
+ // tasks - computed: false, optional: true, required: false
3484
+ _tasks = new ReportTasksList(this, "tasks", false);
3485
+ get tasks() {
3486
+ return this._tasks;
3487
+ }
3488
+ putTasks(value) {
3489
+ this._tasks.internalValue = value;
3490
+ }
3491
+ resetTasks() {
3492
+ this._tasks.internalValue = undefined;
3493
+ }
3494
+ // Temporarily expose input value. Use with caution.
3495
+ get tasksInput() {
3496
+ return this._tasks.internalValue;
3497
+ }
3498
+ // =========
3499
+ // SYNTHESIS
3500
+ // =========
3501
+ synthesizeAttributes() {
3502
+ return {
3503
+ duration: cdktf.stringToTerraform(this._duration),
3504
+ end_time: cdktf.stringToTerraform(this._endTime),
3505
+ filename: cdktf.stringToTerraform(this._filename),
3506
+ id: cdktf.stringToTerraform(this._id),
3507
+ name: cdktf.stringToTerraform(this._name),
3508
+ node: cdktf.stringToTerraform(this._node),
3509
+ progress: cdktf.stringToTerraform(this._progress),
3510
+ start_time: cdktf.stringToTerraform(this._startTime),
3511
+ tasks_completed: cdktf.stringToTerraform(this._tasksCompleted),
3512
+ tenant_ref: cdktf.stringToTerraform(this._tenantRef),
3513
+ total_tasks: cdktf.stringToTerraform(this._totalTasks),
3514
+ uuid: cdktf.stringToTerraform(this._uuid),
3515
+ pre_check: cdktf.listMapper(reportPreCheckToTerraform, true)(this._preCheck.internalValue),
3516
+ request: cdktf.listMapper(reportRequestToTerraform, true)(this._request.internalValue),
3517
+ state: cdktf.listMapper(reportStateToTerraform, true)(this._state.internalValue),
3518
+ tasks: cdktf.listMapper(reportTasksToTerraform, true)(this._tasks.internalValue),
3519
+ };
3520
+ }
3521
+ synthesizeHclAttributes() {
3522
+ const attrs = {
3523
+ duration: {
3524
+ value: cdktf.stringToHclTerraform(this._duration),
3525
+ isBlock: false,
3526
+ type: "simple",
3527
+ storageClassType: "string",
3528
+ },
3529
+ end_time: {
3530
+ value: cdktf.stringToHclTerraform(this._endTime),
3531
+ isBlock: false,
3532
+ type: "simple",
3533
+ storageClassType: "string",
3534
+ },
3535
+ filename: {
3536
+ value: cdktf.stringToHclTerraform(this._filename),
3537
+ isBlock: false,
3538
+ type: "simple",
3539
+ storageClassType: "string",
3540
+ },
3541
+ id: {
3542
+ value: cdktf.stringToHclTerraform(this._id),
3543
+ isBlock: false,
3544
+ type: "simple",
3545
+ storageClassType: "string",
3546
+ },
3547
+ name: {
3548
+ value: cdktf.stringToHclTerraform(this._name),
3549
+ isBlock: false,
3550
+ type: "simple",
3551
+ storageClassType: "string",
3552
+ },
3553
+ node: {
3554
+ value: cdktf.stringToHclTerraform(this._node),
3555
+ isBlock: false,
3556
+ type: "simple",
3557
+ storageClassType: "string",
3558
+ },
3559
+ progress: {
3560
+ value: cdktf.stringToHclTerraform(this._progress),
3561
+ isBlock: false,
3562
+ type: "simple",
3563
+ storageClassType: "string",
3564
+ },
3565
+ start_time: {
3566
+ value: cdktf.stringToHclTerraform(this._startTime),
3567
+ isBlock: false,
3568
+ type: "simple",
3569
+ storageClassType: "string",
3570
+ },
3571
+ tasks_completed: {
3572
+ value: cdktf.stringToHclTerraform(this._tasksCompleted),
3573
+ isBlock: false,
3574
+ type: "simple",
3575
+ storageClassType: "string",
3576
+ },
3577
+ tenant_ref: {
3578
+ value: cdktf.stringToHclTerraform(this._tenantRef),
3579
+ isBlock: false,
3580
+ type: "simple",
3581
+ storageClassType: "string",
3582
+ },
3583
+ total_tasks: {
3584
+ value: cdktf.stringToHclTerraform(this._totalTasks),
3585
+ isBlock: false,
3586
+ type: "simple",
3587
+ storageClassType: "string",
3588
+ },
3589
+ uuid: {
3590
+ value: cdktf.stringToHclTerraform(this._uuid),
3591
+ isBlock: false,
3592
+ type: "simple",
3593
+ storageClassType: "string",
3594
+ },
3595
+ pre_check: {
3596
+ value: cdktf.listMapperHcl(reportPreCheckToHclTerraform, true)(this._preCheck.internalValue),
3597
+ isBlock: true,
3598
+ type: "set",
3599
+ storageClassType: "ReportPreCheckList",
3600
+ },
3601
+ request: {
3602
+ value: cdktf.listMapperHcl(reportRequestToHclTerraform, true)(this._request.internalValue),
3603
+ isBlock: true,
3604
+ type: "set",
3605
+ storageClassType: "ReportRequestList",
3606
+ },
3607
+ state: {
3608
+ value: cdktf.listMapperHcl(reportStateToHclTerraform, true)(this._state.internalValue),
3609
+ isBlock: true,
3610
+ type: "set",
3611
+ storageClassType: "ReportStateList",
3612
+ },
3613
+ tasks: {
3614
+ value: cdktf.listMapperHcl(reportTasksToHclTerraform, true)(this._tasks.internalValue),
3615
+ isBlock: true,
3616
+ type: "list",
3617
+ storageClassType: "ReportTasksList",
3618
+ },
3619
+ };
3620
+ // remove undefined attributes
3621
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
3622
+ }
3623
+ }