node-opcua-address-space 2.169.0 → 2.172.0

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 (467) hide show
  1. package/dist/source/address_space_ts.d.ts +13 -13
  2. package/dist/source/address_space_ts.js +4 -0
  3. package/dist/source/address_space_ts.js.map +1 -1
  4. package/dist/source/continuation_points/continuation_point_manager.d.ts +6 -3
  5. package/dist/source/continuation_points/continuation_point_manager.js +4 -4
  6. package/dist/source/continuation_points/continuation_point_manager.js.map +1 -1
  7. package/dist/source/helpers/adjust_browse_direction.d.ts +1 -1
  8. package/dist/source/helpers/argument_list.d.ts +13 -11
  9. package/dist/source/helpers/argument_list.js +24 -15
  10. package/dist/source/helpers/argument_list.js.map +1 -1
  11. package/dist/source/helpers/call_helpers.d.ts +6 -3
  12. package/dist/source/helpers/call_helpers.js +5 -6
  13. package/dist/source/helpers/call_helpers.js.map +1 -1
  14. package/dist/source/helpers/coerce_enum_value.d.ts +2 -2
  15. package/dist/source/helpers/coerce_enum_value.js +2 -2
  16. package/dist/source/helpers/coerce_enum_value.js.map +1 -1
  17. package/dist/source/helpers/dump_tools.d.ts +3 -3
  18. package/dist/source/helpers/dump_tools.js +2 -2
  19. package/dist/source/helpers/dump_tools.js.map +1 -1
  20. package/dist/source/helpers/ensure_secure_access.d.ts +1 -1
  21. package/dist/source/helpers/ensure_secure_access.js +1 -1
  22. package/dist/source/helpers/ensure_secure_access.js.map +1 -1
  23. package/dist/source/helpers/make_optionals_map.js +0 -5
  24. package/dist/source/helpers/make_optionals_map.js.map +1 -1
  25. package/dist/source/helpers/multiform_func.d.ts +1 -1
  26. package/dist/source/helpers/resolve_opaque_on_address_space.d.ts +1 -1
  27. package/dist/source/helpers/resolve_opaque_on_address_space.js +1 -1
  28. package/dist/source/helpers/resolve_opaque_on_address_space.js.map +1 -1
  29. package/dist/source/index.d.ts +38 -38
  30. package/dist/source/index.js +53 -54
  31. package/dist/source/index.js.map +1 -1
  32. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.d.ts +3 -3
  33. package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.d.ts +11 -11
  34. package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.d.ts +6 -6
  35. package/dist/source/interfaces/alarms_and_conditions/install_setpoint_options.d.ts +3 -3
  36. package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.d.ts +4 -4
  37. package/dist/source/interfaces/alarms_and_conditions/instantiate_condition_options.d.ts +2 -2
  38. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.d.ts +2 -2
  39. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.d.ts +2 -2
  40. package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.d.ts +4 -3
  41. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.d.ts +2 -2
  42. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.d.ts +2 -2
  43. package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.d.ts +3 -3
  44. package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.d.ts +10 -13
  45. package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.d.ts +11 -11
  46. package/dist/source/interfaces/alarms_and_conditions/ua_base_event_ex.d.ts +11 -0
  47. package/dist/source/interfaces/alarms_and_conditions/ua_base_event_ex.js +3 -0
  48. package/dist/source/interfaces/alarms_and_conditions/ua_base_event_ex.js.map +1 -0
  49. package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.d.ts +5 -5
  50. package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.d.ts +21 -29
  51. package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.d.ts +3 -7
  52. package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js +0 -23
  53. package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js.map +1 -1
  54. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.d.ts +3 -3
  55. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.d.ts +8 -10
  56. package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.d.ts +4 -6
  57. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.d.ts +5 -5
  58. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.d.ts +3 -3
  59. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.d.ts +7 -7
  60. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.d.ts +5 -8
  61. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.d.ts +5 -5
  62. package/dist/source/interfaces/data_access/ua_y_array_item_ex.d.ts +3 -3
  63. package/dist/source/interfaces/extension_object_constructor.d.ts +3 -3
  64. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.d.ts +3 -3
  65. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.d.ts +2 -2
  66. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.d.ts +3 -3
  67. package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.d.ts +6 -6
  68. package/dist/source/interfaces/state_machine/ua_state_machine_type.d.ts +7 -6
  69. package/dist/source/interfaces/state_machine/ua_state_machine_type.js +4 -0
  70. package/dist/source/interfaces/state_machine/ua_state_machine_type.js.map +1 -1
  71. package/dist/source/interfaces/state_machine/ua_transition_ex.d.ts +2 -2
  72. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.d.ts +2 -2
  73. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.js +3 -0
  74. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.js.map +1 -1
  75. package/dist/source/loader/decode_xml_extension_object.d.ts +4 -4
  76. package/dist/source/loader/decode_xml_extension_object.js +3 -3
  77. package/dist/source/loader/decode_xml_extension_object.js.map +1 -1
  78. package/dist/source/loader/ensure_datatype_extracted.d.ts +2 -2
  79. package/dist/source/loader/ensure_datatype_extracted.js +5 -5
  80. package/dist/source/loader/ensure_datatype_extracted.js.map +1 -1
  81. package/dist/source/loader/generateAddressSpaceRaw.d.ts +3 -3
  82. package/dist/source/loader/generateAddressSpaceRaw.js +6 -6
  83. package/dist/source/loader/generateAddressSpaceRaw.js.map +1 -1
  84. package/dist/source/loader/load_nodeset2.js.map +1 -1
  85. package/dist/source/loader/make_xml_extension_object_parser.d.ts +2 -2
  86. package/dist/source/loader/make_xml_extension_object_parser.js +19 -19
  87. package/dist/source/loader/make_xml_extension_object_parser.js.map +1 -1
  88. package/dist/source/loader/namespace_post_step.d.ts +1 -1
  89. package/dist/source/loader/namespace_post_step.js.map +1 -1
  90. package/dist/source/loader/parsers/extension_object_parser.d.ts +4 -4
  91. package/dist/source/loader/parsers/extension_object_parser.js +22 -23
  92. package/dist/source/loader/parsers/extension_object_parser.js.map +1 -1
  93. package/dist/source/loader/parsers/localized_text_parser.d.ts +2 -2
  94. package/dist/source/loader/parsers/localized_text_parser.js.map +1 -1
  95. package/dist/source/loader/parsers/nodeid_parser.d.ts +1 -1
  96. package/dist/source/loader/parsers/nodeid_parser.js.map +1 -1
  97. package/dist/source/loader/parsers/qualified_name_parser.d.ts +3 -3
  98. package/dist/source/loader/parsers/qualified_name_parser.js.map +1 -1
  99. package/dist/source/loader/parsers/variant_parser.d.ts +5 -5
  100. package/dist/source/loader/parsers/variant_parser.js +13 -13
  101. package/dist/source/loader/parsers/variant_parser.js.map +1 -1
  102. package/dist/source/loader/register_node_promoter.d.ts +1 -1
  103. package/dist/source/loader/register_node_promoter.js.map +1 -1
  104. package/dist/source/namespace.d.ts +4 -4
  105. package/dist/source/namespace_alarm_and_condition.d.ts +22 -21
  106. package/dist/source/namespace_data_access.d.ts +11 -11
  107. package/dist/source/namespace_machine_state.d.ts +4 -4
  108. package/dist/source/pseudo_session.d.ts +8 -5
  109. package/dist/source/pseudo_session.js +28 -28
  110. package/dist/source/pseudo_session.js.map +1 -1
  111. package/dist/source/session_context.js +1 -1
  112. package/dist/source/session_context.js.map +1 -1
  113. package/dist/source/set_namespace_meta_data.d.ts +1 -1
  114. package/dist/source/set_namespace_meta_data.js +1 -1
  115. package/dist/source/set_namespace_meta_data.js.map +1 -1
  116. package/dist/source/ua_addin.d.ts +3 -3
  117. package/dist/source/ua_addin.js +1 -1
  118. package/dist/source/ua_addin.js.map +1 -1
  119. package/dist/source/ua_interface.d.ts +2 -3
  120. package/dist/source/ua_interface.js +13 -33
  121. package/dist/source/ua_interface.js.map +1 -1
  122. package/dist/source/ua_root_folder.d.ts +1 -1
  123. package/dist/source/ua_two_state_variable_ex.d.ts +5 -5
  124. package/dist/src/_instantiate_helpers.d.ts +1 -1
  125. package/dist/src/_instantiate_helpers.js +32 -9
  126. package/dist/src/_instantiate_helpers.js.map +1 -1
  127. package/dist/src/_mandatory_child_or_requested_optional_filter.d.ts +2 -2
  128. package/dist/src/_mandatory_child_or_requested_optional_filter.js +9 -10
  129. package/dist/src/_mandatory_child_or_requested_optional_filter.js.map +1 -1
  130. package/dist/src/address_space.d.ts +2 -2
  131. package/dist/src/address_space.js +13 -15
  132. package/dist/src/address_space.js.map +1 -1
  133. package/dist/src/address_space_change_event_tools.d.ts +3 -3
  134. package/dist/src/address_space_change_event_tools.js +8 -10
  135. package/dist/src/address_space_change_event_tools.js.map +1 -1
  136. package/dist/src/address_space_private.d.ts +11 -11
  137. package/dist/src/address_space_private.js +3 -0
  138. package/dist/src/address_space_private.js.map +1 -1
  139. package/dist/src/alarms_and_conditions/condition.js.map +1 -1
  140. package/dist/src/alarms_and_conditions/condition_info_impl.d.ts +6 -6
  141. package/dist/src/alarms_and_conditions/condition_info_impl.js +6 -15
  142. package/dist/src/alarms_and_conditions/condition_info_impl.js.map +1 -1
  143. package/dist/src/alarms_and_conditions/condition_snapshot_impl.d.ts +10 -10
  144. package/dist/src/alarms_and_conditions/condition_snapshot_impl.js +77 -48
  145. package/dist/src/alarms_and_conditions/condition_snapshot_impl.js.map +1 -1
  146. package/dist/src/alarms_and_conditions/deviation_alarm_helper.d.ts +8 -5
  147. package/dist/src/alarms_and_conditions/deviation_alarm_helper.js +15 -9
  148. package/dist/src/alarms_and_conditions/deviation_alarm_helper.js.map +1 -1
  149. package/dist/src/alarms_and_conditions/index.d.ts +3 -3
  150. package/dist/src/alarms_and_conditions/index.js +3 -3
  151. package/dist/src/alarms_and_conditions/index.js.map +1 -1
  152. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts +21 -14
  153. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js +26 -21
  154. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js.map +1 -1
  155. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.d.ts +6 -7
  156. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js +30 -28
  157. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js.map +1 -1
  158. package/dist/src/alarms_and_conditions/ua_base_event_impl.d.ts +9 -11
  159. package/dist/src/alarms_and_conditions/ua_base_event_impl.js +10 -10
  160. package/dist/src/alarms_and_conditions/ua_base_event_impl.js.map +1 -1
  161. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts +3 -1
  162. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +6 -5
  163. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js.map +1 -1
  164. package/dist/src/alarms_and_conditions/ua_condition_impl.d.ts +16 -42
  165. package/dist/src/alarms_and_conditions/ua_condition_impl.js +100 -82
  166. package/dist/src/alarms_and_conditions/ua_condition_impl.js.map +1 -1
  167. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.d.ts +12 -7
  168. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js +9 -8
  169. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js.map +1 -1
  170. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts +18 -18
  171. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js +16 -18
  172. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js.map +1 -1
  173. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts +4 -4
  174. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js +2 -2
  175. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js.map +1 -1
  176. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts +10 -9
  177. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js +20 -19
  178. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js.map +1 -1
  179. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts +2 -4
  180. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js.map +1 -1
  181. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.d.ts +12 -38
  182. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js +50 -65
  183. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js.map +1 -1
  184. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts +15 -17
  185. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js +15 -11
  186. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js.map +1 -1
  187. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts +22 -15
  188. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js +35 -24
  189. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js.map +1 -1
  190. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts +15 -16
  191. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js +19 -14
  192. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js.map +1 -1
  193. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts +4 -4
  194. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js +1 -1
  195. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js.map +1 -1
  196. package/dist/src/apply_condition_refresh.d.ts +4 -4
  197. package/dist/src/apply_condition_refresh.js +1 -1
  198. package/dist/src/apply_condition_refresh.js.map +1 -1
  199. package/dist/src/base_node_impl.d.ts +5 -7
  200. package/dist/src/base_node_impl.js +3 -3
  201. package/dist/src/base_node_impl.js.map +1 -1
  202. package/dist/src/base_node_private.d.ts +10 -7
  203. package/dist/src/base_node_private.js +73 -50
  204. package/dist/src/base_node_private.js.map +1 -1
  205. package/dist/src/check_value_rank_compatibility.js +11 -7
  206. package/dist/src/check_value_rank_compatibility.js.map +1 -1
  207. package/dist/src/data_access/add_dataItem_stuff.d.ts +1 -1
  208. package/dist/src/data_access/add_dataItem_stuff.js +2 -22
  209. package/dist/src/data_access/add_dataItem_stuff.js.map +1 -1
  210. package/dist/src/data_access/adjust_datavalue_status_code.d.ts +6 -3
  211. package/dist/src/data_access/adjust_datavalue_status_code.js +3 -3
  212. package/dist/src/data_access/adjust_datavalue_status_code.js.map +1 -1
  213. package/dist/src/data_access/ua_multistate_discrete_impl.d.ts +13 -11
  214. package/dist/src/data_access/ua_multistate_discrete_impl.js +28 -23
  215. package/dist/src/data_access/ua_multistate_discrete_impl.js.map +1 -1
  216. package/dist/src/data_access/ua_multistate_value_discrete_impl.d.ts +19 -23
  217. package/dist/src/data_access/ua_multistate_value_discrete_impl.js +31 -31
  218. package/dist/src/data_access/ua_multistate_value_discrete_impl.js.map +1 -1
  219. package/dist/src/data_access/ua_two_state_discrete_impl.d.ts +10 -16
  220. package/dist/src/data_access/ua_two_state_discrete_impl.js +18 -14
  221. package/dist/src/data_access/ua_two_state_discrete_impl.js.map +1 -1
  222. package/dist/src/event_data.d.ts +8 -21
  223. package/dist/src/event_data.js +24 -19
  224. package/dist/src/event_data.js.map +1 -1
  225. package/dist/src/extension_object_array_node.d.ts +5 -2
  226. package/dist/src/extension_object_array_node.js +21 -24
  227. package/dist/src/extension_object_array_node.js.map +1 -1
  228. package/dist/src/get_basic_datatype.d.ts +2 -2
  229. package/dist/src/get_basic_datatype.js.map +1 -1
  230. package/dist/src/historical_access/address_space_historical_data_node.d.ts +3 -3
  231. package/dist/src/historical_access/address_space_historical_data_node.js +24 -17
  232. package/dist/src/historical_access/address_space_historical_data_node.js.map +1 -1
  233. package/dist/src/idx_iterator.js +1 -1
  234. package/dist/src/idx_iterator.js.map +1 -1
  235. package/dist/src/index_current.d.ts +31 -31
  236. package/dist/src/index_current.js +45 -45
  237. package/dist/src/index_current.js.map +1 -1
  238. package/dist/src/namespace_impl.d.ts +4 -3
  239. package/dist/src/namespace_impl.js +17 -14
  240. package/dist/src/namespace_impl.js.map +1 -1
  241. package/dist/src/namespace_private.js.map +1 -1
  242. package/dist/src/nodeid_manager.d.ts +3 -3
  243. package/dist/src/nodeid_manager.js +19 -16
  244. package/dist/src/nodeid_manager.js.map +1 -1
  245. package/dist/src/nodeset_tools/adjust_namespace_array.d.ts +1 -1
  246. package/dist/src/nodeset_tools/construct_namespace_dependency.d.ts +2 -2
  247. package/dist/src/nodeset_tools/construct_namespace_dependency.js +7 -7
  248. package/dist/src/nodeset_tools/construct_namespace_dependency.js.map +1 -1
  249. package/dist/src/nodeset_tools/dump_to_bsd.d.ts +1 -1
  250. package/dist/src/nodeset_tools/dump_to_bsd.js +15 -11
  251. package/dist/src/nodeset_tools/dump_to_bsd.js.map +1 -1
  252. package/dist/src/nodeset_tools/nodeset_to_xml.d.ts +5 -3
  253. package/dist/src/nodeset_tools/nodeset_to_xml.js +64 -67
  254. package/dist/src/nodeset_tools/nodeset_to_xml.js.map +1 -1
  255. package/dist/src/private_namespace.d.ts +2 -2
  256. package/dist/src/private_namespace.js.map +1 -1
  257. package/dist/src/reference_impl.d.ts +2 -2
  258. package/dist/src/reference_impl.js +9 -11
  259. package/dist/src/reference_impl.js.map +1 -1
  260. package/dist/src/role_permissions.d.ts +1 -1
  261. package/dist/src/role_permissions.js.map +1 -1
  262. package/dist/src/state_machine/finite_state_machine.d.ts +11 -14
  263. package/dist/src/state_machine/finite_state_machine.js +36 -30
  264. package/dist/src/state_machine/finite_state_machine.js.map +1 -1
  265. package/dist/src/state_machine/ua_shelving_state_machine_ex.d.ts +8 -6
  266. package/dist/src/state_machine/ua_shelving_state_machine_ex.js +16 -18
  267. package/dist/src/state_machine/ua_shelving_state_machine_ex.js.map +1 -1
  268. package/dist/src/state_machine/ua_two_state_variable.d.ts +12 -11
  269. package/dist/src/state_machine/ua_two_state_variable.js +24 -29
  270. package/dist/src/state_machine/ua_two_state_variable.js.map +1 -1
  271. package/dist/src/tool_isSubtypeOf.d.ts +5 -5
  272. package/dist/src/tool_isSubtypeOf.js +21 -18
  273. package/dist/src/tool_isSubtypeOf.js.map +1 -1
  274. package/dist/src/ua_condition_type.d.ts +1 -1
  275. package/dist/src/ua_data_type_impl.js.map +1 -1
  276. package/dist/src/ua_method_impl.d.ts +9 -5
  277. package/dist/src/ua_method_impl.js +1 -1
  278. package/dist/src/ua_method_impl.js.map +1 -1
  279. package/dist/src/ua_object_impl.d.ts +10 -7
  280. package/dist/src/ua_object_impl.js +43 -15
  281. package/dist/src/ua_object_impl.js.map +1 -1
  282. package/dist/src/ua_object_type_impl.d.ts +7 -5
  283. package/dist/src/ua_object_type_impl.js +6 -7
  284. package/dist/src/ua_object_type_impl.js.map +1 -1
  285. package/dist/src/ua_reference_type_impl.d.ts +6 -8
  286. package/dist/src/ua_reference_type_impl.js +16 -14
  287. package/dist/src/ua_reference_type_impl.js.map +1 -1
  288. package/dist/src/ua_variable_impl.d.ts +44 -45
  289. package/dist/src/ua_variable_impl.js +177 -83
  290. package/dist/src/ua_variable_impl.js.map +1 -1
  291. package/dist/src/ua_variable_impl_ext_obj.d.ts +3 -3
  292. package/dist/src/ua_variable_impl_ext_obj.js +37 -29
  293. package/dist/src/ua_variable_impl_ext_obj.js.map +1 -1
  294. package/dist/src/ua_variable_type_impl.d.ts +11 -11
  295. package/dist/src/ua_variable_type_impl.js +13 -21
  296. package/dist/src/ua_variable_type_impl.js.map +1 -1
  297. package/dist/src/ua_view_impl.d.ts +3 -4
  298. package/dist/src/ua_view_impl.js +5 -6
  299. package/dist/src/ua_view_impl.js.map +1 -1
  300. package/dist/src/validate_data_type_correctness.d.ts +2 -2
  301. package/dist/src/validate_data_type_correctness.js +12 -3
  302. package/dist/src/validate_data_type_correctness.js.map +1 -1
  303. package/dist/tsconfig_base.tsbuildinfo +1 -1
  304. package/distHelpers/add_event_generator_object.d.ts +5 -2
  305. package/distHelpers/add_event_generator_object.js +2 -2
  306. package/distHelpers/add_event_generator_object.js.map +1 -1
  307. package/distHelpers/alarms_and_conditions_demo.d.ts +1 -1
  308. package/distHelpers/alarms_and_conditions_demo.js +4 -6
  309. package/distHelpers/alarms_and_conditions_demo.js.map +1 -1
  310. package/distHelpers/assertHasMatchingReference.d.ts +1 -1
  311. package/distHelpers/assertHasMatchingReference.js +2 -2
  312. package/distHelpers/assertHasMatchingReference.js.map +1 -1
  313. package/distHelpers/boiler_system.d.ts +6 -3
  314. package/distHelpers/boiler_system.js +44 -42
  315. package/distHelpers/boiler_system.js.map +1 -1
  316. package/distHelpers/create_minimalist_address_space_nodeset.d.ts +1 -1
  317. package/distHelpers/create_minimalist_address_space_nodeset.js +25 -27
  318. package/distHelpers/create_minimalist_address_space_nodeset.js.map +1 -1
  319. package/distHelpers/get_address_space_fixture.js +15 -15
  320. package/distHelpers/get_address_space_fixture.js.map +1 -1
  321. package/distHelpers/index.d.ts +2 -2
  322. package/distHelpers/index.js +2 -2
  323. package/distHelpers/index.js.map +1 -1
  324. package/distHelpers/mock_session.d.ts +7 -7
  325. package/distHelpers/mock_session.js +4 -4
  326. package/distHelpers/mock_session.js.map +1 -1
  327. package/distNodeJS/generate_address_space.d.ts +2 -2
  328. package/distNodeJS/generate_address_space.js +2 -2
  329. package/distNodeJS/generate_address_space.js.map +1 -1
  330. package/package.json +36 -36
  331. package/source/address_space_ts.ts +29 -30
  332. package/source/continuation_points/continuation_point_manager.ts +8 -7
  333. package/source/helpers/adjust_browse_direction.ts +1 -1
  334. package/source/helpers/argument_list.ts +37 -25
  335. package/source/helpers/call_helpers.ts +10 -15
  336. package/source/helpers/coerce_enum_value.ts +4 -4
  337. package/source/helpers/dump_tools.ts +6 -11
  338. package/source/helpers/ensure_secure_access.ts +2 -2
  339. package/source/helpers/make_optionals_map.ts +3 -10
  340. package/source/helpers/multiform_func.ts +1 -1
  341. package/source/helpers/resolve_opaque_on_address_space.ts +2 -2
  342. package/source/index.ts +44 -54
  343. package/source/interfaces/alarms_and_conditions/condition_info_i.ts +3 -4
  344. package/source/interfaces/alarms_and_conditions/condition_snapshot.ts +13 -13
  345. package/source/interfaces/alarms_and_conditions/deviation_stuff.ts +8 -10
  346. package/source/interfaces/alarms_and_conditions/install_setpoint_options.ts +4 -5
  347. package/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.ts +4 -6
  348. package/source/interfaces/alarms_and_conditions/instantiate_condition_options.ts +3 -3
  349. package/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.ts +2 -2
  350. package/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.ts +2 -2
  351. package/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.ts +6 -3
  352. package/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.ts +2 -2
  353. package/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.ts +2 -2
  354. package/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.ts +11 -11
  355. package/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.ts +11 -25
  356. package/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.ts +16 -13
  357. package/source/interfaces/alarms_and_conditions/ua_base_event_ex.ts +12 -0
  358. package/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.ts +5 -5
  359. package/source/interfaces/alarms_and_conditions/ua_condition_ex.ts +30 -54
  360. package/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.ts +3 -34
  361. package/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.ts +18 -22
  362. package/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.ts +8 -15
  363. package/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.ts +4 -7
  364. package/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.ts +5 -6
  365. package/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.ts +3 -3
  366. package/source/interfaces/data_access/ua_multistate_discrete_ex.ts +9 -16
  367. package/source/interfaces/data_access/ua_multistate_value_discrete_ex.ts +5 -8
  368. package/source/interfaces/data_access/ua_two_state_discrete_ex.ts +5 -5
  369. package/source/interfaces/data_access/ua_y_array_item_ex.ts +3 -3
  370. package/source/interfaces/extension_object_constructor.ts +3 -4
  371. package/source/interfaces/i_condition_variable_type_setter_options.ts +1 -3
  372. package/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.ts +3 -3
  373. package/source/interfaces/state_machine/ua_finite_state_machine_type.ts +2 -2
  374. package/source/interfaces/state_machine/ua_program_state_machine_type.ts +3 -3
  375. package/source/interfaces/state_machine/ua_shelved_state_machine_ex.ts +10 -7
  376. package/source/interfaces/state_machine/ua_state_machine_type.ts +11 -8
  377. package/source/interfaces/state_machine/ua_transition_ex.ts +2 -2
  378. package/source/interfaces/ua_subscription_diagnostics_variable_ex.ts +3 -2
  379. package/source/loader/decode_xml_extension_object.ts +7 -7
  380. package/source/loader/ensure_datatype_extracted.ts +14 -19
  381. package/source/loader/generateAddressSpaceRaw.ts +12 -13
  382. package/source/loader/load_nodeset2.ts +3 -3
  383. package/source/loader/make_xml_extension_object_parser.ts +55 -39
  384. package/source/loader/namespace_post_step.ts +3 -4
  385. package/source/loader/parsers/extension_object_parser.ts +63 -62
  386. package/source/loader/parsers/localized_text_parser.ts +3 -3
  387. package/source/loader/parsers/nodeid_parser.ts +2 -3
  388. package/source/loader/parsers/qualified_name_parser.ts +6 -7
  389. package/source/loader/parsers/variant_parser.ts +48 -55
  390. package/source/loader/register_node_promoter.ts +2 -2
  391. package/source/namespace.ts +4 -4
  392. package/source/namespace_alarm_and_condition.ts +22 -22
  393. package/source/namespace_data_access.ts +12 -13
  394. package/source/namespace_machine_state.ts +10 -5
  395. package/source/pseudo_session.ts +53 -50
  396. package/source/session_context.ts +1 -1
  397. package/source/set_namespace_meta_data.ts +3 -3
  398. package/source/ua_addin.ts +10 -11
  399. package/source/ua_interface.ts +27 -38
  400. package/source/ua_root_folder.ts +1 -1
  401. package/source/ua_two_state_variable_ex.ts +5 -5
  402. package/source_nodejs/generate_address_space.ts +5 -9
  403. package/src/_instantiate_helpers.ts +78 -25
  404. package/src/_mandatory_child_or_requested_optional_filter.ts +20 -19
  405. package/src/address_space.ts +36 -45
  406. package/src/address_space_change_event_tools.ts +25 -30
  407. package/src/address_space_private.ts +20 -21
  408. package/src/alarms_and_conditions/condition.ts +0 -2
  409. package/src/alarms_and_conditions/condition_info_impl.ts +11 -19
  410. package/src/alarms_and_conditions/condition_snapshot_impl.ts +109 -85
  411. package/src/alarms_and_conditions/deviation_alarm_helper.ts +20 -15
  412. package/src/alarms_and_conditions/index.ts +3 -3
  413. package/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.ts +44 -32
  414. package/src/alarms_and_conditions/ua_alarm_condition_impl.ts +35 -34
  415. package/src/alarms_and_conditions/ua_base_event_impl.ts +15 -19
  416. package/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.ts +6 -2
  417. package/src/alarms_and_conditions/ua_condition_impl.ts +140 -130
  418. package/src/alarms_and_conditions/ua_discrete_alarm_impl.ts +20 -12
  419. package/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.ts +40 -43
  420. package/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.ts +7 -7
  421. package/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.ts +28 -30
  422. package/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.ts +3 -6
  423. package/src/alarms_and_conditions/ua_limit_alarm_impl.ts +59 -90
  424. package/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.ts +31 -27
  425. package/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.ts +57 -36
  426. package/src/alarms_and_conditions/ua_off_normal_alarm_impl.ts +31 -27
  427. package/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.ts +6 -6
  428. package/src/apply_condition_refresh.ts +7 -8
  429. package/src/base_node_impl.ts +64 -45
  430. package/src/base_node_private.ts +171 -139
  431. package/src/check_value_rank_compatibility.ts +19 -15
  432. package/src/data_access/add_dataItem_stuff.ts +3 -4
  433. package/src/data_access/adjust_datavalue_status_code.ts +7 -7
  434. package/src/data_access/ua_multistate_discrete_impl.ts +44 -28
  435. package/src/data_access/ua_multistate_value_discrete_impl.ts +77 -66
  436. package/src/data_access/ua_two_state_discrete_impl.ts +29 -36
  437. package/src/event_data.ts +29 -26
  438. package/src/extension_object_array_node.ts +27 -28
  439. package/src/get_basic_datatype.ts +4 -5
  440. package/src/historical_access/address_space_historical_data_node.ts +65 -50
  441. package/src/idx_iterator.ts +4 -12
  442. package/src/index_current.ts +33 -45
  443. package/src/namespace_impl.ts +75 -62
  444. package/src/namespace_private.ts +2 -8
  445. package/src/nodeid_manager.ts +30 -27
  446. package/src/nodeset_tools/adjust_namespace_array.ts +1 -1
  447. package/src/nodeset_tools/construct_namespace_dependency.ts +15 -16
  448. package/src/nodeset_tools/dump_to_bsd.ts +27 -22
  449. package/src/nodeset_tools/nodeset_to_xml.ts +95 -114
  450. package/src/private_namespace.ts +3 -6
  451. package/src/reference_impl.ts +11 -14
  452. package/src/role_permissions.ts +1 -1
  453. package/src/state_machine/finite_state_machine.ts +60 -61
  454. package/src/state_machine/ua_shelving_state_machine_ex.ts +23 -23
  455. package/src/state_machine/ua_two_state_variable.ts +34 -31
  456. package/src/tool_isSubtypeOf.ts +48 -33
  457. package/src/ua_condition_type.ts +1 -1
  458. package/src/ua_data_type_impl.ts +12 -13
  459. package/src/ua_method_impl.ts +17 -12
  460. package/src/ua_object_impl.ts +73 -39
  461. package/src/ua_object_type_impl.ts +25 -25
  462. package/src/ua_reference_type_impl.ts +19 -19
  463. package/src/ua_variable_impl.ts +316 -219
  464. package/src/ua_variable_impl_ext_obj.ts +63 -50
  465. package/src/ua_variable_type_impl.ts +43 -49
  466. package/src/ua_view_impl.ts +5 -5
  467. package/src/validate_data_type_correctness.ts +17 -8
@@ -1,42 +1,49 @@
1
1
  /**
2
2
  * @module node-opcua-address-space.AlarmsAndConditions
3
3
  */
4
- import { UAAcknowledgeableCondition_Base, UAAcknowledgeableCondition, UACondition } from "node-opcua-nodeset-ua";
4
+
5
+ import type { INamespace, ISessionContext, ListenerSignature, RaiseEventData, UAEventType } from "node-opcua-address-space-base";
5
6
  import { assert } from "node-opcua-assert";
6
- import { LocalizedText, LocalizedTextLike } from "node-opcua-data-model";
7
- import { NodeId } from "node-opcua-nodeid";
8
- import { CallbackT, StatusCode, StatusCodes } from "node-opcua-status-code";
9
- import { DataType, VariantLike, VariantOptions } from "node-opcua-variant";
10
- import { INamespace, RaiseEventData, ISessionContext, UAEventType, UAMethod } from "node-opcua-address-space-base";
11
- import { CallMethodResultOptions } from "node-opcua-service-call";
7
+ import { coerceLocalizedText, LocalizedText, type LocalizedTextLike } from "node-opcua-data-model";
12
8
  import { make_debugLog } from "node-opcua-debug";
13
-
14
- import { AddressSpacePrivate } from "../address_space_private";
9
+ import type { NodeId } from "node-opcua-nodeid";
10
+ import type { UAAcknowledgeableCondition_Base } from "node-opcua-nodeset-ua";
11
+ import type { CallMethodResultOptions } from "node-opcua-service-call";
12
+ import { type CallbackT, type StatusCode, StatusCodes } from "node-opcua-status-code";
13
+ import { DataType, type VariantLike, type VariantOptions } from "node-opcua-variant";
14
+ import type { ConditionSnapshot } from "../../source/interfaces/alarms_and_conditions/condition_snapshot";
15
+ import type { InstantiateAlarmConditionOptions } from "../../source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options";
16
+ import type { UAAcknowledgeableConditionEx } from "../../source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex";
17
+ import type { UAConditionEvents } from "../../source/interfaces/alarms_and_conditions/ua_condition_ex";
18
+ import type { AddressSpacePrivate } from "../address_space_private";
15
19
  import { _install_TwoStateVariable_machinery } from "../state_machine/ua_two_state_variable";
16
- import { UAAcknowledgeableConditionEx } from "../../source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex";
17
- import { ConditionSnapshot } from "../../source/interfaces/alarms_and_conditions/condition_snapshot";
18
- import { InstantiateAlarmConditionOptions } from "../../source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options";
19
20
  import { ConditionSnapshotImpl } from "./condition_snapshot_impl";
20
- import { UAConditionImpl } from "./ua_condition_impl";
21
+ import { type UAConditionImpl, UAConditionImplBase } from "./ua_condition_impl";
21
22
 
22
23
  const debugLog = make_debugLog(__filename);
23
- const doDebug = false;;
24
- export declare interface UAAcknowledgeableConditionImpl extends UAAcknowledgeableConditionEx, UAConditionImpl {
25
- on(eventName: string, eventHandler: any): this;
26
- once(eventName: string, eventHandler: any): this;
24
+ const doDebug = false;
27
25
 
28
- }
29
26
 
30
- export class UAAcknowledgeableConditionImpl extends UAConditionImpl implements UAAcknowledgeableConditionEx {
27
+ const $ = (a: UAAcknowledgeableConditionImplBase): UAAcknowledgeableConditionEx => a as unknown as UAAcknowledgeableConditionEx;
28
+
29
+
30
+ export interface UAAcknowegeableConditionEvents extends UAConditionEvents {
31
+ acknowledged: (eventId: Buffer | null, comment: LocalizedText | null, branch: ConditionSnapshot) => void;
32
+ confirmed: (eventId: Buffer | null, comment: LocalizedText | null, branch: ConditionSnapshot) => void;
33
+ }
34
+ export class UAAcknowledgeableConditionImplBase<
35
+ T extends UAAcknowegeableConditionEvents & ListenerSignature<T> = UAAcknowegeableConditionEvents
36
+ > extends UAConditionImplBase<T> {
31
37
  /**
32
38
  */
39
+
33
40
  public static instantiate(
34
41
  namespace: INamespace,
35
42
  conditionTypeId: UAEventType | NodeId | string,
36
43
  options: InstantiateAlarmConditionOptions,
37
44
  data?: Record<string, VariantOptions>
38
45
  ): UAAcknowledgeableConditionImpl {
39
- const conditionNode = UAConditionImpl.instantiate(
46
+ const conditionNode = UAConditionImplBase.instantiate(
40
47
  namespace,
41
48
  conditionTypeId,
42
49
  options,
@@ -180,7 +187,7 @@ export class UAAcknowledgeableConditionImpl extends UAConditionImpl implements U
180
187
  return statusCode;
181
188
  }
182
189
 
183
- if (this.confirmedState) {
190
+ if ($(this).confirmedState) {
184
191
  // alarm has a confirmed state !
185
192
  // we should be waiting for confirmation now
186
193
  branch.setConfirmedState(false);
@@ -194,7 +201,7 @@ export class UAAcknowledgeableConditionImpl extends UAConditionImpl implements U
194
201
  this.raiseNewBranchState(branch);
195
202
 
196
203
  this._raiseAuditConditionAcknowledgeEvent(branch);
197
-
204
+
198
205
  /**
199
206
  * @event acknowledged
200
207
  * @param eventId {Buffer|null}
@@ -202,7 +209,7 @@ export class UAAcknowledgeableConditionImpl extends UAConditionImpl implements U
202
209
  * @param branch {ConditionSnapshot}
203
210
  * raised when the alarm branch has been acknowledged
204
211
  */
205
- this.emit("acknowledged", conditionEventId, comment, branch);
212
+ (this as UAAcknowledgeableConditionImplBase).emit("acknowledged", conditionEventId, coerceLocalizedText(comment), branch);
206
213
 
207
214
  return StatusCodes.Good;
208
215
  }
@@ -233,21 +240,22 @@ export class UAAcknowledgeableConditionImpl extends UAConditionImpl implements U
233
240
 
234
241
  this.raiseNewBranchState(branch);
235
242
 
236
- /**
243
+ /**
237
244
  * @event confirmed
238
245
  * @param eventId
239
246
  * @param comment
240
247
  * @param eventId
241
248
  * raised when the alarm branch has been confirmed
242
249
  */
243
- this.emit("confirmed", conditionEventId, comment, branch);
250
+ (this as UAAcknowledgeableConditionImplBase).emit("confirmed", conditionEventId, coerceLocalizedText(comment), branch);
244
251
  }
245
252
 
246
253
  /**
254
+ *
247
255
  */
248
256
  public autoConfirmBranch(branch: ConditionSnapshot, comment: LocalizedTextLike): void {
249
257
  assert(branch instanceof ConditionSnapshotImpl);
250
- if (!this.confirmedState) {
258
+ if (!$(this).confirmedState) {
251
259
  // no confirmedState => ignoring
252
260
  return;
253
261
  }
@@ -260,10 +268,10 @@ export class UAAcknowledgeableConditionImpl extends UAConditionImpl implements U
260
268
  }
261
269
 
262
270
  /**
263
- *
271
+ *
264
272
  */
265
273
  public acknowledgeAndAutoConfirmBranch(branch: ConditionSnapshot, comment: string | LocalizedTextLike | LocalizedText): void {
266
- comment = LocalizedText.coerce(comment)!;
274
+ comment = LocalizedText.coerce(comment) as LocalizedText;
267
275
  const conditionEventId = branch.getEventId();
268
276
  branch.setRetain(false);
269
277
  this._acknowledge_branch(conditionEventId, comment, branch, "Server/Acknowledge");
@@ -271,17 +279,21 @@ export class UAAcknowledgeableConditionImpl extends UAConditionImpl implements U
271
279
  }
272
280
  }
273
281
 
282
+ export type UAAcknowledgeableConditionImpl = UAAcknowledgeableConditionImplBase & UAAcknowledgeableConditionEx;
283
+ export const UAAcknowledgeableConditionImpl =
284
+ UAAcknowledgeableConditionImplBase as unknown as new () => UAAcknowledgeableConditionImpl;
285
+
274
286
  function _acknowledge_method(
275
287
  inputArguments: VariantLike[],
276
288
  context: ISessionContext,
277
289
  callback: CallbackT<CallMethodResultOptions>
278
290
  ) {
279
- UAConditionImpl.with_condition_method(
291
+ UAConditionImplBase.with_condition_method(
280
292
  inputArguments,
281
293
  context,
282
294
  callback,
283
295
  (conditionEventId: Buffer, comment: LocalizedText, branch: ConditionSnapshot, conditionNode: UAConditionImpl) => {
284
- const ackConditionNode = conditionNode as UAAcknowledgeableConditionImpl;
296
+ const ackConditionNode = conditionNode as unknown as UAAcknowledgeableConditionImplBase;
285
297
  // precondition checking
286
298
  assert(!conditionEventId || conditionEventId instanceof Buffer, "must have a valid eventId or null");
287
299
  assert(comment instanceof LocalizedText, "expecting a comment as LocalizedText");
@@ -301,7 +313,7 @@ function _acknowledge_method(
301
313
  * @private
302
314
  */
303
315
  function _confirm_method(inputArguments: VariantLike[], context: ISessionContext, callback: CallbackT<CallMethodResultOptions>) {
304
- UAConditionImpl.with_condition_method(
316
+ UAConditionImplBase.with_condition_method(
305
317
  inputArguments,
306
318
  context,
307
319
  callback,
@@ -310,7 +322,7 @@ function _confirm_method(inputArguments: VariantLike[], context: ISessionContext
310
322
  assert(branch.getEventId() instanceof Buffer);
311
323
  assert(branch.getEventId().toString("hex") === eventId.toString("hex"));
312
324
 
313
- const ackConditionNode = conditionNode as UAAcknowledgeableConditionImpl;
325
+ const ackConditionNode = conditionNode as unknown as UAAcknowledgeableConditionImplBase;
314
326
  if (branch.getConfirmedState()) {
315
327
  return StatusCodes.BadConditionBranchAlreadyConfirmed;
316
328
  }
@@ -14,11 +14,10 @@ import type { ConditionInfo } from "../../source/interfaces/alarms_and_condition
14
14
  import type { InstantiateAlarmConditionOptions } from "../../source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options";
15
15
  import type { UAAlarmConditionEx } from "../../source/interfaces/alarms_and_conditions/ua_alarm_condition_ex";
16
16
  import type { AddressSpacePrivate } from "../address_space_private";
17
- import { _clear_timer_if_any, UAShelvedStateMachineExImpl } from "../state_machine/ua_shelving_state_machine_ex";
17
+ import { _clear_timer_if_any, type UAShelvedStateMachineExImpl, UAShelvedStateMachineExImplBase } from "../state_machine/ua_shelving_state_machine_ex";
18
18
  import { _install_TwoStateVariable_machinery } from "../state_machine/ua_two_state_variable";
19
-
20
19
  import { ConditionInfoImpl } from "./condition_info_impl";
21
- import { UAAcknowledgeableConditionImpl } from "./ua_acknowledgeable_condition_impl";
20
+ import { UAAcknowledgeableConditionImpl, UAAcknowledgeableConditionImplBase } from "./ua_acknowledgeable_condition_impl";
22
21
 
23
22
  const debugLog = make_debugLog(__filename);
24
23
 
@@ -28,11 +27,9 @@ function _update_suppressedOrShelved(alarmNode: UAAlarmConditionImpl) {
28
27
  value: alarmNode.isSuppressedOrShelved()
29
28
  });
30
29
  }
31
- export declare interface UAAlarmConditionImpl extends UAAlarmConditionEx, UAAcknowledgeableConditionImpl {
32
- on(eventName: string, eventHandler: any): this;
33
- }
34
30
 
35
- export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl implements UAAlarmConditionEx {
31
+ const $ = (a: UAAlarmConditionImplBase): UAAlarmConditionEx => a as unknown as UAAlarmConditionEx;
32
+ export class UAAlarmConditionImplBase extends UAAcknowledgeableConditionImplBase {
36
33
  public static MaxDuration = 2 ** 31;
37
34
 
38
35
  public static instantiate(
@@ -60,17 +57,17 @@ export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl impleme
60
57
  options.optionals = options.optionals || [];
61
58
  if (Object.hasOwn(options, "maxTimeShelved")) {
62
59
  options.optionals.push("MaxTimeShelved");
63
- assert(Number.isFinite(options.maxTimeShelved!));
60
+ assert(Number.isFinite(options.maxTimeShelved));
64
61
  }
65
62
 
66
63
  assert(alarmConditionTypeBase === alarmConditionType || alarmConditionType.isSubtypeOf(alarmConditionTypeBase));
67
64
 
68
- const alarmNode = UAAcknowledgeableConditionImpl.instantiate(
65
+ const alarmNode = UAAcknowledgeableConditionImplBase.instantiate(
69
66
  namespace,
70
67
  alarmConditionTypeId,
71
68
  options,
72
69
  data
73
- ) as UAAlarmConditionImpl;
70
+ ) as unknown as UAAlarmConditionImpl;
74
71
  Object.setPrototypeOf(alarmNode, UAAlarmConditionImpl.prototype);
75
72
 
76
73
  // ----------------------- Install Alarm specifics
@@ -123,7 +120,7 @@ export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl impleme
123
120
  * @type ShelvingStateMachine
124
121
  */
125
122
  if (alarmNode.shelvingState) {
126
- UAShelvedStateMachineExImpl.promote(alarmNode.shelvingState);
123
+ UAShelvedStateMachineExImplBase.promote(alarmNode.shelvingState);
127
124
  }
128
125
 
129
126
  // SuppressedOrShelved : Mandatory
@@ -181,9 +178,10 @@ export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl impleme
181
178
  return alarmNode;
182
179
  }
183
180
 
181
+
184
182
  public dispose(): void {
185
- if (this.shelvingState) {
186
- _clear_timer_if_any(this.shelvingState as any as UAShelvedStateMachineExImpl);
183
+ if ($(this).shelvingState) {
184
+ _clear_timer_if_any($(this).shelvingState as unknown as UAShelvedStateMachineExImpl);
187
185
  }
188
186
  super.dispose();
189
187
  }
@@ -217,12 +215,12 @@ export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl impleme
217
215
 
218
216
  public isSuppressedOrShelved(): boolean {
219
217
  let suppressed = false;
220
- if (this.suppressedState) {
221
- suppressed = this.suppressedState.id?.readValue().value.value;
218
+ if ($(this).suppressedState) {
219
+ suppressed = $(this).suppressedState?.id?.readValue().value.value || false;
222
220
  }
223
221
  let shelved = false;
224
- if (this.shelvingState) {
225
- const shelvedValue = this.shelvingState.currentState.readValue().value.value;
222
+ if ($(this).shelvingState) {
223
+ const shelvedValue = $(this).shelvingState?.currentState.readValue().value.value;
226
224
  if (shelvedValue && shelvedValue.text !== "Unshelved") {
227
225
  shelved = true;
228
226
  }
@@ -231,7 +229,7 @@ export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl impleme
231
229
  }
232
230
 
233
231
  public getSuppressedOrShelved(): boolean {
234
- return this.suppressedOrShelved.readValue().value.value;
232
+ return $(this).suppressedOrShelved.readValue().value.value;
235
233
  }
236
234
 
237
235
  /**
@@ -242,7 +240,7 @@ export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl impleme
242
240
  if (duration < 10 || duration >= 2 ** 31) {
243
241
  throw new Error(` Invalid maxTimeShelved duration: ${duration} must be [10,2**31] `);
244
242
  }
245
- this.maxTimeShelved?.setValueFromSource({
243
+ $(this).maxTimeShelved?.setValueFromSource({
246
244
  dataType: "Duration", // <= Duration is basic Type Double! ( milliseconds)
247
245
  value: duration
248
246
  });
@@ -252,14 +250,14 @@ export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl impleme
252
250
  * note: return a Duration
253
251
  */
254
252
  public getMaxTimeShelved(): number {
255
- if (!this.maxTimeShelved) {
253
+ if (!$(this).maxTimeShelved) {
256
254
  // if maxTimeShelved is not provided we assume MaxDuration
257
- assert(UAAlarmConditionImpl.MaxDuration <= 2147483648, "MaxDuration cannot be greater than 2**31");
258
- return UAAlarmConditionImpl.MaxDuration;
255
+ assert(UAAlarmConditionImplBase.MaxDuration <= 2147483648, "MaxDuration cannot be greater than 2**31");
256
+ return UAAlarmConditionImplBase.MaxDuration;
259
257
  }
260
- const dataValue = this.maxTimeShelved.readValue();
261
- assert(dataValue.value.dataType === DataType.Double); // Double <= Duration
262
- return dataValue.value.value;
258
+ const dataValue = $(this).maxTimeShelved?.readValue();
259
+ assert(dataValue?.value.dataType === DataType.Double); // Double <= Duration
260
+ return dataValue?.value.value || 0;
263
261
  }
264
262
 
265
263
  /**
@@ -273,20 +271,20 @@ export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl impleme
273
271
  * whose node id is stored in alarm.inputNode
274
272
  */
275
273
  public getInputNodeNode(): UAVariable | null {
276
- const nodeId = this.inputNode.readValue().value.value;
274
+ const nodeId =$(this).inputNode.readValue().value.value;
277
275
  assert(nodeId instanceof NodeId || nodeId === null);
278
276
  return this.addressSpace.findNode(nodeId) as UAVariable | null;
279
277
  }
280
278
  /**
281
279
  *
282
280
  */
283
- public getInputNodeValue(): any | null {
281
+ public getInputNodeValue(): number | null {
284
282
  const node = this.getInputNodeNode();
285
283
  if (!node) {
286
284
  return null;
287
285
  }
288
286
  assert(node.nodeClass === NodeClass.Variable);
289
- return node.readValue().value.value;
287
+ return node.readValue().value.value || 0;
290
288
  }
291
289
 
292
290
  public updateState(): void {
@@ -317,18 +315,18 @@ export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl impleme
317
315
  * @property inputNode
318
316
  * @type UAVariable
319
317
  */
320
- assert(this.inputNode.nodeClass === NodeClass.Variable);
318
+ assert($(this).inputNode.nodeClass === NodeClass.Variable);
321
319
 
322
320
  const addressSpace = this.addressSpace as AddressSpacePrivate;
323
321
  assert(inputNode, " must provide options.inputNode (NodeId or BaseNode object)");
324
322
 
325
323
  if (inputNode instanceof NodeId) {
326
- this.inputNode.setValueFromSource({
324
+ $(this).inputNode.setValueFromSource({
327
325
  dataType: DataType.NodeId,
328
326
  value: inputNode as NodeId
329
327
  });
330
328
  } else {
331
- this.inputNode.setValueFromSource({
329
+ $(this).inputNode.setValueFromSource({
332
330
  dataType: "NodeId",
333
331
  value: (inputNode as BaseNode).nodeId
334
332
  });
@@ -338,7 +336,7 @@ export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl impleme
338
336
  debugLog(" cannot find nodeId ", inputNode);
339
337
  } else {
340
338
  assert(_node, "Expecting a valid input node");
341
- this.inputNode.setValueFromSource({
339
+ $(this).inputNode.setValueFromSource({
342
340
  dataType: DataType.NodeId,
343
341
  value: _node.nodeId
344
342
  });
@@ -420,7 +418,7 @@ export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl impleme
420
418
  this.currentBranch().setActiveState(false);
421
419
  this.currentBranch().setAckedState(true);
422
420
  }
423
- public _signalNewCondition(stateName: string | null, isActive?: boolean, value?: string): void {
421
+ public _signalNewCondition(stateName: string | null, isActive: boolean, value: string): void {
424
422
  // xx if(stateName === null) {
425
423
  // xx alarm.currentBranch().setActiveState(false);
426
424
  // xx alarm.currentBranch().setAckedState(true);
@@ -431,7 +429,7 @@ export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl impleme
431
429
  // xx assert(isActive !== alarm.activeState.getValue());
432
430
 
433
431
  const oldConditionInfo = this.getCurrentConditionInfo();
434
- const newConditionInfo = this._calculateConditionInfo(stateName, !!isActive, value!, oldConditionInfo);
432
+ const newConditionInfo = this._calculateConditionInfo(stateName, isActive, value, oldConditionInfo);
435
433
 
436
434
  // detect potential internal bugs due to misused of _signalNewCondition
437
435
  if (isEqual(oldConditionInfo, newConditionInfo)) {
@@ -469,3 +467,6 @@ export class UAAlarmConditionImpl extends UAAcknowledgeableConditionImpl impleme
469
467
  }
470
468
  }
471
469
  }
470
+
471
+ export type UAAlarmConditionImpl = UAAlarmConditionImplBase & UAAlarmConditionEx;
472
+ export const UAAlarmConditionImpl = UAAlarmConditionImplBase as unknown as new () => UAAlarmConditionImpl;
@@ -1,46 +1,42 @@
1
1
  /**
2
2
  * @module node-opcua-address-space.AlarmsAndConditions
3
3
  */
4
+
5
+ import type { BaseNode, ListenerSignature } from "node-opcua-address-space-base";
4
6
  import { assert } from "node-opcua-assert";
5
- import { NodeId } from "node-opcua-nodeid";
7
+ import type { NodeId } from "node-opcua-nodeid";
6
8
  import { DataType, Variant } from "node-opcua-variant";
7
- import { BaseNode } from "node-opcua-address-space-base";
8
- import { UABaseEvent_Base, UABaseEvent } from "node-opcua-nodeset-ua";
9
-
9
+ import type { UABaseEventEvents, UABaseEventEx } from "../../source/interfaces/alarms_and_conditions/ua_base_event_ex";
10
+ import { BaseNodeImpl } from "../base_node_impl";
10
11
  import { UAObjectImpl } from "../ua_object_impl";
11
- import { UABaseEventHelper } from "../../source/interfaces/alarms_and_conditions/ua_condition_ex";
12
12
 
13
- export interface UABaseEventEx extends UABaseEvent_Base, UABaseEventHelper {
14
- /** empty interface */
15
- }
16
- export declare interface UABaseEventImpl extends UABaseEventEx {
17
- /** empty interface */
18
- }
13
+ export type { UABaseEventEvents, UABaseEventEx } from "../../source/interfaces/alarms_and_conditions/ua_base_event_ex";
19
14
 
20
- /**
21
- * @internal
22
- */
23
- export class UABaseEventImpl extends UAObjectImpl implements UABaseEventEx {
15
+ const $ = (a: UABaseEventImplBase): UABaseEventEx => a as unknown as UABaseEventEx;
16
+
17
+ export class UABaseEventImplBase<T extends UABaseEventEvents & ListenerSignature<T> = UABaseEventEvents> extends UAObjectImpl<T> {
24
18
  /**
25
19
  */
26
20
  public setSourceName(name: string): void {
27
21
  assert(typeof name === "string");
28
- this.sourceName.setValueFromSource(
22
+ $(this).sourceName.setValueFromSource(
29
23
  new Variant({
30
24
  dataType: DataType.String,
31
25
  value: name
32
26
  })
33
27
  );
34
28
  }
35
-
36
29
  /**
37
30
  */
38
31
  public setSourceNode(node: NodeId | BaseNode): void {
39
- this.sourceNode.setValueFromSource(
32
+ $(this).sourceNode.setValueFromSource(
40
33
  new Variant({
41
34
  dataType: DataType.NodeId,
42
- value: (node as any).nodeId ? (node as any).nodeId : node
35
+ value: node instanceof BaseNodeImpl ? node.nodeId : node
43
36
  })
44
37
  );
45
38
  }
46
39
  }
40
+
41
+ export type UABaseEventImpl = UABaseEventImplBase & UABaseEventEx;
42
+ export const UABaseEventImpl = UABaseEventImplBase as unknown as new () => UABaseEventImpl;
@@ -29,7 +29,7 @@ export function instantiateCertificateExpirationAlarm(
29
29
  alarmType: "CertificateExpirationAlarmType",
30
30
  options: InstantiateOffNormalAlarmOptions
31
31
  ): UACertificateExpirationAlarmEx {
32
- return UACertificateExpirationAlarmImpl.instantiate(namespace, alarmType, options);
32
+ return UACertificateExpirationAlarmImplBase.instantiate(namespace, alarmType, options);
33
33
  }
34
34
 
35
35
  // This Simple DataType is a Double that defines an interval of time in milliseconds (fractions can be used to define sub-millisecond values).
@@ -42,7 +42,7 @@ export const TwoWeeksDuration = OneDayDuration * 2 * 7;
42
42
  * Certificate is within the ExpirationLimit
43
43
  * of expiration. This alarm automatically returns to normal when the certificate is updated.
44
44
  */
45
- class UACertificateExpirationAlarmImpl extends UASystemOffNormalAlarmImpl implements UACertificateExpirationAlarmEx {
45
+ class UACertificateExpirationAlarmImplBase extends UASystemOffNormalAlarmImpl {
46
46
  declare expirationDate: UAProperty<Date, DataType.DateTime>;
47
47
  declare expirationLimit: UAProperty<number, DataType.Double> | undefined;
48
48
  declare certificateType: UAProperty<NodeId, DataType.NodeId>;
@@ -238,3 +238,7 @@ export function promoteToCertificateExpirationAlarm(node: UAObject): UACertifica
238
238
  return _node;
239
239
  }
240
240
  registerNodePromoter(ObjectTypeIds.CertificateExpirationAlarmType, promoteToCertificateExpirationAlarm, true);
241
+
242
+ export type UACertificateExpirationAlarmImpl = UACertificateExpirationAlarmImplBase & UACertificateExpirationAlarmEx;
243
+ export const UACertificateExpirationAlarmImpl: new () => UACertificateExpirationAlarmImpl =
244
+ UACertificateExpirationAlarmImplBase as any;