node-opcua-address-space 2.75.0 → 2.76.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 (312) hide show
  1. package/dist/source/address_space_ts.d.ts +118 -118
  2. package/dist/source/address_space_ts.js +17 -17
  3. package/dist/source/continuation_points/continuation_point_manager.d.ts +32 -32
  4. package/dist/source/continuation_points/continuation_point_manager.js +195 -195
  5. package/dist/source/helpers/adjust_browse_direction.d.ts +5 -5
  6. package/dist/source/helpers/adjust_browse_direction.js +11 -11
  7. package/dist/source/helpers/argument_list.d.ts +33 -33
  8. package/dist/source/helpers/argument_list.js +258 -258
  9. package/dist/source/helpers/call_helpers.d.ts +6 -6
  10. package/dist/source/helpers/call_helpers.js +70 -70
  11. package/dist/source/helpers/coerce_enum_value.d.ts +6 -6
  12. package/dist/source/helpers/coerce_enum_value.js +33 -33
  13. package/dist/source/helpers/dump_tools.d.ts +14 -14
  14. package/dist/source/helpers/dump_tools.js +78 -78
  15. package/dist/source/helpers/ensure_secure_access.d.ts +9 -9
  16. package/dist/source/helpers/ensure_secure_access.js +76 -76
  17. package/dist/source/helpers/make_optionals_map.d.ts +21 -21
  18. package/dist/source/helpers/make_optionals_map.js +29 -29
  19. package/dist/source/helpers/multiform_func.d.ts +11 -11
  20. package/dist/source/helpers/multiform_func.js +75 -75
  21. package/dist/source/helpers/resolve_opaque_on_address_space.d.ts +3 -3
  22. package/dist/source/helpers/resolve_opaque_on_address_space.js +36 -36
  23. package/dist/source/index.d.ts +56 -56
  24. package/dist/source/index.js +83 -83
  25. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.d.ts +19 -19
  26. package/dist/source/interfaces/alarms_and_conditions/condition_info_i.js +2 -2
  27. package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.d.ts +193 -193
  28. package/dist/source/interfaces/alarms_and_conditions/condition_snapshot.js +2 -2
  29. package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.d.ts +12 -12
  30. package/dist/source/interfaces/alarms_and_conditions/deviation_stuff.js +2 -2
  31. package/dist/source/interfaces/alarms_and_conditions/install_setpoint_options.d.ts +10 -10
  32. package/dist/source/interfaces/alarms_and_conditions/install_setpoint_options.js +2 -2
  33. package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.d.ts +7 -7
  34. package/dist/source/interfaces/alarms_and_conditions/instantiate_alarm_condition_options.js +2 -2
  35. package/dist/source/interfaces/alarms_and_conditions/instantiate_condition_options.d.ts +7 -7
  36. package/dist/source/interfaces/alarms_and_conditions/instantiate_condition_options.js +2 -2
  37. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.d.ts +4 -4
  38. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_deviation_alarm_options.js +2 -2
  39. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.d.ts +4 -4
  40. package/dist/source/interfaces/alarms_and_conditions/instantiate_exclusive_limit_alarm_options.js +2 -2
  41. package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.d.ts +9 -9
  42. package/dist/source/interfaces/alarms_and_conditions/instantiate_limit_alarm_options.js +2 -2
  43. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.d.ts +4 -4
  44. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_deviation_alarm_options.js +2 -2
  45. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.d.ts +4 -4
  46. package/dist/source/interfaces/alarms_and_conditions/instantiate_non_exclusive_limit_alarm_options.js +2 -2
  47. package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.d.ts +20 -20
  48. package/dist/source/interfaces/alarms_and_conditions/instantiate_off_normal_alarm_options.js +2 -2
  49. package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.d.ts +23 -23
  50. package/dist/source/interfaces/alarms_and_conditions/ua_acknowledgeable_condition_ex.js +2 -2
  51. package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.d.ts +32 -32
  52. package/dist/source/interfaces/alarms_and_conditions/ua_alarm_condition_ex.js +2 -2
  53. package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.d.ts +19 -15
  54. package/dist/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.js +2 -2
  55. package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.d.ts +42 -42
  56. package/dist/source/interfaces/alarms_and_conditions/ua_condition_ex.js +2 -2
  57. package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.d.ts +7 -7
  58. package/dist/source/interfaces/alarms_and_conditions/ua_discrete_alarm_ex.js +25 -25
  59. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.d.ts +5 -5
  60. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_deviation_alarm_ex.js +2 -2
  61. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.d.ts +20 -20
  62. package/dist/source/interfaces/alarms_and_conditions/ua_exclusive_limit_alarm_ex.js +2 -2
  63. package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.d.ts +26 -26
  64. package/dist/source/interfaces/alarms_and_conditions/ua_limit_alarm_ex.js +2 -2
  65. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.d.ts +8 -8
  66. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_deviation_alarm_ex.js +2 -2
  67. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.d.ts +10 -10
  68. package/dist/source/interfaces/alarms_and_conditions/ua_non_exclusive_limit_alarm_ex.js +2 -2
  69. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.d.ts +21 -21
  70. package/dist/source/interfaces/data_access/ua_multistate_discrete_ex.js +2 -2
  71. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.d.ts +24 -24
  72. package/dist/source/interfaces/data_access/ua_multistate_value_discrete_ex.js +2 -2
  73. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.d.ts +12 -12
  74. package/dist/source/interfaces/data_access/ua_two_state_discrete_ex.js +2 -2
  75. package/dist/source/interfaces/data_access/ua_y_array_item_ex.d.ts +8 -8
  76. package/dist/source/interfaces/data_access/ua_y_array_item_ex.js +2 -2
  77. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.d.ts +12 -12
  78. package/dist/source/interfaces/state_machine/ua_exclusive_limit_state_machine_type_ex.js +2 -2
  79. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.d.ts +49 -49
  80. package/dist/source/interfaces/state_machine/ua_finite_state_machine_type.js +2 -2
  81. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.d.ts +11 -11
  82. package/dist/source/interfaces/state_machine/ua_program_state_machine_type.js +2 -2
  83. package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.d.ts +30 -30
  84. package/dist/source/interfaces/state_machine/ua_shelved_state_machine_ex.js +2 -2
  85. package/dist/source/interfaces/state_machine/ua_state_machine_type.d.ts +222 -222
  86. package/dist/source/interfaces/state_machine/ua_state_machine_type.js +2 -2
  87. package/dist/source/interfaces/state_machine/ua_transition_ex.d.ts +6 -6
  88. package/dist/source/interfaces/state_machine/ua_transition_ex.js +2 -2
  89. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.d.ts +8 -8
  90. package/dist/source/interfaces/ua_subscription_diagnostics_variable_ex.js +2 -2
  91. package/dist/source/loader/decode_xml_extension_object.d.ts +6 -6
  92. package/dist/source/loader/decode_xml_extension_object.js +71 -71
  93. package/dist/source/loader/ensure_datatype_extracted.d.ts +5 -5
  94. package/dist/source/loader/ensure_datatype_extracted.js +45 -45
  95. package/dist/source/loader/generateAddressSpaceRaw.d.ts +10 -10
  96. package/dist/source/loader/generateAddressSpaceRaw.js +45 -45
  97. package/dist/source/loader/load_nodeset2.d.ts +16 -16
  98. package/dist/source/loader/load_nodeset2.js +1461 -1461
  99. package/dist/source/loader/make_semver_compatible.d.ts +6 -6
  100. package/dist/source/loader/make_semver_compatible.js +25 -25
  101. package/dist/source/loader/make_xml_extension_object_parser.d.ts +28 -28
  102. package/dist/source/loader/make_xml_extension_object_parser.js +325 -325
  103. package/dist/source/loader/namespace_post_step.d.ts +10 -6
  104. package/dist/source/loader/namespace_post_step.js +61 -47
  105. package/dist/source/loader/namespace_post_step.js.map +1 -1
  106. package/dist/source/loader/register_node_promoter.d.ts +2 -3
  107. package/dist/source/loader/register_node_promoter.js +9 -9
  108. package/dist/source/loader/register_node_promoter.js.map +1 -1
  109. package/dist/source/namespace.d.ts +6 -6
  110. package/dist/source/namespace.js +2 -2
  111. package/dist/source/namespace_alarm_and_condition.d.ts +32 -32
  112. package/dist/source/namespace_alarm_and_condition.js +2 -2
  113. package/dist/source/namespace_data_access.d.ts +42 -42
  114. package/dist/source/namespace_data_access.js +2 -2
  115. package/dist/source/namespace_machine_state.d.ts +7 -7
  116. package/dist/source/namespace_machine_state.js +2 -2
  117. package/dist/source/pseudo_session.d.ts +55 -55
  118. package/dist/source/pseudo_session.js +203 -203
  119. package/dist/source/session_context.d.ts +111 -111
  120. package/dist/source/session_context.js +265 -265
  121. package/dist/source/set_namespace_meta_data.d.ts +2 -2
  122. package/dist/source/set_namespace_meta_data.js +59 -59
  123. package/dist/source/ua_root_folder.d.ts +9 -9
  124. package/dist/source/ua_root_folder.js +2 -2
  125. package/dist/source/ua_two_state_variable_ex.d.ts +23 -23
  126. package/dist/source/ua_two_state_variable_ex.js +2 -2
  127. package/dist/source/xml_writer.d.ts +9 -9
  128. package/dist/source/xml_writer.js +2 -2
  129. package/dist/src/address_space.d.ts +392 -392
  130. package/dist/src/address_space.js +1392 -1392
  131. package/dist/src/address_space_change_event_tools.d.ts +6 -6
  132. package/dist/src/address_space_change_event_tools.js +149 -149
  133. package/dist/src/address_space_private.d.ts +43 -43
  134. package/dist/src/address_space_private.js +2 -2
  135. package/dist/src/alarms_and_conditions/condition.d.ts +5 -5
  136. package/dist/src/alarms_and_conditions/condition.js +78 -78
  137. package/dist/src/alarms_and_conditions/condition_info_impl.d.ts +26 -26
  138. package/dist/src/alarms_and_conditions/condition_info_impl.js +54 -54
  139. package/dist/src/alarms_and_conditions/condition_snapshot_impl.d.ts +222 -222
  140. package/dist/src/alarms_and_conditions/condition_snapshot_impl.js +657 -657
  141. package/dist/src/alarms_and_conditions/deviation_alarm_helper.d.ts +9 -9
  142. package/dist/src/alarms_and_conditions/deviation_alarm_helper.js +61 -61
  143. package/dist/src/alarms_and_conditions/index.d.ts +16 -16
  144. package/dist/src/alarms_and_conditions/index.js +32 -32
  145. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.d.ts +44 -44
  146. package/dist/src/alarms_and_conditions/ua_acknowledgeable_condition_impl.js +244 -244
  147. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.d.ts +93 -93
  148. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js +419 -416
  149. package/dist/src/alarms_and_conditions/ua_alarm_condition_impl.js.map +1 -1
  150. package/dist/src/alarms_and_conditions/ua_base_event_impl.d.ts +26 -26
  151. package/dist/src/alarms_and_conditions/ua_base_event_impl.js +38 -38
  152. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.d.ts +44 -36
  153. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js +183 -118
  154. package/dist/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.js.map +1 -1
  155. package/dist/src/alarms_and_conditions/ua_condition_impl.d.ts +153 -153
  156. package/dist/src/alarms_and_conditions/ua_condition_impl.js +1028 -1024
  157. package/dist/src/alarms_and_conditions/ua_condition_impl.js.map +1 -1
  158. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.d.ts +14 -14
  159. package/dist/src/alarms_and_conditions/ua_discrete_alarm_impl.js +34 -34
  160. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.d.ts +24 -24
  161. package/dist/src/alarms_and_conditions/ua_exclusive_deviation_alarm_impl.js +56 -56
  162. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.d.ts +11 -11
  163. package/dist/src/alarms_and_conditions/ua_exclusive_level_alarm_impl.js +11 -11
  164. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.d.ts +23 -23
  165. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js +86 -86
  166. package/dist/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.js.map +1 -1
  167. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.d.ts +11 -11
  168. package/dist/src/alarms_and_conditions/ua_exclusive_rate_of_change_alarm_impl.js +7 -7
  169. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.d.ts +79 -79
  170. package/dist/src/alarms_and_conditions/ua_limit_alarm_impl.js +250 -250
  171. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.d.ts +24 -24
  172. package/dist/src/alarms_and_conditions/ua_non_exclusive_deviation_alarm_impl.js +50 -50
  173. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.d.ts +19 -19
  174. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js +162 -162
  175. package/dist/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.js.map +1 -1
  176. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.d.ts +46 -46
  177. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js +166 -166
  178. package/dist/src/alarms_and_conditions/ua_off_normal_alarm_impl.js.map +1 -1
  179. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.d.ts +18 -18
  180. package/dist/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.js +17 -17
  181. package/dist/src/apply_condition_refresh.d.ts +6 -6
  182. package/dist/src/apply_condition_refresh.js +27 -27
  183. package/dist/src/base_node_impl.d.ts +281 -281
  184. package/dist/src/base_node_impl.js +1395 -1395
  185. package/dist/src/base_node_private.d.ts +61 -61
  186. package/dist/src/base_node_private.js +705 -705
  187. package/dist/src/data_access/add_dataItem_stuff.d.ts +11 -11
  188. package/dist/src/data_access/add_dataItem_stuff.js +61 -61
  189. package/dist/src/data_access/check_variant_compatibility_ua_analog_item.d.ts +1 -1
  190. package/dist/src/data_access/check_variant_compatibility_ua_analog_item.js +34 -34
  191. package/dist/src/data_access/ua_multistate_discrete_impl.d.ts +32 -32
  192. package/dist/src/data_access/ua_multistate_discrete_impl.js +130 -130
  193. package/dist/src/data_access/ua_multistate_value_discrete_impl.d.ts +51 -51
  194. package/dist/src/data_access/ua_multistate_value_discrete_impl.js +249 -249
  195. package/dist/src/data_access/ua_two_state_discrete_impl.d.ts +25 -25
  196. package/dist/src/data_access/ua_two_state_discrete_impl.js +153 -153
  197. package/dist/src/event_data.d.ts +34 -34
  198. package/dist/src/event_data.js +64 -64
  199. package/dist/src/extension_object_array_node.d.ts +61 -61
  200. package/dist/src/extension_object_array_node.js +276 -276
  201. package/dist/src/historical_access/address_space_historical_data_node.d.ts +26 -26
  202. package/dist/src/historical_access/address_space_historical_data_node.js +630 -630
  203. package/dist/src/index_current.d.ts +43 -43
  204. package/dist/src/index_current.js +74 -74
  205. package/dist/src/namespace_impl.d.ts +461 -461
  206. package/dist/src/namespace_impl.js +1732 -1732
  207. package/dist/src/namespace_private.d.ts +21 -21
  208. package/dist/src/namespace_private.js +32 -32
  209. package/dist/src/nodeid_manager.d.ts +36 -36
  210. package/dist/src/nodeid_manager.js +197 -197
  211. package/dist/src/nodeset_tools/adjust_namespace_array.d.ts +2 -2
  212. package/dist/src/nodeset_tools/adjust_namespace_array.js +13 -13
  213. package/dist/src/nodeset_tools/construct_namespace_dependency.d.ts +2 -2
  214. package/dist/src/nodeset_tools/construct_namespace_dependency.js +83 -83
  215. package/dist/src/nodeset_tools/nodeset_to_xml.d.ts +2 -2
  216. package/dist/src/nodeset_tools/nodeset_to_xml.js +1155 -1155
  217. package/dist/src/nodeset_tools/typedictionary_to_xml.d.ts +2 -2
  218. package/dist/src/nodeset_tools/typedictionary_to_xml.js +154 -154
  219. package/dist/src/reference_impl.d.ts +43 -43
  220. package/dist/src/reference_impl.js +139 -139
  221. package/dist/src/role_permissions.d.ts +2 -2
  222. package/dist/src/role_permissions.js +10 -10
  223. package/dist/src/state_machine/finite_state_machine.d.ts +67 -67
  224. package/dist/src/state_machine/finite_state_machine.js +353 -353
  225. package/dist/src/state_machine/ua_shelving_state_machine_ex.d.ts +38 -38
  226. package/dist/src/state_machine/ua_shelving_state_machine_ex.js +250 -250
  227. package/dist/src/state_machine/ua_two_state_variable.d.ts +61 -61
  228. package/dist/src/state_machine/ua_two_state_variable.js +331 -331
  229. package/dist/src/state_machine/ua_two_state_variable.js.map +1 -1
  230. package/dist/src/tool_isSupertypeOf.d.ts +17 -17
  231. package/dist/src/tool_isSupertypeOf.js +108 -108
  232. package/dist/src/ua_condition_type.d.ts +8 -8
  233. package/dist/src/ua_condition_type.js +2 -2
  234. package/dist/src/ua_data_type_impl.d.ts +93 -93
  235. package/dist/src/ua_data_type_impl.js +371 -371
  236. package/dist/src/ua_method_impl.d.ts +41 -41
  237. package/dist/src/ua_method_impl.js +208 -208
  238. package/dist/src/ua_object_impl.d.ts +35 -35
  239. package/dist/src/ua_object_impl.js +161 -161
  240. package/dist/src/ua_object_type_impl.d.ts +48 -48
  241. package/dist/src/ua_object_type_impl.js +124 -124
  242. package/dist/src/ua_reference_type_impl.d.ts +43 -43
  243. package/dist/src/ua_reference_type_impl.js +139 -139
  244. package/dist/src/ua_variable_impl.d.ts +351 -351
  245. package/dist/src/ua_variable_impl.js +1604 -1604
  246. package/dist/src/ua_variable_impl_ext_obj.d.ts +17 -17
  247. package/dist/src/ua_variable_impl_ext_obj.js +437 -437
  248. package/dist/src/ua_variable_type_impl.d.ts +62 -62
  249. package/dist/src/ua_variable_type_impl.js +570 -570
  250. package/dist/src/ua_view_impl.d.ts +19 -19
  251. package/dist/src/ua_view_impl.js +43 -43
  252. package/distHelpers/add_event_generator_object.d.ts +3 -3
  253. package/distHelpers/add_event_generator_object.js +64 -65
  254. package/distHelpers/add_event_generator_object.js.map +1 -1
  255. package/distHelpers/alarms_and_conditions_demo.d.ts +9 -9
  256. package/distHelpers/alarms_and_conditions_demo.js +115 -115
  257. package/distHelpers/assertHasMatchingReference.d.ts +19 -19
  258. package/distHelpers/assertHasMatchingReference.js +40 -40
  259. package/distHelpers/boiler_system.d.ts +113 -113
  260. package/distHelpers/boiler_system.js +395 -395
  261. package/distHelpers/create_minimalist_address_space_nodeset.d.ts +5 -5
  262. package/distHelpers/create_minimalist_address_space_nodeset.js +171 -171
  263. package/distHelpers/date_utils.d.ts +3 -3
  264. package/distHelpers/date_utils.js +9 -9
  265. package/distHelpers/dump_statemachine.js +127 -127
  266. package/distHelpers/get_address_space_fixture.d.ts +1 -1
  267. package/distHelpers/get_address_space_fixture.js +30 -30
  268. package/distHelpers/get_mini_address_space.d.ts +7 -7
  269. package/distHelpers/get_mini_address_space.js +36 -36
  270. package/distHelpers/index.d.ts +12 -12
  271. package/distHelpers/index.js +28 -28
  272. package/distHelpers/mock_session.d.ts +14 -14
  273. package/distHelpers/mock_session.js +25 -25
  274. package/distNodeJS/generate_address_space.d.ts +4 -4
  275. package/distNodeJS/generate_address_space.js +41 -41
  276. package/distNodeJS/index.d.ts +1 -1
  277. package/distNodeJS/index.js +17 -17
  278. package/generate.js +1 -1
  279. package/package.json +36 -38
  280. package/source/interfaces/alarms_and_conditions/ua_certificate_expiration_alarm_ex.ts +5 -0
  281. package/source/loader/namespace_post_step.ts +26 -3
  282. package/source/loader/register_node_promoter.ts +5 -4
  283. package/src/alarms_and_conditions/ua_alarm_condition_impl.ts +4 -1
  284. package/src/alarms_and_conditions/ua_certificate_expiration_alarm_impl.ts +106 -49
  285. package/src/alarms_and_conditions/ua_condition_impl.ts +4 -1
  286. package/src/alarms_and_conditions/ua_exclusive_limit_alarm_impl.ts +1 -1
  287. package/src/alarms_and_conditions/ua_non_exclusive_limit_alarm_impl.ts +3 -3
  288. package/src/alarms_and_conditions/ua_off_normal_alarm_impl.ts +12 -10
  289. package/src/alarms_and_conditions/ua_system_off_normal_alarm_impl.ts +1 -1
  290. package/src/state_machine/ua_two_state_variable.ts +1 -2
  291. package/test_helpers/add_event_generator_object.ts +0 -1
  292. package/dist/source/helpers/check_event_clause.d.ts +0 -17
  293. package/dist/source/helpers/check_event_clause.js +0 -53
  294. package/dist/source/helpers/check_event_clause.js.map +0 -1
  295. package/dist/src/alarms_and_conditions/check_where_clause.d.ts +0 -4
  296. package/dist/src/alarms_and_conditions/check_where_clause.js +0 -110
  297. package/dist/src/alarms_and_conditions/check_where_clause.js.map +0 -1
  298. package/dist/src/alarms_and_conditions/condition_info.d.ts +0 -27
  299. package/dist/src/alarms_and_conditions/condition_info.js +0 -55
  300. package/dist/src/alarms_and_conditions/condition_info.js.map +0 -1
  301. package/dist/src/alarms_and_conditions/condition_snapshot.d.ts +0 -233
  302. package/dist/src/alarms_and_conditions/condition_snapshot.js +0 -667
  303. package/dist/src/alarms_and_conditions/condition_snapshot.js.map +0 -1
  304. package/dist/src/alarms_and_conditions/extract_event_fields.d.ts +0 -10
  305. package/dist/src/alarms_and_conditions/extract_event_fields.js +0 -90
  306. package/dist/src/alarms_and_conditions/extract_event_fields.js.map +0 -1
  307. package/dist/src/data_access/ua_multistate_value_discrete.d.ts +0 -51
  308. package/dist/src/data_access/ua_multistate_value_discrete.js +0 -250
  309. package/dist/src/data_access/ua_multistate_value_discrete.js.map +0 -1
  310. package/dist/src/data_access/ua_two_state_discrete.d.ts +0 -25
  311. package/dist/src/data_access/ua_two_state_discrete.js +0 -154
  312. package/dist/src/data_access/ua_two_state_discrete.js.map +0 -1
@@ -1,351 +1,351 @@
1
- import { BindExtensionObjectOptions, CloneExtraInfo, ContinuationData, VariableDataValueSetterWithCallback } from "node-opcua-address-space-base";
2
- import { QualifiedNameLike, NodeClass, AccessLevelFlag, AttributeIds } from "node-opcua-data-model";
3
- import { DataValue, DataValueT } from "node-opcua-data-value";
4
- import { PreciseClock } from "node-opcua-date-time";
5
- import { ExtensionObject } from "node-opcua-extension-object";
6
- import { NodeId } from "node-opcua-nodeid";
7
- import { NumericRange } from "node-opcua-numeric-range";
8
- import { StatusCode, CallbackT } from "node-opcua-status-code";
9
- import { HistoryReadDetails, HistoryReadResult, ReadAtTimeDetails, ReadEventDetails, ReadProcessedDetails, ReadRawModifiedDetails, WriteValueOptions } from "node-opcua-types";
10
- import { Variant, VariantLike, DataType } from "node-opcua-variant";
11
- import { StatusCodeCallback } from "node-opcua-status-code";
12
- import { BindVariableOptions, IVariableHistorian, TimestampGetFunc, UADataType, UAVariable, UAVariableType, CloneOptions, CloneFilter, ISessionContext, UAVariableT } from "node-opcua-address-space-base";
13
- import { UAHistoricalDataConfiguration } from "node-opcua-nodeset-ua";
14
- import { BaseNodeImpl, InternalBaseNodeOptions } from "./base_node_impl";
15
- import { EnumerationInfo, IEnumItem } from "./ua_data_type_impl";
16
- import { ConditionRefreshCache } from "./apply_condition_refresh";
17
- export declare function adjust_accessLevel(accessLevel: string | number | null): AccessLevelFlag;
18
- export declare function adjust_userAccessLevel(userAccessLevel: string | number | null | undefined, accessLevel: string | number | null): AccessLevelFlag | undefined;
19
- interface UAVariableOptions extends InternalBaseNodeOptions {
20
- value?: any;
21
- dataType: NodeId | string;
22
- valueRank?: number;
23
- arrayDimensions?: null | number[];
24
- accessLevel?: any;
25
- userAccessLevel?: any;
26
- minimumSamplingInterval?: number;
27
- historizing?: number;
28
- }
29
- /**
30
- * A OPCUA Variable Node
31
- *
32
- * @class UAVariable
33
- * @constructor
34
- * @extends BaseNode
35
- * The AccessLevel Attribute is used to indicate how the Value of a Variable can be accessed (read/write) and if it
36
- * contains current and/or historic data. The AccessLevel does not take any user access rights into account,
37
- * i.e. although the Variable is writable this may be restricted to a certain user / user group.
38
- * The AccessLevel is an 8-bit unsigned integer with the structure defined in the following table:
39
- *
40
- * Field Bit Description
41
- * CurrentRead 0 Indicates if the current value is readable
42
- * (0 means not readable, 1 means readable).
43
- * CurrentWrite 1 Indicates if the current value is writable
44
- * (0 means not writable, 1 means writable).
45
- * HistoryRead 2 Indicates if the history of the value is readable
46
- * (0 means not readable, 1 means readable).
47
- * HistoryWrite 3 Indicates if the history of the value is writable (0 means not writable, 1 means writable).
48
- * SemanticChange 4 Indicates if the Variable used as Property generates SemanticChangeEvents (see 9.31).
49
- * Reserved 5:7 Reserved for future use. Shall always be zero.
50
- *
51
- * The first two bits also indicate if a current value of this Variable is available and the second two bits
52
- * indicates if the history of the Variable is available via the OPC UA server.
53
- *
54
- */
55
- export declare class UAVariableImpl extends BaseNodeImpl implements UAVariable {
56
- readonly nodeClass = NodeClass.Variable;
57
- dataType: NodeId;
58
- private _basicDataType?;
59
- $extensionObject?: any;
60
- $historicalDataConfiguration?: UAHistoricalDataConfiguration;
61
- varHistorian?: IVariableHistorian;
62
- /**
63
- * @internal @private
64
- */
65
- $dataValue: DataValue;
66
- accessLevel: number;
67
- userAccessLevel?: number;
68
- valueRank: number;
69
- minimumSamplingInterval: number;
70
- historizing: boolean;
71
- semantic_version: number;
72
- arrayDimensions: null | number[];
73
- _timestamped_get_func?: TimestampGetFunc | null;
74
- _timestamped_set_func?: VariableDataValueSetterWithCallback | null;
75
- _get_func: any;
76
- _set_func: any;
77
- refreshFunc?: (callback: CallbackT<DataValue>) => void;
78
- __waiting_callbacks?: any[];
79
- get typeDefinitionObj(): UAVariableType;
80
- get typeDefinition(): NodeId;
81
- constructor(options: UAVariableOptions);
82
- private checkPermissionAndAccessLevelPrivate;
83
- isReadable(context: ISessionContext): boolean;
84
- isUserReadable(context: ISessionContext): boolean;
85
- isWritable(context: ISessionContext): boolean;
86
- isUserWritable(context: ISessionContext): boolean;
87
- /**
88
- *
89
- *
90
- * from OPC.UA.Spec 1.02 part 4
91
- * 5.10.2.4 StatusCodes
92
- * Table 51 defines values for the operation level statusCode contained in the DataValue structure of
93
- * each values element. Common StatusCodes are defined in Table 166.
94
- *
95
- * Table 51 Read Operation Level Result Codes
96
- *
97
- * Symbolic Id Description
98
- *
99
- * BadNodeIdInvalid The syntax of the node id is not valid.
100
- * BadNodeIdUnknown The node id refers to a node that does not exist in the server address space.
101
- * BadAttributeIdInvalid BadAttributeIdInvalid The attribute is not supported for the specified node.
102
- * BadIndexRangeInvalid The syntax of the index range parameter is invalid.
103
- * BadIndexRangeNoData No data exists within the range of indexes specified.
104
- * BadDataEncodingInvalid The data encoding is invalid.
105
- * This result is used if no dataEncoding can be applied because an Attribute other
106
- * than Value was requested or the DataType of the Value Attribute is not a subtype
107
- * of the Structure DataType.
108
- * BadDataEncodingUnsupported The server does not support the requested data encoding for the node.
109
- * This result is used if a dataEncoding can be applied but the passed data encoding
110
- * is not known to the Server.
111
- * BadNotReadable The access level does not allow reading or subscribing to the Node.
112
- * BadUserAccessDenied User does not have permission to perform the requested operation. (table 165)
113
- */
114
- readValue(context?: ISessionContext | null, indexRange?: NumericRange, dataEncoding?: QualifiedNameLike | null): DataValue;
115
- isEnumeration(): boolean;
116
- isExtensionObject(): boolean;
117
- _getEnumerationInfo(): EnumerationInfo;
118
- asyncRefresh(oldestDate: Date, callback: CallbackT<DataValue>): void;
119
- asyncRefresh(oldestDate: Date): Promise<DataValue>;
120
- readEnumValue(): IEnumItem;
121
- writeEnumValue(value: string | number): void;
122
- readAttribute(context: ISessionContext | null, attributeId: AttributeIds, indexRange?: NumericRange, dataEncoding?: QualifiedNameLike | null): DataValue;
123
- getBasicDataType(): DataType;
124
- adjustVariant(variant: Variant): Variant;
125
- verifyVariantCompatibility(variant: Variant): void;
126
- /**
127
- * setValueFromSource is used to let the device sets the variable values
128
- * this method also records the current time as sourceTimestamp and serverTimestamp.
129
- . *
130
- * The method will raise an exception if the value is not compatible with the dataType and expected dimension
131
- *
132
- * @method setValueFromSource
133
- * @param variant {Variant}
134
- * @param [statusCode {StatusCode} = StatusCodes.Good]
135
- * @param [sourceTimestamp= Now]
136
- */
137
- setValueFromSource(variant: VariantLike, statusCode?: StatusCode, sourceTimestamp?: Date): void;
138
- writeValue(context: ISessionContext, dataValue: DataValue, indexRange: string | NumericRange | null, callback: StatusCodeCallback): void;
139
- writeValue(context: ISessionContext, dataValue: DataValue, callback: StatusCodeCallback): void;
140
- writeValue(context: ISessionContext, dataValue: DataValue, indexRange?: string | NumericRange | null): Promise<StatusCode>;
141
- writeAttribute(context: ISessionContext | null, writeValue: WriteValueOptions, callback: StatusCodeCallback): void;
142
- writeAttribute(context: ISessionContext | null, writeValue: WriteValueOptions): Promise<StatusCode>;
143
- /**
144
- * @method checkVariantCompatibility
145
- * note:
146
- * this method is overridden in address-space-data-access
147
- * @return {StatusCode}
148
- */
149
- checkVariantCompatibility(value: Variant): StatusCode;
150
- /**
151
- * touch the source timestamp of a Variable and cascade up the change
152
- * to the parent variable if any.
153
- */
154
- touchValue(optionalNow?: PreciseClock): void;
155
- /**
156
- * bind a variable with a get and set functions.
157
- *
158
- * properties:
159
- * - value: a Variant or a status code
160
- * - sourceTimestamp
161
- * - sourcePicoseconds
162
- * @param [options.timestamped_set]
163
- * @param [options.refreshFunc] the variable asynchronous getter function.
164
- * @param [overwrite {Boolean} = false] set overwrite to true to overwrite existing binding
165
- * @return void
166
- *
167
- *
168
- * ### Providing read access to the underlying value
169
- *
170
- * #### Variation 1
171
- *
172
- * In this variation, the user provides a function that returns a Variant with the current value.
173
- *
174
- * The sourceTimestamp will be set automatically.
175
- *
176
- * The get function is called synchronously.
177
- *
178
- * @example
179
- *
180
- *
181
- * ```javascript
182
- * ...
183
- * var options = {
184
- * get : () => {
185
- * return new Variant({...});
186
- * },
187
- * set : function(variant) {
188
- * // store the variant somewhere
189
- * return StatusCodes.Good;
190
- * }
191
- * };
192
- * ...
193
- * engine.bindVariable(nodeId,options):
194
- * ...
195
- * ```
196
- *
197
- *
198
- * #### Variation 2:
199
- *
200
- * This variation can be used when the user wants to specify a specific '''sourceTimestamp''' associated
201
- * with the current value of the UAVariable.
202
- *
203
- * The provided ```timestamped_get``` function should return an object with three properties:
204
- * * value: containing the variant value or a error StatusCode,
205
- * * sourceTimestamp
206
- * * sourcePicoseconds
207
- *
208
- * ```javascript
209
- * ...
210
- * var myDataValue = new DataValue({
211
- * value: {dataType: DataType.Double , value: 10.0},
212
- * sourceTimestamp : new Date(),
213
- * sourcePicoseconds: 0
214
- * });
215
- * ...
216
- * var options = {
217
- * timestamped_get : () => { return myDataValue; }
218
- * };
219
- * ...
220
- * engine.bindVariable(nodeId,options):
221
- * ...
222
- * // record a new value
223
- * myDataValue.value.value = 5.0;
224
- * myDataValue.sourceTimestamp = new Date();
225
- * ...
226
- * ```
227
- *
228
- *
229
- * #### Variation 3:
230
- *
231
- * This variation can be used when the value associated with the variables requires a asynchronous function call to be
232
- * extracted. In this case, the user should provide an async method ```refreshFunc```.
233
- *
234
- *
235
- * The ```refreshFunc``` shall do whatever is necessary to fetch the most up to date version of the variable value, and
236
- * call the ```callback``` function when the data is ready.
237
- *
238
- *
239
- * The ```callback``` function follow the standard callback function signature:
240
- * * the first argument shall be **null** or **Error**, depending of the outcome of the fetch operation,
241
- * * the second argument shall be a DataValue with the new UAVariable Value, a StatusCode, and time stamps.
242
- *
243
- *
244
- * Optionally, it is possible to pass a sourceTimestamp and a sourcePicoseconds value as a third and fourth arguments
245
- * of the callback. When sourceTimestamp and sourcePicoseconds are missing, the system will set their default value
246
- * to the current time..
247
- *
248
- *
249
- * ```javascript
250
- * ...
251
- * var options = {
252
- * refreshFunc : function(callback) {
253
- * ... do_some_async_stuff_to_get_the_new_variable_value
254
- * var dataValue = new DataValue({
255
- * value: new Variant({...}),
256
- * statusCode: StatusCodes.Good,
257
- * sourceTimestamp: new Date()
258
- * });
259
- * callback(null,dataValue);
260
- * }
261
- * };
262
- * ...
263
- * variable.bindVariable(nodeId,options):
264
- * ...
265
- * ```
266
- *
267
- * ### Providing write access to the underlying value
268
- *
269
- * #### Variation1 - provide a simple synchronous set function
270
- *
271
- *
272
- * #### Notes
273
- * to do : explain return StatusCodes.GoodCompletesAsynchronously;
274
- *
275
- */
276
- bindVariable(options?: BindVariableOptions, overwrite?: boolean): void;
277
- /**
278
- * @method readValueAsync
279
- */
280
- readValueAsync(context: ISessionContext | null, callback: CallbackT<DataValue>): void;
281
- readValueAsync(context: ISessionContext | null): Promise<DataValue>;
282
- getWriteMask(): number;
283
- getUserWriteMask(): number;
284
- clone(options: CloneOptions, optionalFilter?: CloneFilter, extraInfo?: CloneExtraInfo): UAVariable;
285
- getDataTypeNode(): UADataType;
286
- get dataTypeObj(): UADataType;
287
- checkExtensionObjectIsCorrect(extObj: ExtensionObject | ExtensionObject[] | null): boolean;
288
- /**
289
- * @private
290
- * install UAVariable to exposed th
291
- *
292
- * precondition:
293
- */
294
- installExtensionObjectVariables(): void;
295
- /**
296
- * @method bindExtensionObject
297
- * @return {ExtensionObject}
298
- */
299
- bindExtensionObjectScalar(optionalExtensionObject: ExtensionObject, options?: BindExtensionObjectOptions): ExtensionObject | null;
300
- bindExtensionObjectArray(optionalExtensionObject: ExtensionObject[], options?: BindExtensionObjectOptions): ExtensionObject[] | null;
301
- bindExtensionObject(optionalExtensionObject?: ExtensionObject | ExtensionObject[], options?: BindExtensionObjectOptions): ExtensionObject | ExtensionObject[] | null;
302
- updateExtensionObjectPartial(partialExtensionObject?: {
303
- [key: string]: any;
304
- }): ExtensionObject;
305
- incrementExtensionObjectPartial(path: string | string[]): void;
306
- toString(): string;
307
- historyRead(context: ISessionContext, historyReadDetails: HistoryReadDetails | ReadRawModifiedDetails | ReadEventDetails | ReadProcessedDetails | ReadAtTimeDetails, indexRange: NumericRange | null, dataEncoding: QualifiedNameLike | null, continuationData: ContinuationData): Promise<HistoryReadResult>;
308
- historyRead(context: ISessionContext, historyReadDetails: HistoryReadDetails | ReadRawModifiedDetails | ReadEventDetails | ReadProcessedDetails | ReadAtTimeDetails, indexRange: NumericRange | null, dataEncoding: QualifiedNameLike | null, continuationData: ContinuationData, callback: CallbackT<HistoryReadResult>): void;
309
- _historyReadRaw(context: ISessionContext, historyReadRawModifiedDetails: ReadRawModifiedDetails, indexRange: NumericRange | null, dataEncoding: QualifiedNameLike | null, continuationData: ContinuationData, callback: CallbackT<HistoryReadResult>): void;
310
- _historyReadRawModify(context: ISessionContext, historyReadRawModifiedDetails: ReadRawModifiedDetails, indexRange: NumericRange | null, dataEncoding: QualifiedNameLike | null, continuationData: ContinuationData, callback?: CallbackT<HistoryReadResult>): any;
311
- _historyRead(context: ISessionContext, historyReadDetails: HistoryReadDetails | ReadRawModifiedDetails | ReadEventDetails | ReadProcessedDetails | ReadAtTimeDetails, indexRange: NumericRange | null, dataEncoding: QualifiedNameLike | null, continuationData: ContinuationData, callback: CallbackT<HistoryReadResult>): void;
312
- _historyPush(newDataValue: DataValue): any;
313
- _historyReadRawAsync(historyReadRawModifiedDetails: ReadRawModifiedDetails, maxNumberToExtract: number, isReversed: boolean, reverseDataValue: boolean, callback: CallbackT<DataValue[]>): any;
314
- _historyReadModify(context: ISessionContext, historyReadRawModifiedDetails: ReadRawModifiedDetails, indexRange: NumericRange | null, dataEncoding: QualifiedNameLike | null, continuationData: ContinuationData, callback: CallbackT<HistoryReadResult>): any;
315
- _update_startOfOnlineArchive(newDate: Date): void;
316
- _update_startOfArchive(newDate: Date): void;
317
- _validate_DataType(variantDataType: DataType): boolean;
318
- _internal_set_value(value: Variant): void;
319
- _internal_set_dataValue(dataValue: DataValue, indexRange?: NumericRange | null): void;
320
- _conditionRefresh(_cache?: ConditionRefreshCache): void;
321
- handle_semantic_changed(): void;
322
- private _readDataType;
323
- private _readValueRank;
324
- private _readArrayDimensions;
325
- private _readAccessLevel;
326
- private _readAccessLevelEx;
327
- private _readUserAccessLevel;
328
- private _readMinimumSamplingInterval;
329
- private _readHistorizing;
330
- }
331
- export interface UAVariableImpl {
332
- $$variableType?: any;
333
- $$dataType?: any;
334
- $$getElementBrowseName: any;
335
- $$extensionObjectArray: any;
336
- $$indexPropertyName: any;
337
- }
338
- export interface UAVariableImplT<T, DT extends DataType> extends UAVariableImpl, UAVariableT<T, DT> {
339
- on(): any;
340
- once(): any;
341
- readValueAsync(context: ISessionContext | null): Promise<DataValueT<T, DT>>;
342
- readValueAsync(context: ISessionContext | null, callback: CallbackT<DataValueT<T, DT>>): void;
343
- readValue(context?: ISessionContext | null, indexRange?: NumericRange, dataEncoding?: QualifiedNameLike | null): DataValueT<T, DT>;
344
- readValue(context?: ISessionContext | null, indexRange?: NumericRange, dataEncoding?: QualifiedNameLike | null): DataValueT<T, DT>;
345
- writeValue(context: ISessionContext, dataValue: DataValueT<T, DT>, indexRange: NumericRange | null, callback: StatusCodeCallback): void;
346
- writeValue(context: ISessionContext, dataValue: DataValueT<T, DT>, callback: StatusCodeCallback): void;
347
- writeValue(context: ISessionContext, dataValue: DataValueT<T, DT>, indexRange?: NumericRange | null): Promise<StatusCode>;
348
- }
349
- export declare class UAVariableImplT<T, DT extends DataType> extends UAVariableImpl {
350
- }
351
- export {};
1
+ import { BindExtensionObjectOptions, CloneExtraInfo, ContinuationData, VariableDataValueSetterWithCallback } from "node-opcua-address-space-base";
2
+ import { QualifiedNameLike, NodeClass, AccessLevelFlag, AttributeIds } from "node-opcua-data-model";
3
+ import { DataValue, DataValueT } from "node-opcua-data-value";
4
+ import { PreciseClock } from "node-opcua-date-time";
5
+ import { ExtensionObject } from "node-opcua-extension-object";
6
+ import { NodeId } from "node-opcua-nodeid";
7
+ import { NumericRange } from "node-opcua-numeric-range";
8
+ import { StatusCode, CallbackT } from "node-opcua-status-code";
9
+ import { HistoryReadDetails, HistoryReadResult, ReadAtTimeDetails, ReadEventDetails, ReadProcessedDetails, ReadRawModifiedDetails, WriteValueOptions } from "node-opcua-types";
10
+ import { Variant, VariantLike, DataType } from "node-opcua-variant";
11
+ import { StatusCodeCallback } from "node-opcua-status-code";
12
+ import { BindVariableOptions, IVariableHistorian, TimestampGetFunc, UADataType, UAVariable, UAVariableType, CloneOptions, CloneFilter, ISessionContext, UAVariableT } from "node-opcua-address-space-base";
13
+ import { UAHistoricalDataConfiguration } from "node-opcua-nodeset-ua";
14
+ import { BaseNodeImpl, InternalBaseNodeOptions } from "./base_node_impl";
15
+ import { EnumerationInfo, IEnumItem } from "./ua_data_type_impl";
16
+ import { ConditionRefreshCache } from "./apply_condition_refresh";
17
+ export declare function adjust_accessLevel(accessLevel: string | number | null): AccessLevelFlag;
18
+ export declare function adjust_userAccessLevel(userAccessLevel: string | number | null | undefined, accessLevel: string | number | null): AccessLevelFlag | undefined;
19
+ interface UAVariableOptions extends InternalBaseNodeOptions {
20
+ value?: any;
21
+ dataType: NodeId | string;
22
+ valueRank?: number;
23
+ arrayDimensions?: null | number[];
24
+ accessLevel?: any;
25
+ userAccessLevel?: any;
26
+ minimumSamplingInterval?: number;
27
+ historizing?: number;
28
+ }
29
+ /**
30
+ * A OPCUA Variable Node
31
+ *
32
+ * @class UAVariable
33
+ * @constructor
34
+ * @extends BaseNode
35
+ * The AccessLevel Attribute is used to indicate how the Value of a Variable can be accessed (read/write) and if it
36
+ * contains current and/or historic data. The AccessLevel does not take any user access rights into account,
37
+ * i.e. although the Variable is writable this may be restricted to a certain user / user group.
38
+ * The AccessLevel is an 8-bit unsigned integer with the structure defined in the following table:
39
+ *
40
+ * Field Bit Description
41
+ * CurrentRead 0 Indicates if the current value is readable
42
+ * (0 means not readable, 1 means readable).
43
+ * CurrentWrite 1 Indicates if the current value is writable
44
+ * (0 means not writable, 1 means writable).
45
+ * HistoryRead 2 Indicates if the history of the value is readable
46
+ * (0 means not readable, 1 means readable).
47
+ * HistoryWrite 3 Indicates if the history of the value is writable (0 means not writable, 1 means writable).
48
+ * SemanticChange 4 Indicates if the Variable used as Property generates SemanticChangeEvents (see 9.31).
49
+ * Reserved 5:7 Reserved for future use. Shall always be zero.
50
+ *
51
+ * The first two bits also indicate if a current value of this Variable is available and the second two bits
52
+ * indicates if the history of the Variable is available via the OPC UA server.
53
+ *
54
+ */
55
+ export declare class UAVariableImpl extends BaseNodeImpl implements UAVariable {
56
+ readonly nodeClass = NodeClass.Variable;
57
+ dataType: NodeId;
58
+ private _basicDataType?;
59
+ $extensionObject?: any;
60
+ $historicalDataConfiguration?: UAHistoricalDataConfiguration;
61
+ varHistorian?: IVariableHistorian;
62
+ /**
63
+ * @internal @private
64
+ */
65
+ $dataValue: DataValue;
66
+ accessLevel: number;
67
+ userAccessLevel?: number;
68
+ valueRank: number;
69
+ minimumSamplingInterval: number;
70
+ historizing: boolean;
71
+ semantic_version: number;
72
+ arrayDimensions: null | number[];
73
+ _timestamped_get_func?: TimestampGetFunc | null;
74
+ _timestamped_set_func?: VariableDataValueSetterWithCallback | null;
75
+ _get_func: any;
76
+ _set_func: any;
77
+ refreshFunc?: (callback: CallbackT<DataValue>) => void;
78
+ __waiting_callbacks?: any[];
79
+ get typeDefinitionObj(): UAVariableType;
80
+ get typeDefinition(): NodeId;
81
+ constructor(options: UAVariableOptions);
82
+ private checkPermissionAndAccessLevelPrivate;
83
+ isReadable(context: ISessionContext): boolean;
84
+ isUserReadable(context: ISessionContext): boolean;
85
+ isWritable(context: ISessionContext): boolean;
86
+ isUserWritable(context: ISessionContext): boolean;
87
+ /**
88
+ *
89
+ *
90
+ * from OPC.UA.Spec 1.02 part 4
91
+ * 5.10.2.4 StatusCodes
92
+ * Table 51 defines values for the operation level statusCode contained in the DataValue structure of
93
+ * each values element. Common StatusCodes are defined in Table 166.
94
+ *
95
+ * Table 51 Read Operation Level Result Codes
96
+ *
97
+ * Symbolic Id Description
98
+ *
99
+ * BadNodeIdInvalid The syntax of the node id is not valid.
100
+ * BadNodeIdUnknown The node id refers to a node that does not exist in the server address space.
101
+ * BadAttributeIdInvalid BadAttributeIdInvalid The attribute is not supported for the specified node.
102
+ * BadIndexRangeInvalid The syntax of the index range parameter is invalid.
103
+ * BadIndexRangeNoData No data exists within the range of indexes specified.
104
+ * BadDataEncodingInvalid The data encoding is invalid.
105
+ * This result is used if no dataEncoding can be applied because an Attribute other
106
+ * than Value was requested or the DataType of the Value Attribute is not a subtype
107
+ * of the Structure DataType.
108
+ * BadDataEncodingUnsupported The server does not support the requested data encoding for the node.
109
+ * This result is used if a dataEncoding can be applied but the passed data encoding
110
+ * is not known to the Server.
111
+ * BadNotReadable The access level does not allow reading or subscribing to the Node.
112
+ * BadUserAccessDenied User does not have permission to perform the requested operation. (table 165)
113
+ */
114
+ readValue(context?: ISessionContext | null, indexRange?: NumericRange, dataEncoding?: QualifiedNameLike | null): DataValue;
115
+ isEnumeration(): boolean;
116
+ isExtensionObject(): boolean;
117
+ _getEnumerationInfo(): EnumerationInfo;
118
+ asyncRefresh(oldestDate: Date, callback: CallbackT<DataValue>): void;
119
+ asyncRefresh(oldestDate: Date): Promise<DataValue>;
120
+ readEnumValue(): IEnumItem;
121
+ writeEnumValue(value: string | number): void;
122
+ readAttribute(context: ISessionContext | null, attributeId: AttributeIds, indexRange?: NumericRange, dataEncoding?: QualifiedNameLike | null): DataValue;
123
+ getBasicDataType(): DataType;
124
+ adjustVariant(variant: Variant): Variant;
125
+ verifyVariantCompatibility(variant: Variant): void;
126
+ /**
127
+ * setValueFromSource is used to let the device sets the variable values
128
+ * this method also records the current time as sourceTimestamp and serverTimestamp.
129
+ . *
130
+ * The method will raise an exception if the value is not compatible with the dataType and expected dimension
131
+ *
132
+ * @method setValueFromSource
133
+ * @param variant {Variant}
134
+ * @param [statusCode {StatusCode} = StatusCodes.Good]
135
+ * @param [sourceTimestamp= Now]
136
+ */
137
+ setValueFromSource(variant: VariantLike, statusCode?: StatusCode, sourceTimestamp?: Date): void;
138
+ writeValue(context: ISessionContext, dataValue: DataValue, indexRange: string | NumericRange | null, callback: StatusCodeCallback): void;
139
+ writeValue(context: ISessionContext, dataValue: DataValue, callback: StatusCodeCallback): void;
140
+ writeValue(context: ISessionContext, dataValue: DataValue, indexRange?: string | NumericRange | null): Promise<StatusCode>;
141
+ writeAttribute(context: ISessionContext | null, writeValue: WriteValueOptions, callback: StatusCodeCallback): void;
142
+ writeAttribute(context: ISessionContext | null, writeValue: WriteValueOptions): Promise<StatusCode>;
143
+ /**
144
+ * @method checkVariantCompatibility
145
+ * note:
146
+ * this method is overridden in address-space-data-access
147
+ * @return {StatusCode}
148
+ */
149
+ checkVariantCompatibility(value: Variant): StatusCode;
150
+ /**
151
+ * touch the source timestamp of a Variable and cascade up the change
152
+ * to the parent variable if any.
153
+ */
154
+ touchValue(optionalNow?: PreciseClock): void;
155
+ /**
156
+ * bind a variable with a get and set functions.
157
+ *
158
+ * properties:
159
+ * - value: a Variant or a status code
160
+ * - sourceTimestamp
161
+ * - sourcePicoseconds
162
+ * @param [options.timestamped_set]
163
+ * @param [options.refreshFunc] the variable asynchronous getter function.
164
+ * @param [overwrite {Boolean} = false] set overwrite to true to overwrite existing binding
165
+ * @return void
166
+ *
167
+ *
168
+ * ### Providing read access to the underlying value
169
+ *
170
+ * #### Variation 1
171
+ *
172
+ * In this variation, the user provides a function that returns a Variant with the current value.
173
+ *
174
+ * The sourceTimestamp will be set automatically.
175
+ *
176
+ * The get function is called synchronously.
177
+ *
178
+ * @example
179
+ *
180
+ *
181
+ * ```javascript
182
+ * ...
183
+ * var options = {
184
+ * get : () => {
185
+ * return new Variant({...});
186
+ * },
187
+ * set : function(variant) {
188
+ * // store the variant somewhere
189
+ * return StatusCodes.Good;
190
+ * }
191
+ * };
192
+ * ...
193
+ * engine.bindVariable(nodeId,options):
194
+ * ...
195
+ * ```
196
+ *
197
+ *
198
+ * #### Variation 2:
199
+ *
200
+ * This variation can be used when the user wants to specify a specific '''sourceTimestamp''' associated
201
+ * with the current value of the UAVariable.
202
+ *
203
+ * The provided ```timestamped_get``` function should return an object with three properties:
204
+ * * value: containing the variant value or a error StatusCode,
205
+ * * sourceTimestamp
206
+ * * sourcePicoseconds
207
+ *
208
+ * ```javascript
209
+ * ...
210
+ * var myDataValue = new DataValue({
211
+ * value: {dataType: DataType.Double , value: 10.0},
212
+ * sourceTimestamp : new Date(),
213
+ * sourcePicoseconds: 0
214
+ * });
215
+ * ...
216
+ * var options = {
217
+ * timestamped_get : () => { return myDataValue; }
218
+ * };
219
+ * ...
220
+ * engine.bindVariable(nodeId,options):
221
+ * ...
222
+ * // record a new value
223
+ * myDataValue.value.value = 5.0;
224
+ * myDataValue.sourceTimestamp = new Date();
225
+ * ...
226
+ * ```
227
+ *
228
+ *
229
+ * #### Variation 3:
230
+ *
231
+ * This variation can be used when the value associated with the variables requires a asynchronous function call to be
232
+ * extracted. In this case, the user should provide an async method ```refreshFunc```.
233
+ *
234
+ *
235
+ * The ```refreshFunc``` shall do whatever is necessary to fetch the most up to date version of the variable value, and
236
+ * call the ```callback``` function when the data is ready.
237
+ *
238
+ *
239
+ * The ```callback``` function follow the standard callback function signature:
240
+ * * the first argument shall be **null** or **Error**, depending of the outcome of the fetch operation,
241
+ * * the second argument shall be a DataValue with the new UAVariable Value, a StatusCode, and time stamps.
242
+ *
243
+ *
244
+ * Optionally, it is possible to pass a sourceTimestamp and a sourcePicoseconds value as a third and fourth arguments
245
+ * of the callback. When sourceTimestamp and sourcePicoseconds are missing, the system will set their default value
246
+ * to the current time..
247
+ *
248
+ *
249
+ * ```javascript
250
+ * ...
251
+ * var options = {
252
+ * refreshFunc : function(callback) {
253
+ * ... do_some_async_stuff_to_get_the_new_variable_value
254
+ * var dataValue = new DataValue({
255
+ * value: new Variant({...}),
256
+ * statusCode: StatusCodes.Good,
257
+ * sourceTimestamp: new Date()
258
+ * });
259
+ * callback(null,dataValue);
260
+ * }
261
+ * };
262
+ * ...
263
+ * variable.bindVariable(nodeId,options):
264
+ * ...
265
+ * ```
266
+ *
267
+ * ### Providing write access to the underlying value
268
+ *
269
+ * #### Variation1 - provide a simple synchronous set function
270
+ *
271
+ *
272
+ * #### Notes
273
+ * to do : explain return StatusCodes.GoodCompletesAsynchronously;
274
+ *
275
+ */
276
+ bindVariable(options?: BindVariableOptions, overwrite?: boolean): void;
277
+ /**
278
+ * @method readValueAsync
279
+ */
280
+ readValueAsync(context: ISessionContext | null, callback: CallbackT<DataValue>): void;
281
+ readValueAsync(context: ISessionContext | null): Promise<DataValue>;
282
+ getWriteMask(): number;
283
+ getUserWriteMask(): number;
284
+ clone(options: CloneOptions, optionalFilter?: CloneFilter, extraInfo?: CloneExtraInfo): UAVariable;
285
+ getDataTypeNode(): UADataType;
286
+ get dataTypeObj(): UADataType;
287
+ checkExtensionObjectIsCorrect(extObj: ExtensionObject | ExtensionObject[] | null): boolean;
288
+ /**
289
+ * @private
290
+ * install UAVariable to exposed th
291
+ *
292
+ * precondition:
293
+ */
294
+ installExtensionObjectVariables(): void;
295
+ /**
296
+ * @method bindExtensionObject
297
+ * @return {ExtensionObject}
298
+ */
299
+ bindExtensionObjectScalar(optionalExtensionObject: ExtensionObject, options?: BindExtensionObjectOptions): ExtensionObject | null;
300
+ bindExtensionObjectArray(optionalExtensionObject: ExtensionObject[], options?: BindExtensionObjectOptions): ExtensionObject[] | null;
301
+ bindExtensionObject(optionalExtensionObject?: ExtensionObject | ExtensionObject[], options?: BindExtensionObjectOptions): ExtensionObject | ExtensionObject[] | null;
302
+ updateExtensionObjectPartial(partialExtensionObject?: {
303
+ [key: string]: any;
304
+ }): ExtensionObject;
305
+ incrementExtensionObjectPartial(path: string | string[]): void;
306
+ toString(): string;
307
+ historyRead(context: ISessionContext, historyReadDetails: HistoryReadDetails | ReadRawModifiedDetails | ReadEventDetails | ReadProcessedDetails | ReadAtTimeDetails, indexRange: NumericRange | null, dataEncoding: QualifiedNameLike | null, continuationData: ContinuationData): Promise<HistoryReadResult>;
308
+ historyRead(context: ISessionContext, historyReadDetails: HistoryReadDetails | ReadRawModifiedDetails | ReadEventDetails | ReadProcessedDetails | ReadAtTimeDetails, indexRange: NumericRange | null, dataEncoding: QualifiedNameLike | null, continuationData: ContinuationData, callback: CallbackT<HistoryReadResult>): void;
309
+ _historyReadRaw(context: ISessionContext, historyReadRawModifiedDetails: ReadRawModifiedDetails, indexRange: NumericRange | null, dataEncoding: QualifiedNameLike | null, continuationData: ContinuationData, callback: CallbackT<HistoryReadResult>): void;
310
+ _historyReadRawModify(context: ISessionContext, historyReadRawModifiedDetails: ReadRawModifiedDetails, indexRange: NumericRange | null, dataEncoding: QualifiedNameLike | null, continuationData: ContinuationData, callback?: CallbackT<HistoryReadResult>): any;
311
+ _historyRead(context: ISessionContext, historyReadDetails: HistoryReadDetails | ReadRawModifiedDetails | ReadEventDetails | ReadProcessedDetails | ReadAtTimeDetails, indexRange: NumericRange | null, dataEncoding: QualifiedNameLike | null, continuationData: ContinuationData, callback: CallbackT<HistoryReadResult>): void;
312
+ _historyPush(newDataValue: DataValue): any;
313
+ _historyReadRawAsync(historyReadRawModifiedDetails: ReadRawModifiedDetails, maxNumberToExtract: number, isReversed: boolean, reverseDataValue: boolean, callback: CallbackT<DataValue[]>): any;
314
+ _historyReadModify(context: ISessionContext, historyReadRawModifiedDetails: ReadRawModifiedDetails, indexRange: NumericRange | null, dataEncoding: QualifiedNameLike | null, continuationData: ContinuationData, callback: CallbackT<HistoryReadResult>): any;
315
+ _update_startOfOnlineArchive(newDate: Date): void;
316
+ _update_startOfArchive(newDate: Date): void;
317
+ _validate_DataType(variantDataType: DataType): boolean;
318
+ _internal_set_value(value: Variant): void;
319
+ _internal_set_dataValue(dataValue: DataValue, indexRange?: NumericRange | null): void;
320
+ _conditionRefresh(_cache?: ConditionRefreshCache): void;
321
+ handle_semantic_changed(): void;
322
+ private _readDataType;
323
+ private _readValueRank;
324
+ private _readArrayDimensions;
325
+ private _readAccessLevel;
326
+ private _readAccessLevelEx;
327
+ private _readUserAccessLevel;
328
+ private _readMinimumSamplingInterval;
329
+ private _readHistorizing;
330
+ }
331
+ export interface UAVariableImpl {
332
+ $$variableType?: any;
333
+ $$dataType?: any;
334
+ $$getElementBrowseName: any;
335
+ $$extensionObjectArray: any;
336
+ $$indexPropertyName: any;
337
+ }
338
+ export interface UAVariableImplT<T, DT extends DataType> extends UAVariableImpl, UAVariableT<T, DT> {
339
+ on(): any;
340
+ once(): any;
341
+ readValueAsync(context: ISessionContext | null): Promise<DataValueT<T, DT>>;
342
+ readValueAsync(context: ISessionContext | null, callback: CallbackT<DataValueT<T, DT>>): void;
343
+ readValue(context?: ISessionContext | null, indexRange?: NumericRange, dataEncoding?: QualifiedNameLike | null): DataValueT<T, DT>;
344
+ readValue(context?: ISessionContext | null, indexRange?: NumericRange, dataEncoding?: QualifiedNameLike | null): DataValueT<T, DT>;
345
+ writeValue(context: ISessionContext, dataValue: DataValueT<T, DT>, indexRange: NumericRange | null, callback: StatusCodeCallback): void;
346
+ writeValue(context: ISessionContext, dataValue: DataValueT<T, DT>, callback: StatusCodeCallback): void;
347
+ writeValue(context: ISessionContext, dataValue: DataValueT<T, DT>, indexRange?: NumericRange | null): Promise<StatusCode>;
348
+ }
349
+ export declare class UAVariableImplT<T, DT extends DataType> extends UAVariableImpl {
350
+ }
351
+ export {};