opcjs-base 0.1.26-alpha → 0.1.32-alpha

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.
package/dist/index.d.cts CHANGED
@@ -107,7 +107,7 @@ declare class NodeId {
107
107
  /**
108
108
  * OPC UA ExpandedNodeId Type
109
109
  *
110
- * ExpandedNodeId extends NodeId with optional server identification,
110
+ * ExpandedNodeId wraps a NodeId with optional server identification,
111
111
  * allowing nodes to be identified across multiple servers.
112
112
  *
113
113
  * @module expanded-nodeid
@@ -116,41 +116,38 @@ declare class NodeId {
116
116
  /**
117
117
  * OPC UA ExpandedNodeId
118
118
  *
119
- * An ExpandedNodeId extends NodeId with optional server identification,
119
+ * An ExpandedNodeId wraps a NodeId with optional server identification,
120
120
  * allowing nodes to be identified across multiple servers.
121
121
  *
122
122
  * @example
123
123
  * ```typescript
124
124
  * import { ExpandedNodeId } from '@opcua/types';
125
125
  *
126
- * const expandedNodeId = new ExpandedNodeId(2, 123, "http://opcfoundation.org/UA/", 1);
126
+ * const expandedNodeId = new ExpandedNodeId(
127
+ * new NodeId(2, 123),
128
+ * 'http://opcfoundation.org/UA/',
129
+ * 1,
130
+ * );
127
131
  * console.log(expandedNodeId.toString());
128
132
  * // "svr=1;nsu=http://opcfoundation.org/UA/;ns=2;i=123"
129
133
  * ```
130
134
  */
131
- declare class ExpandedNodeId extends NodeId {
132
- /**
133
- * The server index (optional, for cross-server references)
134
- */
135
+ declare class ExpandedNodeId {
136
+ /** The wrapped NodeId. */
137
+ readonly nodeId: NodeId;
138
+ /** The server index (optional, for cross-server references). */
135
139
  readonly serverIndex?: number;
136
- /**
137
- * The namespace URI (optional, alternative to namespace index)
138
- */
140
+ /** The namespace URI (optional, alternative to the namespace index on nodeId). */
139
141
  readonly namespaceUri?: string;
140
142
  /**
141
- * Create a new ExpandedNodeId
143
+ * Create a new ExpandedNodeId.
142
144
  *
143
- * @param namespace - The namespace index
144
- * @param identifier - The identifier
145
+ * @param nodeId - The wrapped NodeId
145
146
  * @param namespaceUri - Optional namespace URI
146
147
  * @param serverIndex - Optional server index
147
148
  */
148
- constructor(namespace?: number, identifier?: number | string | Uint8Array, namespaceUri?: string, serverIndex?: number);
149
- /**
150
- * Convert ExpandedNodeId to string representation
151
- *
152
- * @returns String representation of the ExpandedNodeId
153
- */
149
+ constructor(nodeId: NodeId, namespaceUri?: string, serverIndex?: number);
150
+ /** Convert ExpandedNodeId to string representation. */
154
151
  toString(): string;
155
152
  }
156
153
 
@@ -739,9 +736,9 @@ declare enum ExtensionObjectEncoding {
739
736
  */
740
737
  declare class ExtensionObject {
741
738
  /**
742
- * The NodeId that identifies the type of structure encoded in the body.
739
+ * The NodeId (or ExpandedNodeId) that identifies the type of structure encoded in the body.
743
740
  */
744
- readonly typeId: NodeId;
741
+ readonly typeId: NodeId | ExpandedNodeId;
745
742
  /**
746
743
  * The encoding used for the body.
747
744
  */
@@ -760,7 +757,7 @@ declare class ExtensionObject {
760
757
  * @param encoding - The encoding type
761
758
  * @param body - The encoded body (null for None encoding)
762
759
  */
763
- constructor(typeId: NodeId, encoding?: ExtensionObjectEncoding, data?: IOpcType);
760
+ constructor(typeId: NodeId | ExpandedNodeId, encoding?: ExtensionObjectEncoding, data?: IOpcType);
764
761
  /**
765
762
  * Creates an ExtensionObject with no body.
766
763
  *
@@ -783,7 +780,7 @@ declare class ExtensionObject {
783
780
  * @param body - The XML encoded body
784
781
  * @returns A new ExtensionObject with Xml encoding
785
782
  */
786
- static newXml(typeId: NodeId, data: IOpcType): ExtensionObject;
783
+ static newXml(typeId: NodeId | ExpandedNodeId, data: IOpcType): ExtensionObject;
787
784
  }
788
785
 
789
786
  /**
@@ -2002,6 +1999,10 @@ declare class SecureChannelTypeEncoder extends TransformStream<MsgBase$1, MsgBas
2002
1999
  * TransformStream that binary-decodes each raw-body {@link Uint8Array} into
2003
2000
  * the corresponding {@link IOpcType} using the supplied {@link Decoder}.
2004
2001
  *
2002
+ * Abort messages (MSG+A) carry a transport-level StatusCode+Reason payload,
2003
+ * not an OPC UA service response, so their bodies are passed through as-is
2004
+ * for the {@link SecureChannelFacade} to decode and report.
2005
+ *
2005
2006
  * Use this to separate the OPC UA service-decoding step from the secure-channel
2006
2007
  * framing step, keeping each stage composable:
2007
2008
  *
@@ -8131,23 +8132,44 @@ declare class SecurityPolicyNone {
8131
8132
 
8132
8133
  /**
8133
8134
  * Shared mutable state for the OPC UA Secure Conversation layer.
8134
- * Passed to both {@link SecureChannelReadable} and {@link SecureChannelWritable}
8135
- * so they operate on the same channel identity and sequence counters.
8135
+ * Passed to both the chunk reader/writer and the secure channel facade so
8136
+ * they all operate on the same channel identity and sequence counters.
8136
8137
  */
8137
8138
  declare class SecureChannelContext {
8138
8139
  readonly endpointUrl: string;
8140
+ /**
8141
+ * Next outgoing sequence number. Starts at 1 for non-ECC legacy profiles
8142
+ * per OPC UA Part 6, Section 6.7.2.4. The value 0 is used only as the
8143
+ * LastSequenceNumber sentinel in the OPN request ("no prior sequence").
8144
+ */
8139
8145
  sequenceNumber: number;
8140
- requestNumber: number;
8146
+ /** Next outgoing request ID. The value 0 is reserved and must be skipped. */
8147
+ requestId: number;
8141
8148
  channelId: number;
8142
8149
  tokenId: number;
8143
8150
  maxSendBufferSize: number;
8144
8151
  maxRecvBufferSize: number;
8145
- chunkBuffers: Uint8Array[];
8152
+ /** Pending chunk bodies keyed by requestId, for reassembling multi-chunk messages. */
8153
+ chunkBuffers: Map<number, Uint8Array<ArrayBufferLike>[]>;
8146
8154
  securityAlgorithm?: IEncryptionAlgorithm;
8155
+ /** Last remote sequence number seen; undefined before the first received message. */
8156
+ lastRemoteSequenceNumber: number | undefined;
8147
8157
  readonly securityPolicy: SecurityPolicyNone;
8148
8158
  /**
8149
- * Atomically increments and returns the next sequence number and request id.
8150
- * Call once per outgoing message so both counters stay in sync.
8159
+ * Returns the current outgoing sequence number then advances it with
8160
+ * UInt32 wrap-around per OPC UA Part 6, Section 6.7.2.4. Only advances
8161
+ * the sequence counter — use when creating additional chunks for the same
8162
+ * message (each chunk needs its own sequence number but the same requestId).
8163
+ */
8164
+ nextSequenceNumber(): number;
8165
+ /**
8166
+ * Returns the next outgoing sequence number and request ID, then advances
8167
+ * both counters. Call once per outgoing message; use {@link nextSequenceNumber}
8168
+ * for additional chunks of the same message.
8169
+ *
8170
+ * Handles UInt32 wrap-around per OPC UA Part 6, Section 6.7.2.4:
8171
+ * sequence numbers reset to 1 after reaching 0xFFFFFFFF-1024; request IDs
8172
+ * skip the reserved value 0 on wrap.
8151
8173
  */
8152
8174
  nextIds(): {
8153
8175
  sequenceNumber: number;
@@ -8177,25 +8199,6 @@ declare class TcpConnectionHandler {
8177
8199
  constructor(injector: TcpMessageInjector, context: SecureChannelContext);
8178
8200
  }
8179
8201
 
8180
- /**
8181
- * Facade for the OPC UA Secure Conversation layer.
8182
- *
8183
- * Owns the correlation between outgoing requests and incoming responses.
8184
- * Wires together {@link SecureChannelMessageDecoder} (inbound) and the raw
8185
- * WebSocket writer (outbound) so callers only need to interact with this single
8186
- * object.
8187
- *
8188
- * ```ts
8189
- * const context = new SecureChannelContext(configuration);
8190
- * const facade = new SecureChannelFacade(context, tcpHandler.readable, wsWritable);
8191
- *
8192
- * await facade.openSecureChannel();
8193
- * const response = await facade.send(readValueRequest);
8194
- *
8195
- * // Unsolicited server messages (e.g. Publish notifications):
8196
- * facade.unsolicited.pipeTo(notificationHandler.writable);
8197
- * ```
8198
- */
8199
8202
  declare class SecureChannelFacade implements ISecureChannel {
8200
8203
  private readonly context;
8201
8204
  private readerTransform;
@@ -8204,11 +8207,33 @@ declare class SecureChannelFacade implements ISecureChannel {
8204
8207
  private readonly logger;
8205
8208
  private readonly writer;
8206
8209
  private readonly reader;
8210
+ /** Timer handle for the scheduled token renewal; undefined when no renewal is pending. */
8211
+ private renewalTimer;
8212
+ /**
8213
+ * Builds and sends an OpenSecureChannel request.
8214
+ * Called for both the initial Issue and subsequent Renew requests.
8215
+ *
8216
+ * On success the context `channelId` and `tokenId` are updated and a new
8217
+ * renewal is scheduled at 75 % of the server-revised token lifetime, per
8218
+ * OPC UA Part 4 Section 5.4.1 / Part 6 Section 6.7.3.
8219
+ */
8220
+ private sendOpenSecureChannel;
8221
+ /**
8222
+ * Schedules a proactive token renewal at {@link TOKEN_RENEW_FRACTION} of
8223
+ * `lifetimeMs`. Any previously scheduled renewal is cancelled first.
8224
+ */
8225
+ private scheduleRenewal;
8207
8226
  /**
8208
- * Sends the OpenSecureChannel request and resolves once the server replies.
8209
- * Updates `context.channelId` and `context.tokenId` on success.
8227
+ * Sends the initial OpenSecureChannel request and resolves once the server
8228
+ * replies. Updates `context.channelId` and `context.tokenId` on success
8229
+ * and schedules automatic renewal at 75 % of the token lifetime.
8210
8230
  */
8211
8231
  openSecureChannel(): Promise<void>;
8232
+ /**
8233
+ * Cancels any pending token renewal timer and releases the stream writer.
8234
+ * Call this when the secure channel is no longer needed.
8235
+ */
8236
+ close(): void;
8212
8237
  getSecurityPolicy(): string;
8213
8238
  getSecurityMode(): MessageSecurityModeEnum;
8214
8239
  getEndpointUrl(): string;
@@ -8226,8 +8251,8 @@ declare class SecureChannelFacade implements ISecureChannel {
8226
8251
  * Deframing transform for pipe use.
8227
8252
  *
8228
8253
  * Accepts raw OPC UA secure-conversation frame bytes, strips the message
8229
- * framing, and emits decoded {@link DecodedFrame} objects.
8230
- * Routing (pending request settlement vs. unsolicited) is the caller's
8254
+ * framing, and emits decoded {@link MsgBase} objects.
8255
+ * Routing (pending request settlement vs. unsolicited) is the callers
8231
8256
  * responsibility — use {@link SecureChannelFacade} for that.
8232
8257
  *
8233
8258
  * ```ts
@@ -8239,6 +8264,12 @@ declare class SecureChannelFacade implements ISecureChannel {
8239
8264
  declare class SecureChannelMessageDecoder extends TransformStream<Uint8Array, MsgBase$1> {
8240
8265
  private context;
8241
8266
  private logger;
8267
+ /**
8268
+ * Validates that `sequenceNumber` is strictly increasing from the last
8269
+ * seen remote sequence. Allows exactly one UInt32 wrap-around per token.
8270
+ * Returns false and logs an error if the number is a duplicate or out of order.
8271
+ */
8272
+ private validateSequenceNumber;
8242
8273
  private transform;
8243
8274
  constructor(context: SecureChannelContext);
8244
8275
  }
@@ -8259,13 +8290,12 @@ declare class SecureChannelMessageDecoder extends TransformStream<Uint8Array, Ms
8259
8290
  * .pipeTo(wsSendable);
8260
8291
  * ```
8261
8292
  */
8262
- declare class SecureChannelMesssageEncoder extends TransformStream<MsgBase$1, Uint8Array> {
8293
+ declare class SecureChannelMessageEncoder extends TransformStream<MsgBase$1, Uint8Array> {
8263
8294
  constructor(context: SecureChannelContext);
8264
8295
  }
8265
8296
 
8266
8297
  declare class SecureChannelChunkReader extends TransformStream<MsgBase$1, MsgBase$1> {
8267
8298
  private logger;
8268
- private prependChunk;
8269
8299
  private transform;
8270
8300
  constructor(context: SecureChannelContext);
8271
8301
  }
@@ -8277,4 +8307,4 @@ declare class SecureChannelChunkWriter extends TransformStream<MsgBase$1, MsgBas
8277
8307
  constructor(context: SecureChannelContext);
8278
8308
  }
8279
8309
 
8280
- export { ActionMethodDataType, ActionStateEnum, ActionTargetDataType, ActivateSessionRequest, ActivateSessionResponse, AddNodesItem, AddNodesRequest, AddNodesResponse, AddNodesResult, AddReferencesItem, AddReferencesRequest, AddReferencesResponse, AdditionalParametersType, AggregateConfiguration, AggregateFilter, AggregateFilterResult, AliasNameDataType, Annotation, AnnotationDataType, AnonymousIdentityToken, ApplicationConfigurationDataType, ApplicationDescription, ApplicationIdentityDataType, ApplicationTypeEnum, Argument, AttributeOperand, AuthorizationServiceConfigurationDataType, AxisInformation, AxisScaleEnumerationEnum, BaseConfigurationDataType, BaseConfigurationRecordDataType, SecureChannelTypeDecoder as BinaryDecoderTransform, SecureChannelTypeEncoder as BinaryEncoderTransform, BinaryReader, BinaryWriter, BitFieldDefinition, BrokerConnectionTransportDataType, BrokerDataSetReaderTransportDataType, BrokerDataSetWriterTransportDataType, BrokerTransportQualityOfServiceEnum, BrokerWriterGroupTransportDataType, BrowseDescription, BrowseDirectionEnum, BrowseNextRequest, BrowseNextResponse, BrowsePath, BrowsePathResult, BrowsePathTarget, BrowseRequest, BrowseResponse, BrowseResult, BrowseResultMaskEnum, BuildInfo, CallMethodRequest, CallMethodResult, CallRequest, CallResponse, CancelRequest, CancelResponse, CartesianCoordinates, CertificateGroupDataType, ChannelSecurityToken, ChassisIdSubtypeEnum, CloseSecureChannelRequest, CloseSecureChannelResponse, CloseSessionRequest, CloseSessionResponse, ComplexNumberType, Configuration, ConfigurationUpdateTargetType, ConfigurationUpdateTypeEnum, ConfigurationVersionDataType, ConnectionTransportDataType, ConsoleSink, ContentFilter, ContentFilterElement, ContentFilterElementResult, ContentFilterResult, ConversionLimitEnumEnum, CreateMonitoredItemsRequest, CreateMonitoredItemsResponse, CreateSessionRequest, CreateSessionResponse, CreateSubscriptionRequest, CreateSubscriptionResponse, CurrencyUnitType, DataChangeFilter, DataChangeNotification, DataChangeTriggerEnum, DataSetMetaDataType, DataSetOrderingTypeEnum, DataSetReaderDataType, DataSetReaderMessageDataType, DataSetReaderTransportDataType, DataSetWriterDataType, DataSetWriterMessageDataType, DataSetWriterTransportDataType, DataTypeAttributes, DataTypeDefinition, DataTypeDescription, DataTypeNode, DataTypeSchemaHeader, DataValue, DatagramConnectionTransport2DataType, DatagramConnectionTransportDataType, DatagramDataSetReaderTransportDataType, DatagramWriterGroupTransport2DataType, DatagramWriterGroupTransportDataType, DeadbandTypeEnum, DecimalDataType, Decoder, DeleteAtTimeDetails, DeleteEventDetails, DeleteMonitoredItemsRequest, DeleteMonitoredItemsResponse, DeleteNodesItem, DeleteNodesRequest, DeleteNodesResponse, DeleteRawModifiedDetails, DeleteReferencesItem, DeleteReferencesRequest, DeleteReferencesResponse, DeleteSubscriptionsRequest, DeleteSubscriptionsResponse, DiagnosticInfo, DiagnosticsLevelEnum, DiscoveryConfiguration, DoubleComplexNumberType, DtlsPubSubConnectionDataType, DuplexEnum, EUInformation, ElementOperand, Encoder, EndpointConfiguration, EndpointDataType, EndpointDescription, EndpointType, EndpointUrlListDataType, EnumDefinition, EnumDescription, EnumField, EnumValueType, EphemeralKeyType, EventFieldList, EventFilter, EventFilterResult, EventNotificationList, ExceptionDeviationFormatEnum, ExpandedNodeId, ExtensionObject, FieldMetaData, FieldTargetDataType, FilterOperand, FilterOperatorEnum, FindServersOnNetworkRequest, FindServersOnNetworkResponse, FindServersRequest, FindServersResponse, Frame, GenericAttributeValue, GenericAttributes, GetEndpointsRequest, GetEndpointsResponse, HistoryData, HistoryEvent, HistoryEventFieldList, HistoryModifiedData, HistoryModifiedEvent, HistoryReadDetails, HistoryReadRequest, HistoryReadResponse, HistoryReadResult, HistoryReadValueId, HistoryUpdateDetails, HistoryUpdateRequest, HistoryUpdateResponse, HistoryUpdateResult, HistoryUpdateTypeEnum, type ILogger, type ILoggerFactory, type IOpcType, type IReader, type ISecureChannel, type ISink, type IWriter, IdTypeEnum, IdentityCriteriaTypeEnum, IdentityMappingRuleType, InstanceNode, InterfaceAdminStatusEnum, InterfaceOperStatusEnum, IssuedIdentityToken, JsonActionMetaDataMessage, JsonActionNetworkMessage, JsonActionRequestMessage, JsonActionResponderMessage, JsonActionResponseMessage, JsonApplicationDescriptionMessage, JsonDataSetMessage, JsonDataSetMetaDataMessage, JsonDataSetReaderMessageDataType, JsonDataSetWriterMessageDataType, JsonNetworkMessage, JsonPubSubConnectionMessage, JsonServerEndpointsMessage, JsonStatusMessage, JsonWriterGroupMessageDataType, KeyValuePair, type LevelName, LinearConversionDataType, LiteralOperand, LldpManagementAddressTxPortType, LldpManagementAddressType, LldpTlvType, LocalizedText, type LogRecord, LogRecordsDataType, LoggerFactory, ManAddrIfSubtypeEnum, MdnsDiscoveryConfiguration, MessageSecurityModeEnum, MethodAttributes, MethodNode, ModelChangeStructureDataType, ModelChangeStructureVerbMaskEnum, ModificationInfo, ModifyMonitoredItemsRequest, ModifyMonitoredItemsResponse, ModifySubscriptionRequest, ModifySubscriptionResponse, MonitoredItemCreateRequest, MonitoredItemCreateResult, MonitoredItemModifyRequest, MonitoredItemModifyResult, MonitoredItemNotification, MonitoringFilter, MonitoringFilterResult, MonitoringModeEnum, MonitoringParameters, NameValuePair, NamingRuleTypeEnum, NegotiationStatusEnum, NetworkAddressDataType, NetworkAddressUrlDataType, NetworkGroupDataType, Node, NodeAttributes, NodeAttributesMaskEnum, NodeClassEnum, NodeId, NodeIdType, NodeReference, NodeTypeDescription, NotificationData, NotificationMessage, ObjectAttributes, ObjectNode, ObjectTypeAttributes, ObjectTypeNode, OpenFileModeEnum, OpenSecureChannelRequest, OpenSecureChannelResponse, OptionSet, Orientation, OverrideValueHandlingEnum, ParsingResult, PerformUpdateTypeEnum, PortIdSubtypeEnum, PortableNodeId, PortableQualifiedName, PriorityMappingEntryType, ProgramDiagnostic2DataType, ProgramDiagnosticDataType, PubSubConfiguration2DataType, PubSubConfigurationDataType, PubSubConfigurationRefDataType, PubSubConfigurationValueDataType, PubSubConnectionDataType, PubSubDiagnosticsCounterClassificationEnum, PubSubGroupDataType, PubSubKeyPushTargetDataType, PubSubStateEnum, PublishRequest, PublishResponse, PublishedActionDataType, PublishedActionMethodDataType, PublishedDataItemsDataType, PublishedDataSetCustomSourceDataType, PublishedDataSetDataType, PublishedDataSetSourceDataType, PublishedEventsDataType, PublishedVariableDataType, QosDataType, QualifiedName, QuantityDimension, QueryDataDescription, QueryDataSet, QueryFirstRequest, QueryFirstResponse, QueryNextRequest, QueryNextResponse, Range, RationalNumber, ReadAnnotationDataDetails, ReadAtTimeDetails, ReadEventDetails, ReadEventDetails2, ReadEventDetailsSorted, ReadProcessedDetails, ReadRawModifiedDetails, ReadRequest, ReadResponse, ReadValueId, ReaderGroupDataType, ReaderGroupMessageDataType, ReaderGroupTransportDataType, ReceiveQosDataType, ReceiveQosPriorityDataType, RedundancySupportEnum, RedundantServerDataType, RedundantServerModeEnum, ReferenceDescription, ReferenceDescriptionDataType, ReferenceListEntryDataType, ReferenceNode, ReferenceTypeAttributes, ReferenceTypeNode, RegisterNodesRequest, RegisterNodesResponse, RegisterServer2Request, RegisterServer2Response, RegisterServerRequest, RegisterServerResponse, RegisteredServer, RelativePath, RelativePathElement, RepublishRequest, RepublishResponse, RequestHeader, ResponseHeader, RolePermissionType, SamplingIntervalDiagnosticsDataType, SecureChannelChunkReader, SecureChannelChunkWriter, SecureChannelContext, SecureChannelFacade, SecureChannelMessageDecoder, SecureChannelMesssageEncoder, SecureChannelTypeDecoder, SecureChannelTypeEncoder, SecurityGroupDataType, SecuritySettingsDataType, SecurityTokenRequestTypeEnum, SemanticChangeStructureDataType, ServerDiagnosticsSummaryDataType, ServerEndpointDataType, ServerOnNetwork, ServerStateEnum, ServerStatusDataType, ServiceCertificateDataType, ServiceCounterDataType, ServiceFault, SessionDiagnosticsDataType, SessionSecurityDiagnosticsDataType, SessionlessInvokeRequestType, SessionlessInvokeResponseType, SetMonitoringModeRequest, SetMonitoringModeResponse, SetPublishingModeRequest, SetPublishingModeResponse, SetTriggeringRequest, SetTriggeringResponse, SignatureData, SignedSoftwareCertificate, SimpleAttributeOperand, SimpleTypeDescription, SortOrderTypeEnum, SortRuleElement, SpanContextDataType, StandaloneSubscribedDataSetDataType, StandaloneSubscribedDataSetRefDataType, StatusChangeNotification, StatusCode, type StatusCodeFlagBits, StatusCodeGetFlagBits, StatusCodeIs, StatusCodeToString, StatusCodeToStringNumber, StatusResult, Structure, StructureDefinition, StructureDescription, StructureField, StructureTypeEnum, SubscribedDataSetDataType, SubscribedDataSetMirrorDataType, SubscriptionAcknowledgement, SubscriptionDiagnosticsDataType, TargetVariablesDataType, TcpConnectionHandler, TcpMessageDecoupler, TcpMessageInjector, TimeZoneDataType, TimestampsToReturnEnum, TraceContextDataType, TransactionErrorType, TransferResult, TransferSubscriptionsRequest, TransferSubscriptionsResponse, TranslateBrowsePathsToNodeIdsRequest, TranslateBrowsePathsToNodeIdsResponse, TransmitQosDataType, TransmitQosPriorityDataType, TrustListDataType, TrustListMasksEnum, TsnFailureCodeEnum, TsnListenerStatusEnum, TsnStreamStateEnum, TsnTalkerStatusEnum, TypeNode, UABinaryFileDataType, type UaBoolean, type UaByte, type UaByteString, type UaDateTime, type UaDouble, type UaFloat, type UaGuid, type UaInt16, type UaInt32, type UaInt64, type UaPrimitive, type UaSbyte, type UaString, type UaUint16, type UaUint32, type UaUint64, UadpDataSetReaderMessageDataType, UadpDataSetWriterMessageDataType, UadpWriterGroupMessageDataType, Union, UnregisterNodesRequest, UnregisterNodesResponse, UnsignedRationalNumber, UpdateDataDetails, UpdateEventDetails, UpdateStructureDataDetails, UserIdentityToken, UserManagementDataType, UserNameIdentityToken, UserTokenPolicy, UserTokenSettingsDataType, UserTokenTypeEnum, VariableAttributes, VariableNode, VariableTypeAttributes, VariableTypeNode, Variant, type VariantArrayValue, type VariantValue, Vector, ViewAttributes, ViewDescription, ViewNode, WebSocketFascade, WebSocketReadableStream, WebSocketWritableStream, WriteRequest, WriteResponse, WriteValue, WriterGroupDataType, WriterGroupMessageDataType, WriterGroupTransportDataType, X509IdentityToken, XVType, XmlElement, _3DCartesianCoordinates, _3DFrame, _3DOrientation, _3DVector, getLogger, initLoggerProvider, registerBinaryDecoders, registerEncoders, registerJsonDecoders, registerTypeDecoders, registerXmlDecoders, uaByte, uaDouble, uaFloat, uaGuid, uaInt16, uaInt32, uaInt64, uaSbyte, uaUint16, uaUint32, uaUint64 };
8310
+ export { ActionMethodDataType, ActionStateEnum, ActionTargetDataType, ActivateSessionRequest, ActivateSessionResponse, AddNodesItem, AddNodesRequest, AddNodesResponse, AddNodesResult, AddReferencesItem, AddReferencesRequest, AddReferencesResponse, AdditionalParametersType, AggregateConfiguration, AggregateFilter, AggregateFilterResult, AliasNameDataType, Annotation, AnnotationDataType, AnonymousIdentityToken, ApplicationConfigurationDataType, ApplicationDescription, ApplicationIdentityDataType, ApplicationTypeEnum, Argument, AttributeOperand, AuthorizationServiceConfigurationDataType, AxisInformation, AxisScaleEnumerationEnum, BaseConfigurationDataType, BaseConfigurationRecordDataType, SecureChannelTypeDecoder as BinaryDecoderTransform, SecureChannelTypeEncoder as BinaryEncoderTransform, BinaryReader, BinaryWriter, BitFieldDefinition, BrokerConnectionTransportDataType, BrokerDataSetReaderTransportDataType, BrokerDataSetWriterTransportDataType, BrokerTransportQualityOfServiceEnum, BrokerWriterGroupTransportDataType, BrowseDescription, BrowseDirectionEnum, BrowseNextRequest, BrowseNextResponse, BrowsePath, BrowsePathResult, BrowsePathTarget, BrowseRequest, BrowseResponse, BrowseResult, BrowseResultMaskEnum, BuildInfo, CallMethodRequest, CallMethodResult, CallRequest, CallResponse, CancelRequest, CancelResponse, CartesianCoordinates, CertificateGroupDataType, ChannelSecurityToken, ChassisIdSubtypeEnum, CloseSecureChannelRequest, CloseSecureChannelResponse, CloseSessionRequest, CloseSessionResponse, ComplexNumberType, Configuration, ConfigurationUpdateTargetType, ConfigurationUpdateTypeEnum, ConfigurationVersionDataType, ConnectionTransportDataType, ConsoleSink, ContentFilter, ContentFilterElement, ContentFilterElementResult, ContentFilterResult, ConversionLimitEnumEnum, CreateMonitoredItemsRequest, CreateMonitoredItemsResponse, CreateSessionRequest, CreateSessionResponse, CreateSubscriptionRequest, CreateSubscriptionResponse, CurrencyUnitType, DataChangeFilter, DataChangeNotification, DataChangeTriggerEnum, DataSetMetaDataType, DataSetOrderingTypeEnum, DataSetReaderDataType, DataSetReaderMessageDataType, DataSetReaderTransportDataType, DataSetWriterDataType, DataSetWriterMessageDataType, DataSetWriterTransportDataType, DataTypeAttributes, DataTypeDefinition, DataTypeDescription, DataTypeNode, DataTypeSchemaHeader, DataValue, DatagramConnectionTransport2DataType, DatagramConnectionTransportDataType, DatagramDataSetReaderTransportDataType, DatagramWriterGroupTransport2DataType, DatagramWriterGroupTransportDataType, DeadbandTypeEnum, DecimalDataType, Decoder, DeleteAtTimeDetails, DeleteEventDetails, DeleteMonitoredItemsRequest, DeleteMonitoredItemsResponse, DeleteNodesItem, DeleteNodesRequest, DeleteNodesResponse, DeleteRawModifiedDetails, DeleteReferencesItem, DeleteReferencesRequest, DeleteReferencesResponse, DeleteSubscriptionsRequest, DeleteSubscriptionsResponse, DiagnosticInfo, DiagnosticsLevelEnum, DiscoveryConfiguration, DoubleComplexNumberType, DtlsPubSubConnectionDataType, DuplexEnum, EUInformation, ElementOperand, Encoder, EndpointConfiguration, EndpointDataType, EndpointDescription, EndpointType, EndpointUrlListDataType, EnumDefinition, EnumDescription, EnumField, EnumValueType, EphemeralKeyType, EventFieldList, EventFilter, EventFilterResult, EventNotificationList, ExceptionDeviationFormatEnum, ExpandedNodeId, ExtensionObject, FieldMetaData, FieldTargetDataType, FilterOperand, FilterOperatorEnum, FindServersOnNetworkRequest, FindServersOnNetworkResponse, FindServersRequest, FindServersResponse, Frame, GenericAttributeValue, GenericAttributes, GetEndpointsRequest, GetEndpointsResponse, HistoryData, HistoryEvent, HistoryEventFieldList, HistoryModifiedData, HistoryModifiedEvent, HistoryReadDetails, HistoryReadRequest, HistoryReadResponse, HistoryReadResult, HistoryReadValueId, HistoryUpdateDetails, HistoryUpdateRequest, HistoryUpdateResponse, HistoryUpdateResult, HistoryUpdateTypeEnum, type ILogger, type ILoggerFactory, type IOpcType, type IReader, type ISecureChannel, type ISink, type IWriter, IdTypeEnum, IdentityCriteriaTypeEnum, IdentityMappingRuleType, InstanceNode, InterfaceAdminStatusEnum, InterfaceOperStatusEnum, IssuedIdentityToken, JsonActionMetaDataMessage, JsonActionNetworkMessage, JsonActionRequestMessage, JsonActionResponderMessage, JsonActionResponseMessage, JsonApplicationDescriptionMessage, JsonDataSetMessage, JsonDataSetMetaDataMessage, JsonDataSetReaderMessageDataType, JsonDataSetWriterMessageDataType, JsonNetworkMessage, JsonPubSubConnectionMessage, JsonServerEndpointsMessage, JsonStatusMessage, JsonWriterGroupMessageDataType, KeyValuePair, type LevelName, LinearConversionDataType, LiteralOperand, LldpManagementAddressTxPortType, LldpManagementAddressType, LldpTlvType, LocalizedText, type LogRecord, LogRecordsDataType, LoggerFactory, ManAddrIfSubtypeEnum, MdnsDiscoveryConfiguration, MessageSecurityModeEnum, MethodAttributes, MethodNode, ModelChangeStructureDataType, ModelChangeStructureVerbMaskEnum, ModificationInfo, ModifyMonitoredItemsRequest, ModifyMonitoredItemsResponse, ModifySubscriptionRequest, ModifySubscriptionResponse, MonitoredItemCreateRequest, MonitoredItemCreateResult, MonitoredItemModifyRequest, MonitoredItemModifyResult, MonitoredItemNotification, MonitoringFilter, MonitoringFilterResult, MonitoringModeEnum, MonitoringParameters, NameValuePair, NamingRuleTypeEnum, NegotiationStatusEnum, NetworkAddressDataType, NetworkAddressUrlDataType, NetworkGroupDataType, Node, NodeAttributes, NodeAttributesMaskEnum, NodeClassEnum, NodeId, NodeIdType, NodeReference, NodeTypeDescription, NotificationData, NotificationMessage, ObjectAttributes, ObjectNode, ObjectTypeAttributes, ObjectTypeNode, OpenFileModeEnum, OpenSecureChannelRequest, OpenSecureChannelResponse, OptionSet, Orientation, OverrideValueHandlingEnum, ParsingResult, PerformUpdateTypeEnum, PortIdSubtypeEnum, PortableNodeId, PortableQualifiedName, PriorityMappingEntryType, ProgramDiagnostic2DataType, ProgramDiagnosticDataType, PubSubConfiguration2DataType, PubSubConfigurationDataType, PubSubConfigurationRefDataType, PubSubConfigurationValueDataType, PubSubConnectionDataType, PubSubDiagnosticsCounterClassificationEnum, PubSubGroupDataType, PubSubKeyPushTargetDataType, PubSubStateEnum, PublishRequest, PublishResponse, PublishedActionDataType, PublishedActionMethodDataType, PublishedDataItemsDataType, PublishedDataSetCustomSourceDataType, PublishedDataSetDataType, PublishedDataSetSourceDataType, PublishedEventsDataType, PublishedVariableDataType, QosDataType, QualifiedName, QuantityDimension, QueryDataDescription, QueryDataSet, QueryFirstRequest, QueryFirstResponse, QueryNextRequest, QueryNextResponse, Range, RationalNumber, ReadAnnotationDataDetails, ReadAtTimeDetails, ReadEventDetails, ReadEventDetails2, ReadEventDetailsSorted, ReadProcessedDetails, ReadRawModifiedDetails, ReadRequest, ReadResponse, ReadValueId, ReaderGroupDataType, ReaderGroupMessageDataType, ReaderGroupTransportDataType, ReceiveQosDataType, ReceiveQosPriorityDataType, RedundancySupportEnum, RedundantServerDataType, RedundantServerModeEnum, ReferenceDescription, ReferenceDescriptionDataType, ReferenceListEntryDataType, ReferenceNode, ReferenceTypeAttributes, ReferenceTypeNode, RegisterNodesRequest, RegisterNodesResponse, RegisterServer2Request, RegisterServer2Response, RegisterServerRequest, RegisterServerResponse, RegisteredServer, RelativePath, RelativePathElement, RepublishRequest, RepublishResponse, RequestHeader, ResponseHeader, RolePermissionType, SamplingIntervalDiagnosticsDataType, SecureChannelChunkReader, SecureChannelChunkWriter, SecureChannelContext, SecureChannelFacade, SecureChannelMessageDecoder, SecureChannelMessageEncoder, SecureChannelTypeDecoder, SecureChannelTypeEncoder, SecurityGroupDataType, SecuritySettingsDataType, SecurityTokenRequestTypeEnum, SemanticChangeStructureDataType, ServerDiagnosticsSummaryDataType, ServerEndpointDataType, ServerOnNetwork, ServerStateEnum, ServerStatusDataType, ServiceCertificateDataType, ServiceCounterDataType, ServiceFault, SessionDiagnosticsDataType, SessionSecurityDiagnosticsDataType, SessionlessInvokeRequestType, SessionlessInvokeResponseType, SetMonitoringModeRequest, SetMonitoringModeResponse, SetPublishingModeRequest, SetPublishingModeResponse, SetTriggeringRequest, SetTriggeringResponse, SignatureData, SignedSoftwareCertificate, SimpleAttributeOperand, SimpleTypeDescription, SortOrderTypeEnum, SortRuleElement, SpanContextDataType, StandaloneSubscribedDataSetDataType, StandaloneSubscribedDataSetRefDataType, StatusChangeNotification, StatusCode, type StatusCodeFlagBits, StatusCodeGetFlagBits, StatusCodeIs, StatusCodeToString, StatusCodeToStringNumber, StatusResult, Structure, StructureDefinition, StructureDescription, StructureField, StructureTypeEnum, SubscribedDataSetDataType, SubscribedDataSetMirrorDataType, SubscriptionAcknowledgement, SubscriptionDiagnosticsDataType, TargetVariablesDataType, TcpConnectionHandler, TcpMessageDecoupler, TcpMessageInjector, TimeZoneDataType, TimestampsToReturnEnum, TraceContextDataType, TransactionErrorType, TransferResult, TransferSubscriptionsRequest, TransferSubscriptionsResponse, TranslateBrowsePathsToNodeIdsRequest, TranslateBrowsePathsToNodeIdsResponse, TransmitQosDataType, TransmitQosPriorityDataType, TrustListDataType, TrustListMasksEnum, TsnFailureCodeEnum, TsnListenerStatusEnum, TsnStreamStateEnum, TsnTalkerStatusEnum, TypeNode, UABinaryFileDataType, type UaBoolean, type UaByte, type UaByteString, type UaDateTime, type UaDouble, type UaFloat, type UaGuid, type UaInt16, type UaInt32, type UaInt64, type UaPrimitive, type UaSbyte, type UaString, type UaUint16, type UaUint32, type UaUint64, UadpDataSetReaderMessageDataType, UadpDataSetWriterMessageDataType, UadpWriterGroupMessageDataType, Union, UnregisterNodesRequest, UnregisterNodesResponse, UnsignedRationalNumber, UpdateDataDetails, UpdateEventDetails, UpdateStructureDataDetails, UserIdentityToken, UserManagementDataType, UserNameIdentityToken, UserTokenPolicy, UserTokenSettingsDataType, UserTokenTypeEnum, VariableAttributes, VariableNode, VariableTypeAttributes, VariableTypeNode, Variant, type VariantArrayValue, type VariantValue, Vector, ViewAttributes, ViewDescription, ViewNode, WebSocketFascade, WebSocketReadableStream, WebSocketWritableStream, WriteRequest, WriteResponse, WriteValue, WriterGroupDataType, WriterGroupMessageDataType, WriterGroupTransportDataType, X509IdentityToken, XVType, XmlElement, _3DCartesianCoordinates, _3DFrame, _3DOrientation, _3DVector, getLogger, initLoggerProvider, registerBinaryDecoders, registerEncoders, registerJsonDecoders, registerTypeDecoders, registerXmlDecoders, uaByte, uaDouble, uaFloat, uaGuid, uaInt16, uaInt32, uaInt64, uaSbyte, uaUint16, uaUint32, uaUint64 };
package/dist/index.d.ts CHANGED
@@ -107,7 +107,7 @@ declare class NodeId {
107
107
  /**
108
108
  * OPC UA ExpandedNodeId Type
109
109
  *
110
- * ExpandedNodeId extends NodeId with optional server identification,
110
+ * ExpandedNodeId wraps a NodeId with optional server identification,
111
111
  * allowing nodes to be identified across multiple servers.
112
112
  *
113
113
  * @module expanded-nodeid
@@ -116,41 +116,38 @@ declare class NodeId {
116
116
  /**
117
117
  * OPC UA ExpandedNodeId
118
118
  *
119
- * An ExpandedNodeId extends NodeId with optional server identification,
119
+ * An ExpandedNodeId wraps a NodeId with optional server identification,
120
120
  * allowing nodes to be identified across multiple servers.
121
121
  *
122
122
  * @example
123
123
  * ```typescript
124
124
  * import { ExpandedNodeId } from '@opcua/types';
125
125
  *
126
- * const expandedNodeId = new ExpandedNodeId(2, 123, "http://opcfoundation.org/UA/", 1);
126
+ * const expandedNodeId = new ExpandedNodeId(
127
+ * new NodeId(2, 123),
128
+ * 'http://opcfoundation.org/UA/',
129
+ * 1,
130
+ * );
127
131
  * console.log(expandedNodeId.toString());
128
132
  * // "svr=1;nsu=http://opcfoundation.org/UA/;ns=2;i=123"
129
133
  * ```
130
134
  */
131
- declare class ExpandedNodeId extends NodeId {
132
- /**
133
- * The server index (optional, for cross-server references)
134
- */
135
+ declare class ExpandedNodeId {
136
+ /** The wrapped NodeId. */
137
+ readonly nodeId: NodeId;
138
+ /** The server index (optional, for cross-server references). */
135
139
  readonly serverIndex?: number;
136
- /**
137
- * The namespace URI (optional, alternative to namespace index)
138
- */
140
+ /** The namespace URI (optional, alternative to the namespace index on nodeId). */
139
141
  readonly namespaceUri?: string;
140
142
  /**
141
- * Create a new ExpandedNodeId
143
+ * Create a new ExpandedNodeId.
142
144
  *
143
- * @param namespace - The namespace index
144
- * @param identifier - The identifier
145
+ * @param nodeId - The wrapped NodeId
145
146
  * @param namespaceUri - Optional namespace URI
146
147
  * @param serverIndex - Optional server index
147
148
  */
148
- constructor(namespace?: number, identifier?: number | string | Uint8Array, namespaceUri?: string, serverIndex?: number);
149
- /**
150
- * Convert ExpandedNodeId to string representation
151
- *
152
- * @returns String representation of the ExpandedNodeId
153
- */
149
+ constructor(nodeId: NodeId, namespaceUri?: string, serverIndex?: number);
150
+ /** Convert ExpandedNodeId to string representation. */
154
151
  toString(): string;
155
152
  }
156
153
 
@@ -739,9 +736,9 @@ declare enum ExtensionObjectEncoding {
739
736
  */
740
737
  declare class ExtensionObject {
741
738
  /**
742
- * The NodeId that identifies the type of structure encoded in the body.
739
+ * The NodeId (or ExpandedNodeId) that identifies the type of structure encoded in the body.
743
740
  */
744
- readonly typeId: NodeId;
741
+ readonly typeId: NodeId | ExpandedNodeId;
745
742
  /**
746
743
  * The encoding used for the body.
747
744
  */
@@ -760,7 +757,7 @@ declare class ExtensionObject {
760
757
  * @param encoding - The encoding type
761
758
  * @param body - The encoded body (null for None encoding)
762
759
  */
763
- constructor(typeId: NodeId, encoding?: ExtensionObjectEncoding, data?: IOpcType);
760
+ constructor(typeId: NodeId | ExpandedNodeId, encoding?: ExtensionObjectEncoding, data?: IOpcType);
764
761
  /**
765
762
  * Creates an ExtensionObject with no body.
766
763
  *
@@ -783,7 +780,7 @@ declare class ExtensionObject {
783
780
  * @param body - The XML encoded body
784
781
  * @returns A new ExtensionObject with Xml encoding
785
782
  */
786
- static newXml(typeId: NodeId, data: IOpcType): ExtensionObject;
783
+ static newXml(typeId: NodeId | ExpandedNodeId, data: IOpcType): ExtensionObject;
787
784
  }
788
785
 
789
786
  /**
@@ -2002,6 +1999,10 @@ declare class SecureChannelTypeEncoder extends TransformStream<MsgBase$1, MsgBas
2002
1999
  * TransformStream that binary-decodes each raw-body {@link Uint8Array} into
2003
2000
  * the corresponding {@link IOpcType} using the supplied {@link Decoder}.
2004
2001
  *
2002
+ * Abort messages (MSG+A) carry a transport-level StatusCode+Reason payload,
2003
+ * not an OPC UA service response, so their bodies are passed through as-is
2004
+ * for the {@link SecureChannelFacade} to decode and report.
2005
+ *
2005
2006
  * Use this to separate the OPC UA service-decoding step from the secure-channel
2006
2007
  * framing step, keeping each stage composable:
2007
2008
  *
@@ -8131,23 +8132,44 @@ declare class SecurityPolicyNone {
8131
8132
 
8132
8133
  /**
8133
8134
  * Shared mutable state for the OPC UA Secure Conversation layer.
8134
- * Passed to both {@link SecureChannelReadable} and {@link SecureChannelWritable}
8135
- * so they operate on the same channel identity and sequence counters.
8135
+ * Passed to both the chunk reader/writer and the secure channel facade so
8136
+ * they all operate on the same channel identity and sequence counters.
8136
8137
  */
8137
8138
  declare class SecureChannelContext {
8138
8139
  readonly endpointUrl: string;
8140
+ /**
8141
+ * Next outgoing sequence number. Starts at 1 for non-ECC legacy profiles
8142
+ * per OPC UA Part 6, Section 6.7.2.4. The value 0 is used only as the
8143
+ * LastSequenceNumber sentinel in the OPN request ("no prior sequence").
8144
+ */
8139
8145
  sequenceNumber: number;
8140
- requestNumber: number;
8146
+ /** Next outgoing request ID. The value 0 is reserved and must be skipped. */
8147
+ requestId: number;
8141
8148
  channelId: number;
8142
8149
  tokenId: number;
8143
8150
  maxSendBufferSize: number;
8144
8151
  maxRecvBufferSize: number;
8145
- chunkBuffers: Uint8Array[];
8152
+ /** Pending chunk bodies keyed by requestId, for reassembling multi-chunk messages. */
8153
+ chunkBuffers: Map<number, Uint8Array<ArrayBufferLike>[]>;
8146
8154
  securityAlgorithm?: IEncryptionAlgorithm;
8155
+ /** Last remote sequence number seen; undefined before the first received message. */
8156
+ lastRemoteSequenceNumber: number | undefined;
8147
8157
  readonly securityPolicy: SecurityPolicyNone;
8148
8158
  /**
8149
- * Atomically increments and returns the next sequence number and request id.
8150
- * Call once per outgoing message so both counters stay in sync.
8159
+ * Returns the current outgoing sequence number then advances it with
8160
+ * UInt32 wrap-around per OPC UA Part 6, Section 6.7.2.4. Only advances
8161
+ * the sequence counter — use when creating additional chunks for the same
8162
+ * message (each chunk needs its own sequence number but the same requestId).
8163
+ */
8164
+ nextSequenceNumber(): number;
8165
+ /**
8166
+ * Returns the next outgoing sequence number and request ID, then advances
8167
+ * both counters. Call once per outgoing message; use {@link nextSequenceNumber}
8168
+ * for additional chunks of the same message.
8169
+ *
8170
+ * Handles UInt32 wrap-around per OPC UA Part 6, Section 6.7.2.4:
8171
+ * sequence numbers reset to 1 after reaching 0xFFFFFFFF-1024; request IDs
8172
+ * skip the reserved value 0 on wrap.
8151
8173
  */
8152
8174
  nextIds(): {
8153
8175
  sequenceNumber: number;
@@ -8177,25 +8199,6 @@ declare class TcpConnectionHandler {
8177
8199
  constructor(injector: TcpMessageInjector, context: SecureChannelContext);
8178
8200
  }
8179
8201
 
8180
- /**
8181
- * Facade for the OPC UA Secure Conversation layer.
8182
- *
8183
- * Owns the correlation between outgoing requests and incoming responses.
8184
- * Wires together {@link SecureChannelMessageDecoder} (inbound) and the raw
8185
- * WebSocket writer (outbound) so callers only need to interact with this single
8186
- * object.
8187
- *
8188
- * ```ts
8189
- * const context = new SecureChannelContext(configuration);
8190
- * const facade = new SecureChannelFacade(context, tcpHandler.readable, wsWritable);
8191
- *
8192
- * await facade.openSecureChannel();
8193
- * const response = await facade.send(readValueRequest);
8194
- *
8195
- * // Unsolicited server messages (e.g. Publish notifications):
8196
- * facade.unsolicited.pipeTo(notificationHandler.writable);
8197
- * ```
8198
- */
8199
8202
  declare class SecureChannelFacade implements ISecureChannel {
8200
8203
  private readonly context;
8201
8204
  private readerTransform;
@@ -8204,11 +8207,33 @@ declare class SecureChannelFacade implements ISecureChannel {
8204
8207
  private readonly logger;
8205
8208
  private readonly writer;
8206
8209
  private readonly reader;
8210
+ /** Timer handle for the scheduled token renewal; undefined when no renewal is pending. */
8211
+ private renewalTimer;
8212
+ /**
8213
+ * Builds and sends an OpenSecureChannel request.
8214
+ * Called for both the initial Issue and subsequent Renew requests.
8215
+ *
8216
+ * On success the context `channelId` and `tokenId` are updated and a new
8217
+ * renewal is scheduled at 75 % of the server-revised token lifetime, per
8218
+ * OPC UA Part 4 Section 5.4.1 / Part 6 Section 6.7.3.
8219
+ */
8220
+ private sendOpenSecureChannel;
8221
+ /**
8222
+ * Schedules a proactive token renewal at {@link TOKEN_RENEW_FRACTION} of
8223
+ * `lifetimeMs`. Any previously scheduled renewal is cancelled first.
8224
+ */
8225
+ private scheduleRenewal;
8207
8226
  /**
8208
- * Sends the OpenSecureChannel request and resolves once the server replies.
8209
- * Updates `context.channelId` and `context.tokenId` on success.
8227
+ * Sends the initial OpenSecureChannel request and resolves once the server
8228
+ * replies. Updates `context.channelId` and `context.tokenId` on success
8229
+ * and schedules automatic renewal at 75 % of the token lifetime.
8210
8230
  */
8211
8231
  openSecureChannel(): Promise<void>;
8232
+ /**
8233
+ * Cancels any pending token renewal timer and releases the stream writer.
8234
+ * Call this when the secure channel is no longer needed.
8235
+ */
8236
+ close(): void;
8212
8237
  getSecurityPolicy(): string;
8213
8238
  getSecurityMode(): MessageSecurityModeEnum;
8214
8239
  getEndpointUrl(): string;
@@ -8226,8 +8251,8 @@ declare class SecureChannelFacade implements ISecureChannel {
8226
8251
  * Deframing transform for pipe use.
8227
8252
  *
8228
8253
  * Accepts raw OPC UA secure-conversation frame bytes, strips the message
8229
- * framing, and emits decoded {@link DecodedFrame} objects.
8230
- * Routing (pending request settlement vs. unsolicited) is the caller's
8254
+ * framing, and emits decoded {@link MsgBase} objects.
8255
+ * Routing (pending request settlement vs. unsolicited) is the callers
8231
8256
  * responsibility — use {@link SecureChannelFacade} for that.
8232
8257
  *
8233
8258
  * ```ts
@@ -8239,6 +8264,12 @@ declare class SecureChannelFacade implements ISecureChannel {
8239
8264
  declare class SecureChannelMessageDecoder extends TransformStream<Uint8Array, MsgBase$1> {
8240
8265
  private context;
8241
8266
  private logger;
8267
+ /**
8268
+ * Validates that `sequenceNumber` is strictly increasing from the last
8269
+ * seen remote sequence. Allows exactly one UInt32 wrap-around per token.
8270
+ * Returns false and logs an error if the number is a duplicate or out of order.
8271
+ */
8272
+ private validateSequenceNumber;
8242
8273
  private transform;
8243
8274
  constructor(context: SecureChannelContext);
8244
8275
  }
@@ -8259,13 +8290,12 @@ declare class SecureChannelMessageDecoder extends TransformStream<Uint8Array, Ms
8259
8290
  * .pipeTo(wsSendable);
8260
8291
  * ```
8261
8292
  */
8262
- declare class SecureChannelMesssageEncoder extends TransformStream<MsgBase$1, Uint8Array> {
8293
+ declare class SecureChannelMessageEncoder extends TransformStream<MsgBase$1, Uint8Array> {
8263
8294
  constructor(context: SecureChannelContext);
8264
8295
  }
8265
8296
 
8266
8297
  declare class SecureChannelChunkReader extends TransformStream<MsgBase$1, MsgBase$1> {
8267
8298
  private logger;
8268
- private prependChunk;
8269
8299
  private transform;
8270
8300
  constructor(context: SecureChannelContext);
8271
8301
  }
@@ -8277,4 +8307,4 @@ declare class SecureChannelChunkWriter extends TransformStream<MsgBase$1, MsgBas
8277
8307
  constructor(context: SecureChannelContext);
8278
8308
  }
8279
8309
 
8280
- export { ActionMethodDataType, ActionStateEnum, ActionTargetDataType, ActivateSessionRequest, ActivateSessionResponse, AddNodesItem, AddNodesRequest, AddNodesResponse, AddNodesResult, AddReferencesItem, AddReferencesRequest, AddReferencesResponse, AdditionalParametersType, AggregateConfiguration, AggregateFilter, AggregateFilterResult, AliasNameDataType, Annotation, AnnotationDataType, AnonymousIdentityToken, ApplicationConfigurationDataType, ApplicationDescription, ApplicationIdentityDataType, ApplicationTypeEnum, Argument, AttributeOperand, AuthorizationServiceConfigurationDataType, AxisInformation, AxisScaleEnumerationEnum, BaseConfigurationDataType, BaseConfigurationRecordDataType, SecureChannelTypeDecoder as BinaryDecoderTransform, SecureChannelTypeEncoder as BinaryEncoderTransform, BinaryReader, BinaryWriter, BitFieldDefinition, BrokerConnectionTransportDataType, BrokerDataSetReaderTransportDataType, BrokerDataSetWriterTransportDataType, BrokerTransportQualityOfServiceEnum, BrokerWriterGroupTransportDataType, BrowseDescription, BrowseDirectionEnum, BrowseNextRequest, BrowseNextResponse, BrowsePath, BrowsePathResult, BrowsePathTarget, BrowseRequest, BrowseResponse, BrowseResult, BrowseResultMaskEnum, BuildInfo, CallMethodRequest, CallMethodResult, CallRequest, CallResponse, CancelRequest, CancelResponse, CartesianCoordinates, CertificateGroupDataType, ChannelSecurityToken, ChassisIdSubtypeEnum, CloseSecureChannelRequest, CloseSecureChannelResponse, CloseSessionRequest, CloseSessionResponse, ComplexNumberType, Configuration, ConfigurationUpdateTargetType, ConfigurationUpdateTypeEnum, ConfigurationVersionDataType, ConnectionTransportDataType, ConsoleSink, ContentFilter, ContentFilterElement, ContentFilterElementResult, ContentFilterResult, ConversionLimitEnumEnum, CreateMonitoredItemsRequest, CreateMonitoredItemsResponse, CreateSessionRequest, CreateSessionResponse, CreateSubscriptionRequest, CreateSubscriptionResponse, CurrencyUnitType, DataChangeFilter, DataChangeNotification, DataChangeTriggerEnum, DataSetMetaDataType, DataSetOrderingTypeEnum, DataSetReaderDataType, DataSetReaderMessageDataType, DataSetReaderTransportDataType, DataSetWriterDataType, DataSetWriterMessageDataType, DataSetWriterTransportDataType, DataTypeAttributes, DataTypeDefinition, DataTypeDescription, DataTypeNode, DataTypeSchemaHeader, DataValue, DatagramConnectionTransport2DataType, DatagramConnectionTransportDataType, DatagramDataSetReaderTransportDataType, DatagramWriterGroupTransport2DataType, DatagramWriterGroupTransportDataType, DeadbandTypeEnum, DecimalDataType, Decoder, DeleteAtTimeDetails, DeleteEventDetails, DeleteMonitoredItemsRequest, DeleteMonitoredItemsResponse, DeleteNodesItem, DeleteNodesRequest, DeleteNodesResponse, DeleteRawModifiedDetails, DeleteReferencesItem, DeleteReferencesRequest, DeleteReferencesResponse, DeleteSubscriptionsRequest, DeleteSubscriptionsResponse, DiagnosticInfo, DiagnosticsLevelEnum, DiscoveryConfiguration, DoubleComplexNumberType, DtlsPubSubConnectionDataType, DuplexEnum, EUInformation, ElementOperand, Encoder, EndpointConfiguration, EndpointDataType, EndpointDescription, EndpointType, EndpointUrlListDataType, EnumDefinition, EnumDescription, EnumField, EnumValueType, EphemeralKeyType, EventFieldList, EventFilter, EventFilterResult, EventNotificationList, ExceptionDeviationFormatEnum, ExpandedNodeId, ExtensionObject, FieldMetaData, FieldTargetDataType, FilterOperand, FilterOperatorEnum, FindServersOnNetworkRequest, FindServersOnNetworkResponse, FindServersRequest, FindServersResponse, Frame, GenericAttributeValue, GenericAttributes, GetEndpointsRequest, GetEndpointsResponse, HistoryData, HistoryEvent, HistoryEventFieldList, HistoryModifiedData, HistoryModifiedEvent, HistoryReadDetails, HistoryReadRequest, HistoryReadResponse, HistoryReadResult, HistoryReadValueId, HistoryUpdateDetails, HistoryUpdateRequest, HistoryUpdateResponse, HistoryUpdateResult, HistoryUpdateTypeEnum, type ILogger, type ILoggerFactory, type IOpcType, type IReader, type ISecureChannel, type ISink, type IWriter, IdTypeEnum, IdentityCriteriaTypeEnum, IdentityMappingRuleType, InstanceNode, InterfaceAdminStatusEnum, InterfaceOperStatusEnum, IssuedIdentityToken, JsonActionMetaDataMessage, JsonActionNetworkMessage, JsonActionRequestMessage, JsonActionResponderMessage, JsonActionResponseMessage, JsonApplicationDescriptionMessage, JsonDataSetMessage, JsonDataSetMetaDataMessage, JsonDataSetReaderMessageDataType, JsonDataSetWriterMessageDataType, JsonNetworkMessage, JsonPubSubConnectionMessage, JsonServerEndpointsMessage, JsonStatusMessage, JsonWriterGroupMessageDataType, KeyValuePair, type LevelName, LinearConversionDataType, LiteralOperand, LldpManagementAddressTxPortType, LldpManagementAddressType, LldpTlvType, LocalizedText, type LogRecord, LogRecordsDataType, LoggerFactory, ManAddrIfSubtypeEnum, MdnsDiscoveryConfiguration, MessageSecurityModeEnum, MethodAttributes, MethodNode, ModelChangeStructureDataType, ModelChangeStructureVerbMaskEnum, ModificationInfo, ModifyMonitoredItemsRequest, ModifyMonitoredItemsResponse, ModifySubscriptionRequest, ModifySubscriptionResponse, MonitoredItemCreateRequest, MonitoredItemCreateResult, MonitoredItemModifyRequest, MonitoredItemModifyResult, MonitoredItemNotification, MonitoringFilter, MonitoringFilterResult, MonitoringModeEnum, MonitoringParameters, NameValuePair, NamingRuleTypeEnum, NegotiationStatusEnum, NetworkAddressDataType, NetworkAddressUrlDataType, NetworkGroupDataType, Node, NodeAttributes, NodeAttributesMaskEnum, NodeClassEnum, NodeId, NodeIdType, NodeReference, NodeTypeDescription, NotificationData, NotificationMessage, ObjectAttributes, ObjectNode, ObjectTypeAttributes, ObjectTypeNode, OpenFileModeEnum, OpenSecureChannelRequest, OpenSecureChannelResponse, OptionSet, Orientation, OverrideValueHandlingEnum, ParsingResult, PerformUpdateTypeEnum, PortIdSubtypeEnum, PortableNodeId, PortableQualifiedName, PriorityMappingEntryType, ProgramDiagnostic2DataType, ProgramDiagnosticDataType, PubSubConfiguration2DataType, PubSubConfigurationDataType, PubSubConfigurationRefDataType, PubSubConfigurationValueDataType, PubSubConnectionDataType, PubSubDiagnosticsCounterClassificationEnum, PubSubGroupDataType, PubSubKeyPushTargetDataType, PubSubStateEnum, PublishRequest, PublishResponse, PublishedActionDataType, PublishedActionMethodDataType, PublishedDataItemsDataType, PublishedDataSetCustomSourceDataType, PublishedDataSetDataType, PublishedDataSetSourceDataType, PublishedEventsDataType, PublishedVariableDataType, QosDataType, QualifiedName, QuantityDimension, QueryDataDescription, QueryDataSet, QueryFirstRequest, QueryFirstResponse, QueryNextRequest, QueryNextResponse, Range, RationalNumber, ReadAnnotationDataDetails, ReadAtTimeDetails, ReadEventDetails, ReadEventDetails2, ReadEventDetailsSorted, ReadProcessedDetails, ReadRawModifiedDetails, ReadRequest, ReadResponse, ReadValueId, ReaderGroupDataType, ReaderGroupMessageDataType, ReaderGroupTransportDataType, ReceiveQosDataType, ReceiveQosPriorityDataType, RedundancySupportEnum, RedundantServerDataType, RedundantServerModeEnum, ReferenceDescription, ReferenceDescriptionDataType, ReferenceListEntryDataType, ReferenceNode, ReferenceTypeAttributes, ReferenceTypeNode, RegisterNodesRequest, RegisterNodesResponse, RegisterServer2Request, RegisterServer2Response, RegisterServerRequest, RegisterServerResponse, RegisteredServer, RelativePath, RelativePathElement, RepublishRequest, RepublishResponse, RequestHeader, ResponseHeader, RolePermissionType, SamplingIntervalDiagnosticsDataType, SecureChannelChunkReader, SecureChannelChunkWriter, SecureChannelContext, SecureChannelFacade, SecureChannelMessageDecoder, SecureChannelMesssageEncoder, SecureChannelTypeDecoder, SecureChannelTypeEncoder, SecurityGroupDataType, SecuritySettingsDataType, SecurityTokenRequestTypeEnum, SemanticChangeStructureDataType, ServerDiagnosticsSummaryDataType, ServerEndpointDataType, ServerOnNetwork, ServerStateEnum, ServerStatusDataType, ServiceCertificateDataType, ServiceCounterDataType, ServiceFault, SessionDiagnosticsDataType, SessionSecurityDiagnosticsDataType, SessionlessInvokeRequestType, SessionlessInvokeResponseType, SetMonitoringModeRequest, SetMonitoringModeResponse, SetPublishingModeRequest, SetPublishingModeResponse, SetTriggeringRequest, SetTriggeringResponse, SignatureData, SignedSoftwareCertificate, SimpleAttributeOperand, SimpleTypeDescription, SortOrderTypeEnum, SortRuleElement, SpanContextDataType, StandaloneSubscribedDataSetDataType, StandaloneSubscribedDataSetRefDataType, StatusChangeNotification, StatusCode, type StatusCodeFlagBits, StatusCodeGetFlagBits, StatusCodeIs, StatusCodeToString, StatusCodeToStringNumber, StatusResult, Structure, StructureDefinition, StructureDescription, StructureField, StructureTypeEnum, SubscribedDataSetDataType, SubscribedDataSetMirrorDataType, SubscriptionAcknowledgement, SubscriptionDiagnosticsDataType, TargetVariablesDataType, TcpConnectionHandler, TcpMessageDecoupler, TcpMessageInjector, TimeZoneDataType, TimestampsToReturnEnum, TraceContextDataType, TransactionErrorType, TransferResult, TransferSubscriptionsRequest, TransferSubscriptionsResponse, TranslateBrowsePathsToNodeIdsRequest, TranslateBrowsePathsToNodeIdsResponse, TransmitQosDataType, TransmitQosPriorityDataType, TrustListDataType, TrustListMasksEnum, TsnFailureCodeEnum, TsnListenerStatusEnum, TsnStreamStateEnum, TsnTalkerStatusEnum, TypeNode, UABinaryFileDataType, type UaBoolean, type UaByte, type UaByteString, type UaDateTime, type UaDouble, type UaFloat, type UaGuid, type UaInt16, type UaInt32, type UaInt64, type UaPrimitive, type UaSbyte, type UaString, type UaUint16, type UaUint32, type UaUint64, UadpDataSetReaderMessageDataType, UadpDataSetWriterMessageDataType, UadpWriterGroupMessageDataType, Union, UnregisterNodesRequest, UnregisterNodesResponse, UnsignedRationalNumber, UpdateDataDetails, UpdateEventDetails, UpdateStructureDataDetails, UserIdentityToken, UserManagementDataType, UserNameIdentityToken, UserTokenPolicy, UserTokenSettingsDataType, UserTokenTypeEnum, VariableAttributes, VariableNode, VariableTypeAttributes, VariableTypeNode, Variant, type VariantArrayValue, type VariantValue, Vector, ViewAttributes, ViewDescription, ViewNode, WebSocketFascade, WebSocketReadableStream, WebSocketWritableStream, WriteRequest, WriteResponse, WriteValue, WriterGroupDataType, WriterGroupMessageDataType, WriterGroupTransportDataType, X509IdentityToken, XVType, XmlElement, _3DCartesianCoordinates, _3DFrame, _3DOrientation, _3DVector, getLogger, initLoggerProvider, registerBinaryDecoders, registerEncoders, registerJsonDecoders, registerTypeDecoders, registerXmlDecoders, uaByte, uaDouble, uaFloat, uaGuid, uaInt16, uaInt32, uaInt64, uaSbyte, uaUint16, uaUint32, uaUint64 };
8310
+ export { ActionMethodDataType, ActionStateEnum, ActionTargetDataType, ActivateSessionRequest, ActivateSessionResponse, AddNodesItem, AddNodesRequest, AddNodesResponse, AddNodesResult, AddReferencesItem, AddReferencesRequest, AddReferencesResponse, AdditionalParametersType, AggregateConfiguration, AggregateFilter, AggregateFilterResult, AliasNameDataType, Annotation, AnnotationDataType, AnonymousIdentityToken, ApplicationConfigurationDataType, ApplicationDescription, ApplicationIdentityDataType, ApplicationTypeEnum, Argument, AttributeOperand, AuthorizationServiceConfigurationDataType, AxisInformation, AxisScaleEnumerationEnum, BaseConfigurationDataType, BaseConfigurationRecordDataType, SecureChannelTypeDecoder as BinaryDecoderTransform, SecureChannelTypeEncoder as BinaryEncoderTransform, BinaryReader, BinaryWriter, BitFieldDefinition, BrokerConnectionTransportDataType, BrokerDataSetReaderTransportDataType, BrokerDataSetWriterTransportDataType, BrokerTransportQualityOfServiceEnum, BrokerWriterGroupTransportDataType, BrowseDescription, BrowseDirectionEnum, BrowseNextRequest, BrowseNextResponse, BrowsePath, BrowsePathResult, BrowsePathTarget, BrowseRequest, BrowseResponse, BrowseResult, BrowseResultMaskEnum, BuildInfo, CallMethodRequest, CallMethodResult, CallRequest, CallResponse, CancelRequest, CancelResponse, CartesianCoordinates, CertificateGroupDataType, ChannelSecurityToken, ChassisIdSubtypeEnum, CloseSecureChannelRequest, CloseSecureChannelResponse, CloseSessionRequest, CloseSessionResponse, ComplexNumberType, Configuration, ConfigurationUpdateTargetType, ConfigurationUpdateTypeEnum, ConfigurationVersionDataType, ConnectionTransportDataType, ConsoleSink, ContentFilter, ContentFilterElement, ContentFilterElementResult, ContentFilterResult, ConversionLimitEnumEnum, CreateMonitoredItemsRequest, CreateMonitoredItemsResponse, CreateSessionRequest, CreateSessionResponse, CreateSubscriptionRequest, CreateSubscriptionResponse, CurrencyUnitType, DataChangeFilter, DataChangeNotification, DataChangeTriggerEnum, DataSetMetaDataType, DataSetOrderingTypeEnum, DataSetReaderDataType, DataSetReaderMessageDataType, DataSetReaderTransportDataType, DataSetWriterDataType, DataSetWriterMessageDataType, DataSetWriterTransportDataType, DataTypeAttributes, DataTypeDefinition, DataTypeDescription, DataTypeNode, DataTypeSchemaHeader, DataValue, DatagramConnectionTransport2DataType, DatagramConnectionTransportDataType, DatagramDataSetReaderTransportDataType, DatagramWriterGroupTransport2DataType, DatagramWriterGroupTransportDataType, DeadbandTypeEnum, DecimalDataType, Decoder, DeleteAtTimeDetails, DeleteEventDetails, DeleteMonitoredItemsRequest, DeleteMonitoredItemsResponse, DeleteNodesItem, DeleteNodesRequest, DeleteNodesResponse, DeleteRawModifiedDetails, DeleteReferencesItem, DeleteReferencesRequest, DeleteReferencesResponse, DeleteSubscriptionsRequest, DeleteSubscriptionsResponse, DiagnosticInfo, DiagnosticsLevelEnum, DiscoveryConfiguration, DoubleComplexNumberType, DtlsPubSubConnectionDataType, DuplexEnum, EUInformation, ElementOperand, Encoder, EndpointConfiguration, EndpointDataType, EndpointDescription, EndpointType, EndpointUrlListDataType, EnumDefinition, EnumDescription, EnumField, EnumValueType, EphemeralKeyType, EventFieldList, EventFilter, EventFilterResult, EventNotificationList, ExceptionDeviationFormatEnum, ExpandedNodeId, ExtensionObject, FieldMetaData, FieldTargetDataType, FilterOperand, FilterOperatorEnum, FindServersOnNetworkRequest, FindServersOnNetworkResponse, FindServersRequest, FindServersResponse, Frame, GenericAttributeValue, GenericAttributes, GetEndpointsRequest, GetEndpointsResponse, HistoryData, HistoryEvent, HistoryEventFieldList, HistoryModifiedData, HistoryModifiedEvent, HistoryReadDetails, HistoryReadRequest, HistoryReadResponse, HistoryReadResult, HistoryReadValueId, HistoryUpdateDetails, HistoryUpdateRequest, HistoryUpdateResponse, HistoryUpdateResult, HistoryUpdateTypeEnum, type ILogger, type ILoggerFactory, type IOpcType, type IReader, type ISecureChannel, type ISink, type IWriter, IdTypeEnum, IdentityCriteriaTypeEnum, IdentityMappingRuleType, InstanceNode, InterfaceAdminStatusEnum, InterfaceOperStatusEnum, IssuedIdentityToken, JsonActionMetaDataMessage, JsonActionNetworkMessage, JsonActionRequestMessage, JsonActionResponderMessage, JsonActionResponseMessage, JsonApplicationDescriptionMessage, JsonDataSetMessage, JsonDataSetMetaDataMessage, JsonDataSetReaderMessageDataType, JsonDataSetWriterMessageDataType, JsonNetworkMessage, JsonPubSubConnectionMessage, JsonServerEndpointsMessage, JsonStatusMessage, JsonWriterGroupMessageDataType, KeyValuePair, type LevelName, LinearConversionDataType, LiteralOperand, LldpManagementAddressTxPortType, LldpManagementAddressType, LldpTlvType, LocalizedText, type LogRecord, LogRecordsDataType, LoggerFactory, ManAddrIfSubtypeEnum, MdnsDiscoveryConfiguration, MessageSecurityModeEnum, MethodAttributes, MethodNode, ModelChangeStructureDataType, ModelChangeStructureVerbMaskEnum, ModificationInfo, ModifyMonitoredItemsRequest, ModifyMonitoredItemsResponse, ModifySubscriptionRequest, ModifySubscriptionResponse, MonitoredItemCreateRequest, MonitoredItemCreateResult, MonitoredItemModifyRequest, MonitoredItemModifyResult, MonitoredItemNotification, MonitoringFilter, MonitoringFilterResult, MonitoringModeEnum, MonitoringParameters, NameValuePair, NamingRuleTypeEnum, NegotiationStatusEnum, NetworkAddressDataType, NetworkAddressUrlDataType, NetworkGroupDataType, Node, NodeAttributes, NodeAttributesMaskEnum, NodeClassEnum, NodeId, NodeIdType, NodeReference, NodeTypeDescription, NotificationData, NotificationMessage, ObjectAttributes, ObjectNode, ObjectTypeAttributes, ObjectTypeNode, OpenFileModeEnum, OpenSecureChannelRequest, OpenSecureChannelResponse, OptionSet, Orientation, OverrideValueHandlingEnum, ParsingResult, PerformUpdateTypeEnum, PortIdSubtypeEnum, PortableNodeId, PortableQualifiedName, PriorityMappingEntryType, ProgramDiagnostic2DataType, ProgramDiagnosticDataType, PubSubConfiguration2DataType, PubSubConfigurationDataType, PubSubConfigurationRefDataType, PubSubConfigurationValueDataType, PubSubConnectionDataType, PubSubDiagnosticsCounterClassificationEnum, PubSubGroupDataType, PubSubKeyPushTargetDataType, PubSubStateEnum, PublishRequest, PublishResponse, PublishedActionDataType, PublishedActionMethodDataType, PublishedDataItemsDataType, PublishedDataSetCustomSourceDataType, PublishedDataSetDataType, PublishedDataSetSourceDataType, PublishedEventsDataType, PublishedVariableDataType, QosDataType, QualifiedName, QuantityDimension, QueryDataDescription, QueryDataSet, QueryFirstRequest, QueryFirstResponse, QueryNextRequest, QueryNextResponse, Range, RationalNumber, ReadAnnotationDataDetails, ReadAtTimeDetails, ReadEventDetails, ReadEventDetails2, ReadEventDetailsSorted, ReadProcessedDetails, ReadRawModifiedDetails, ReadRequest, ReadResponse, ReadValueId, ReaderGroupDataType, ReaderGroupMessageDataType, ReaderGroupTransportDataType, ReceiveQosDataType, ReceiveQosPriorityDataType, RedundancySupportEnum, RedundantServerDataType, RedundantServerModeEnum, ReferenceDescription, ReferenceDescriptionDataType, ReferenceListEntryDataType, ReferenceNode, ReferenceTypeAttributes, ReferenceTypeNode, RegisterNodesRequest, RegisterNodesResponse, RegisterServer2Request, RegisterServer2Response, RegisterServerRequest, RegisterServerResponse, RegisteredServer, RelativePath, RelativePathElement, RepublishRequest, RepublishResponse, RequestHeader, ResponseHeader, RolePermissionType, SamplingIntervalDiagnosticsDataType, SecureChannelChunkReader, SecureChannelChunkWriter, SecureChannelContext, SecureChannelFacade, SecureChannelMessageDecoder, SecureChannelMessageEncoder, SecureChannelTypeDecoder, SecureChannelTypeEncoder, SecurityGroupDataType, SecuritySettingsDataType, SecurityTokenRequestTypeEnum, SemanticChangeStructureDataType, ServerDiagnosticsSummaryDataType, ServerEndpointDataType, ServerOnNetwork, ServerStateEnum, ServerStatusDataType, ServiceCertificateDataType, ServiceCounterDataType, ServiceFault, SessionDiagnosticsDataType, SessionSecurityDiagnosticsDataType, SessionlessInvokeRequestType, SessionlessInvokeResponseType, SetMonitoringModeRequest, SetMonitoringModeResponse, SetPublishingModeRequest, SetPublishingModeResponse, SetTriggeringRequest, SetTriggeringResponse, SignatureData, SignedSoftwareCertificate, SimpleAttributeOperand, SimpleTypeDescription, SortOrderTypeEnum, SortRuleElement, SpanContextDataType, StandaloneSubscribedDataSetDataType, StandaloneSubscribedDataSetRefDataType, StatusChangeNotification, StatusCode, type StatusCodeFlagBits, StatusCodeGetFlagBits, StatusCodeIs, StatusCodeToString, StatusCodeToStringNumber, StatusResult, Structure, StructureDefinition, StructureDescription, StructureField, StructureTypeEnum, SubscribedDataSetDataType, SubscribedDataSetMirrorDataType, SubscriptionAcknowledgement, SubscriptionDiagnosticsDataType, TargetVariablesDataType, TcpConnectionHandler, TcpMessageDecoupler, TcpMessageInjector, TimeZoneDataType, TimestampsToReturnEnum, TraceContextDataType, TransactionErrorType, TransferResult, TransferSubscriptionsRequest, TransferSubscriptionsResponse, TranslateBrowsePathsToNodeIdsRequest, TranslateBrowsePathsToNodeIdsResponse, TransmitQosDataType, TransmitQosPriorityDataType, TrustListDataType, TrustListMasksEnum, TsnFailureCodeEnum, TsnListenerStatusEnum, TsnStreamStateEnum, TsnTalkerStatusEnum, TypeNode, UABinaryFileDataType, type UaBoolean, type UaByte, type UaByteString, type UaDateTime, type UaDouble, type UaFloat, type UaGuid, type UaInt16, type UaInt32, type UaInt64, type UaPrimitive, type UaSbyte, type UaString, type UaUint16, type UaUint32, type UaUint64, UadpDataSetReaderMessageDataType, UadpDataSetWriterMessageDataType, UadpWriterGroupMessageDataType, Union, UnregisterNodesRequest, UnregisterNodesResponse, UnsignedRationalNumber, UpdateDataDetails, UpdateEventDetails, UpdateStructureDataDetails, UserIdentityToken, UserManagementDataType, UserNameIdentityToken, UserTokenPolicy, UserTokenSettingsDataType, UserTokenTypeEnum, VariableAttributes, VariableNode, VariableTypeAttributes, VariableTypeNode, Variant, type VariantArrayValue, type VariantValue, Vector, ViewAttributes, ViewDescription, ViewNode, WebSocketFascade, WebSocketReadableStream, WebSocketWritableStream, WriteRequest, WriteResponse, WriteValue, WriterGroupDataType, WriterGroupMessageDataType, WriterGroupTransportDataType, X509IdentityToken, XVType, XmlElement, _3DCartesianCoordinates, _3DFrame, _3DOrientation, _3DVector, getLogger, initLoggerProvider, registerBinaryDecoders, registerEncoders, registerJsonDecoders, registerTypeDecoders, registerXmlDecoders, uaByte, uaDouble, uaFloat, uaGuid, uaInt16, uaInt32, uaInt64, uaSbyte, uaUint16, uaUint32, uaUint64 };