import { Subscription } from "rxjs/Subscription"; import { ProtocolClient, Content, Form, SecurityScheme } from "@node-wot/core"; import { NodeIdLike } from "node-opcua-nodeid"; export type Command = "Read" | "Write" | "Subscribe"; export interface NodeByBrowsePath { root: NodeIdLike; path: string; } export type NodeIdLike2 = NodeIdLike & { root: undefined; path: undefined; }; export interface FormPartialNodeDescription { "opcua:nodeId"?: NodeIdLike | NodeByBrowsePath; } export interface OPCUAForm extends Form, FormPartialNodeDescription { } export declare class OPCUAProtocolClient implements ProtocolClient { #private; private _connections; private _securityMode; private _securityPolicy; private _useAutoChannel; private _userIdentity; get connectionCount(): number; private _createConnection; private _withConnection; private _withSession; private _getNamespaceArray; private _withSubscription; private _resolveNodeId3; private _resolveNodeId2; static getNodeId(form: OPCUAForm): NodeIdLike | NodeByBrowsePath; private _resolveNodeId; private _predictDataType; private _resolveMethodNodeId; readResource(form: OPCUAForm): Promise; writeResource(form: OPCUAForm, content: Content): Promise; invokeResource(form: OPCUAForm, content: Content): Promise; subscribeResource(form: OPCUAForm, next: (content: Content) => void, error?: (error: Error) => void, complete?: () => void): Promise; private _unmonitor; unlinkResource(form: OPCUAForm): Promise; requestThingDescription(uri: string): Promise; start(): Promise; stop(): Promise; setSecurity(securitySchemes: SecurityScheme[], credentials?: unknown): boolean; private _monitoredItems; private _dataValueToContent; private _contentToDataValue; private _contentToVariant; private _findBasicDataType; private _resolveInputArguments; private _resolveOutputArguments; }