@mikw99/node-emberplus-custom 1.0.5

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 (210) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +4 -0
  3. package/lib/ber.d.ts +42 -0
  4. package/lib/ber.js +237 -0
  5. package/lib/ber.js.map +1 -0
  6. package/lib/client/ember-client-logs.d.ts +4 -0
  7. package/lib/client/ember-client-logs.js +214 -0
  8. package/lib/client/ember-client-logs.js.map +1 -0
  9. package/lib/client/ember-client.d.ts +62 -0
  10. package/lib/client/ember-client.events.d.ts +8 -0
  11. package/lib/client/ember-client.events.js +12 -0
  12. package/lib/client/ember-client.events.js.map +1 -0
  13. package/lib/client/ember-client.js +678 -0
  14. package/lib/client/ember-client.js.map +1 -0
  15. package/lib/client/ember-client.request.d.ts +12 -0
  16. package/lib/client/ember-client.request.js +22 -0
  17. package/lib/client/ember-client.request.js.map +1 -0
  18. package/lib/common/command.d.ts +37 -0
  19. package/lib/common/command.js +95 -0
  20. package/lib/common/command.js.map +1 -0
  21. package/lib/common/common.d.ts +71 -0
  22. package/lib/common/common.js +310 -0
  23. package/lib/common/common.js.map +1 -0
  24. package/lib/common/constants.d.ts +10 -0
  25. package/lib/common/constants.js +13 -0
  26. package/lib/common/constants.js.map +1 -0
  27. package/lib/common/element.base.d.ts +13 -0
  28. package/lib/common/element.base.js +36 -0
  29. package/lib/common/element.base.js.map +1 -0
  30. package/lib/common/element.d.ts +6 -0
  31. package/lib/common/element.js +23 -0
  32. package/lib/common/element.js.map +1 -0
  33. package/lib/common/function/function-argument.d.ts +26 -0
  34. package/lib/common/function/function-argument.js +75 -0
  35. package/lib/common/function/function-argument.js.map +1 -0
  36. package/lib/common/function/function-contents.d.ts +30 -0
  37. package/lib/common/function/function-contents.js +138 -0
  38. package/lib/common/function/function-contents.js.map +1 -0
  39. package/lib/common/function/function.d.ts +31 -0
  40. package/lib/common/function/function.js +75 -0
  41. package/lib/common/function/function.js.map +1 -0
  42. package/lib/common/function/qualified-function.d.ts +19 -0
  43. package/lib/common/function/qualified-function.js +73 -0
  44. package/lib/common/function/qualified-function.js.map +1 -0
  45. package/lib/common/invocation-result.d.ts +23 -0
  46. package/lib/common/invocation-result.js +101 -0
  47. package/lib/common/invocation-result.js.map +1 -0
  48. package/lib/common/invocation.d.ts +20 -0
  49. package/lib/common/invocation.js +73 -0
  50. package/lib/common/invocation.js.map +1 -0
  51. package/lib/common/label.d.ts +14 -0
  52. package/lib/common/label.js +55 -0
  53. package/lib/common/label.js.map +1 -0
  54. package/lib/common/matrix/matrix-connection.d.ts +26 -0
  55. package/lib/common/matrix/matrix-connection.js +123 -0
  56. package/lib/common/matrix/matrix-connection.js.map +1 -0
  57. package/lib/common/matrix/matrix-contents.d.ts +38 -0
  58. package/lib/common/matrix/matrix-contents.js +173 -0
  59. package/lib/common/matrix/matrix-contents.js.map +1 -0
  60. package/lib/common/matrix/matrix-disposition.d.ts +9 -0
  61. package/lib/common/matrix/matrix-disposition.js +14 -0
  62. package/lib/common/matrix/matrix-disposition.js.map +1 -0
  63. package/lib/common/matrix/matrix-mode.d.ts +8 -0
  64. package/lib/common/matrix/matrix-mode.js +23 -0
  65. package/lib/common/matrix/matrix-mode.js.map +1 -0
  66. package/lib/common/matrix/matrix-node.d.ts +13 -0
  67. package/lib/common/matrix/matrix-node.js +90 -0
  68. package/lib/common/matrix/matrix-node.js.map +1 -0
  69. package/lib/common/matrix/matrix-operation.d.ts +8 -0
  70. package/lib/common/matrix/matrix-operation.js +13 -0
  71. package/lib/common/matrix/matrix-operation.js.map +1 -0
  72. package/lib/common/matrix/matrix-type.d.ts +9 -0
  73. package/lib/common/matrix/matrix-type.js +24 -0
  74. package/lib/common/matrix/matrix-type.js.map +1 -0
  75. package/lib/common/matrix/matrix.d.ts +91 -0
  76. package/lib/common/matrix/matrix.js +429 -0
  77. package/lib/common/matrix/matrix.js.map +1 -0
  78. package/lib/common/matrix/qualified-matrix.d.ts +17 -0
  79. package/lib/common/matrix/qualified-matrix.js +97 -0
  80. package/lib/common/matrix/qualified-matrix.js.map +1 -0
  81. package/lib/common/node-contents.d.ts +24 -0
  82. package/lib/common/node-contents.js +87 -0
  83. package/lib/common/node-contents.js.map +1 -0
  84. package/lib/common/node.d.ts +27 -0
  85. package/lib/common/node.js +67 -0
  86. package/lib/common/node.js.map +1 -0
  87. package/lib/common/parameter-access.d.ts +10 -0
  88. package/lib/common/parameter-access.js +25 -0
  89. package/lib/common/parameter-access.js.map +1 -0
  90. package/lib/common/parameter-contents.d.ts +55 -0
  91. package/lib/common/parameter-contents.js +167 -0
  92. package/lib/common/parameter-contents.js.map +1 -0
  93. package/lib/common/parameter-type.d.ts +15 -0
  94. package/lib/common/parameter-type.js +54 -0
  95. package/lib/common/parameter-type.js.map +1 -0
  96. package/lib/common/parameter.d.ts +76 -0
  97. package/lib/common/parameter.js +174 -0
  98. package/lib/common/parameter.js.map +1 -0
  99. package/lib/common/qualified-element.d.ts +10 -0
  100. package/lib/common/qualified-element.js +36 -0
  101. package/lib/common/qualified-element.js.map +1 -0
  102. package/lib/common/qualified-node.d.ts +16 -0
  103. package/lib/common/qualified-node.js +67 -0
  104. package/lib/common/qualified-node.js.map +1 -0
  105. package/lib/common/qualified-parameter.d.ts +52 -0
  106. package/lib/common/qualified-parameter.js +177 -0
  107. package/lib/common/qualified-parameter.js.map +1 -0
  108. package/lib/common/qualified-template.d.ts +17 -0
  109. package/lib/common/qualified-template.js +58 -0
  110. package/lib/common/qualified-template.js.map +1 -0
  111. package/lib/common/stream/stream-collection.d.ts +20 -0
  112. package/lib/common/stream/stream-collection.js +57 -0
  113. package/lib/common/stream/stream-collection.js.map +1 -0
  114. package/lib/common/stream/stream-description.d.ts +15 -0
  115. package/lib/common/stream/stream-description.js +45 -0
  116. package/lib/common/stream/stream-description.js.map +1 -0
  117. package/lib/common/stream/stream-entry.d.ts +15 -0
  118. package/lib/common/stream/stream-entry.js +49 -0
  119. package/lib/common/stream/stream-entry.js.map +1 -0
  120. package/lib/common/stream/stream-format.d.ts +23 -0
  121. package/lib/common/stream/stream-format.js +28 -0
  122. package/lib/common/stream/stream-format.js.map +1 -0
  123. package/lib/common/string-integer-collection.d.ts +12 -0
  124. package/lib/common/string-integer-collection.js +51 -0
  125. package/lib/common/string-integer-collection.js.map +1 -0
  126. package/lib/common/string-integer-pair.d.ts +18 -0
  127. package/lib/common/string-integer-pair.js +67 -0
  128. package/lib/common/string-integer-pair.js.map +1 -0
  129. package/lib/common/template-element.d.ts +12 -0
  130. package/lib/common/template-element.js +53 -0
  131. package/lib/common/template-element.js.map +1 -0
  132. package/lib/common/template.d.ts +16 -0
  133. package/lib/common/template.js +58 -0
  134. package/lib/common/template.js.map +1 -0
  135. package/lib/common/tree-node.d.ts +85 -0
  136. package/lib/common/tree-node.js +461 -0
  137. package/lib/common/tree-node.js.map +1 -0
  138. package/lib/error/errors.d.ts +57 -0
  139. package/lib/error/errors.js +150 -0
  140. package/lib/error/errors.js.map +1 -0
  141. package/lib/fixture/utils.d.ts +7 -0
  142. package/lib/fixture/utils.js +185 -0
  143. package/lib/fixture/utils.js.map +1 -0
  144. package/lib/index.d.ts +41 -0
  145. package/lib/index.js +15 -0
  146. package/lib/index.js.map +1 -0
  147. package/lib/logging/logging.service.d.ts +45 -0
  148. package/lib/logging/logging.service.js +110 -0
  149. package/lib/logging/logging.service.js.map +1 -0
  150. package/lib/server/client-request.d.ts +9 -0
  151. package/lib/server/client-request.js +10 -0
  152. package/lib/server/client-request.js.map +1 -0
  153. package/lib/server/element-handlers.d.ts +20 -0
  154. package/lib/server/element-handlers.js +105 -0
  155. package/lib/server/element-handlers.js.map +1 -0
  156. package/lib/server/ember-server.d.ts +84 -0
  157. package/lib/server/ember-server.events.d.ts +23 -0
  158. package/lib/server/ember-server.events.js +46 -0
  159. package/lib/server/ember-server.events.js.map +1 -0
  160. package/lib/server/ember-server.interface.d.ts +26 -0
  161. package/lib/server/ember-server.interface.js +3 -0
  162. package/lib/server/ember-server.interface.js.map +1 -0
  163. package/lib/server/ember-server.js +422 -0
  164. package/lib/server/ember-server.js.map +1 -0
  165. package/lib/server/ember-server.logs.d.ts +4 -0
  166. package/lib/server/ember-server.logs.js +274 -0
  167. package/lib/server/ember-server.logs.js.map +1 -0
  168. package/lib/server/json.parser.d.ts +13 -0
  169. package/lib/server/json.parser.js +209 -0
  170. package/lib/server/json.parser.js.map +1 -0
  171. package/lib/server/matrix.handlers.d.ts +10 -0
  172. package/lib/server/matrix.handlers.js +103 -0
  173. package/lib/server/matrix.handlers.js.map +1 -0
  174. package/lib/server/node.handlers.d.ts +12 -0
  175. package/lib/server/node.handlers.js +85 -0
  176. package/lib/server/node.handlers.js.map +1 -0
  177. package/lib/server/qualified.handlers.d.ts +15 -0
  178. package/lib/server/qualified.handlers.js +54 -0
  179. package/lib/server/qualified.handlers.js.map +1 -0
  180. package/lib/socket/s101.client.d.ts +17 -0
  181. package/lib/socket/s101.client.js +53 -0
  182. package/lib/socket/s101.client.js.map +1 -0
  183. package/lib/socket/s101.codec.d.ts +32 -0
  184. package/lib/socket/s101.codec.js +301 -0
  185. package/lib/socket/s101.codec.js.map +1 -0
  186. package/lib/socket/s101.packet-stats.socket.d.ts +31 -0
  187. package/lib/socket/s101.packet-stats.socket.js +74 -0
  188. package/lib/socket/s101.packet-stats.socket.js.map +1 -0
  189. package/lib/socket/s101.server.d.ts +28 -0
  190. package/lib/socket/s101.server.js +87 -0
  191. package/lib/socket/s101.server.js.map +1 -0
  192. package/lib/socket/s101.socket.d.ts +75 -0
  193. package/lib/socket/s101.socket.js +300 -0
  194. package/lib/socket/s101.socket.js.map +1 -0
  195. package/lib/socket/stats-collector.d.ts +19 -0
  196. package/lib/socket/stats-collector.js +63 -0
  197. package/lib/socket/stats-collector.js.map +1 -0
  198. package/lib/tools/debug.d.ts +2 -0
  199. package/lib/tools/debug.js +21 -0
  200. package/lib/tools/debug.js.map +1 -0
  201. package/lib/tools/jsontree.d.ts +1 -0
  202. package/lib/tools/jsontree.js +36 -0
  203. package/lib/tools/jsontree.js.map +1 -0
  204. package/lib/tools/monitoring-client.d.ts +2 -0
  205. package/lib/tools/monitoring-client.js +186 -0
  206. package/lib/tools/monitoring-client.js.map +1 -0
  207. package/lib/tools/serve.d.ts +1 -0
  208. package/lib/tools/serve.js +129 -0
  209. package/lib/tools/serve.js.map +1 -0
  210. package/package.json +105 -0
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const ber_1 = require("../ber");
4
+ const errors_1 = require("../error/errors");
5
+ class NodeContents {
6
+ constructor(identifier, description) {
7
+ this.identifier = identifier;
8
+ this.description = description;
9
+ this.isOnline = true;
10
+ }
11
+ static decode(ber) {
12
+ const nc = new NodeContents();
13
+ ber = ber.getSequence(ber_1.EMBER_SET);
14
+ while (ber.remain > 0) {
15
+ const tag = ber.peek();
16
+ const seq = ber.getSequence(tag);
17
+ if (tag === ber_1.CONTEXT(0)) {
18
+ nc.identifier = seq.readString(ber_1.EMBER_STRING);
19
+ }
20
+ else if (tag === ber_1.CONTEXT(1)) {
21
+ nc.description = seq.readString(ber_1.EMBER_STRING);
22
+ }
23
+ else if (tag === ber_1.CONTEXT(2)) {
24
+ nc.isRoot = seq.readBoolean();
25
+ }
26
+ else if (tag === ber_1.CONTEXT(3)) {
27
+ nc.isOnline = seq.readBoolean();
28
+ }
29
+ else if (tag === ber_1.CONTEXT(4)) {
30
+ nc.schemaIdentifiers = seq.readString(ber_1.EMBER_STRING);
31
+ }
32
+ else if (tag === ber_1.CONTEXT(5)) {
33
+ nc.templateReference = seq.readRelativeOID(ber_1.EMBER_RELATIVE_OID);
34
+ }
35
+ else {
36
+ throw new errors_1.UnimplementedEmberTypeError(tag);
37
+ }
38
+ }
39
+ return nc;
40
+ }
41
+ encode(ber) {
42
+ ber.startSequence(ber_1.EMBER_SET);
43
+ if (this.identifier != null) {
44
+ ber.startSequence(ber_1.CONTEXT(0));
45
+ ber.writeString(this.identifier, ber_1.EMBER_STRING);
46
+ ber.endSequence();
47
+ }
48
+ if (this.description != null) {
49
+ ber.startSequence(ber_1.CONTEXT(1));
50
+ ber.writeString(this.description, ber_1.EMBER_STRING);
51
+ ber.endSequence();
52
+ }
53
+ if (this.isRoot != null) {
54
+ ber.startSequence(ber_1.CONTEXT(2));
55
+ ber.writeBoolean(this.isRoot);
56
+ ber.endSequence();
57
+ }
58
+ if (this.isOnline != null) {
59
+ ber.startSequence(ber_1.CONTEXT(3));
60
+ ber.writeBoolean(this.isOnline);
61
+ ber.endSequence();
62
+ }
63
+ if (this.schemaIdentifiers != null) {
64
+ ber.startSequence(ber_1.CONTEXT(4));
65
+ ber.writeString(this.schemaIdentifiers, ber_1.EMBER_STRING);
66
+ ber.endSequence();
67
+ }
68
+ if (this.templateReference != null) {
69
+ ber.startSequence(ber_1.CONTEXT(5));
70
+ ber.writeRelativeOID(this.templateReference, ber_1.EMBER_RELATIVE_OID);
71
+ ber.endSequence();
72
+ }
73
+ ber.endSequence();
74
+ }
75
+ toJSON(res) {
76
+ const response = res || {};
77
+ response.identifier = this.identifier,
78
+ response.description = this.description,
79
+ response.isRoot = this.isRoot,
80
+ response.isOnline = this.isOnline,
81
+ response.schemaIdentifiers = this.schemaIdentifiers,
82
+ response.templateReference = this.templateReference;
83
+ return response;
84
+ }
85
+ }
86
+ exports.NodeContents = NodeContents;
87
+ //# sourceMappingURL=node-contents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-contents.js","sourceRoot":"","sources":["../../src/common/node-contents.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import { ExtendedReader as Reader } from '../ber';
2
+ import { Element } from './element';
3
+ import { NodeContents } from './node-contents';
4
+ import { QualifiedNode } from './qualified-node';
5
+ export interface JNode {
6
+ number: number;
7
+ path: string;
8
+ children: object[];
9
+ identifier?: string;
10
+ description?: string;
11
+ isRoot?: boolean;
12
+ isOnline?: boolean;
13
+ schemaIdentifiers?: string;
14
+ templateReference?: string;
15
+ }
16
+ export declare class Node extends Element {
17
+ static get BERID(): number;
18
+ get contents(): NodeContents;
19
+ get isOnline(): boolean | null;
20
+ set isOnline(isOnline: boolean);
21
+ get schemaIdentifiers(): string | null;
22
+ set schemaIdentifiers(schemaIdentifiers: string);
23
+ constructor(number: number, identifier?: string);
24
+ static decode(ber: Reader): Node;
25
+ isNode(): boolean;
26
+ toQualified(): QualifiedNode;
27
+ }
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const ber_1 = require("../ber");
4
+ const element_1 = require("./element");
5
+ const node_contents_1 = require("./node-contents");
6
+ const qualified_node_1 = require("./qualified-node");
7
+ const errors_1 = require("../error/errors");
8
+ class Node extends element_1.Element {
9
+ static get BERID() {
10
+ return ber_1.APPLICATION(3);
11
+ }
12
+ get contents() {
13
+ return this._contents;
14
+ }
15
+ get isOnline() {
16
+ var _a;
17
+ return (_a = this.contents) === null || _a === void 0 ? void 0 : _a.isOnline;
18
+ }
19
+ set isOnline(isOnline) {
20
+ this.setContent('isOnline', isOnline);
21
+ }
22
+ get schemaIdentifiers() {
23
+ var _a;
24
+ return (_a = this.contents) === null || _a === void 0 ? void 0 : _a.schemaIdentifiers;
25
+ }
26
+ set schemaIdentifiers(schemaIdentifiers) {
27
+ this.setContent('schemaIdentifiers', schemaIdentifiers);
28
+ }
29
+ constructor(number, identifier) {
30
+ super(number);
31
+ this._seqID = Node.BERID;
32
+ if (identifier != null) {
33
+ this.setContents(new node_contents_1.NodeContents(identifier));
34
+ }
35
+ }
36
+ static decode(ber) {
37
+ const n = new Node(0);
38
+ ber = ber.getSequence(Node.BERID);
39
+ while (ber.remain > 0) {
40
+ const tag = ber.peek();
41
+ const seq = ber.getSequence(tag);
42
+ if (tag === ber_1.CONTEXT(0)) {
43
+ n.setNumber(seq.readInt());
44
+ }
45
+ else if (tag === ber_1.CONTEXT(1)) {
46
+ n.setContents(node_contents_1.NodeContents.decode(seq));
47
+ }
48
+ else if (tag === ber_1.CONTEXT(2)) {
49
+ n.decodeChildren(seq);
50
+ }
51
+ else {
52
+ throw new errors_1.UnimplementedEmberTypeError(tag);
53
+ }
54
+ }
55
+ return n;
56
+ }
57
+ isNode() {
58
+ return true;
59
+ }
60
+ toQualified() {
61
+ const qn = new qualified_node_1.QualifiedNode(this.getPath());
62
+ qn.update(this);
63
+ return qn;
64
+ }
65
+ }
66
+ exports.Node = Node;
67
+ //# sourceMappingURL=node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/common/node.ts"],"names":[],"mappings":";;AAAA,gCAAwE;AACxE,uCAAoC;AACpC,mDAA+C;AAC/C,qDAAiD;AACjD,4CAA8D;AAc9D,MAAa,IAAK,SAAQ,iBAAO;IAE7B,MAAM,KAAK,KAAK;QACZ,OAAO,iBAAW,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAyB,CAAC;IAC1C,CAAC;IAED,IAAI,QAAQ;;QACR,aAAO,IAAI,CAAC,QAAQ,0CAAE,QAAQ,CAAC;IACnC,CAAC;IACD,IAAI,QAAQ,CAAC,QAAiB;QAC1B,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,iBAAiB;;QACjB,aAAO,IAAI,CAAC,QAAQ,0CAAE,iBAAiB,CAAC;IAC5C,CAAC;IAED,IAAI,iBAAiB,CAAC,iBAAyB;QAC3C,IAAI,CAAC,UAAU,CAAC,mBAAmB,EAAE,iBAAiB,CAAC,CAAC;IAC5D,CAAC;IAED,YAAY,MAAc,EAAE,UAAmB;QAC3C,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,UAAU,IAAI,IAAI,EAAE;YACpB,IAAI,CAAC,WAAW,CAAC,IAAI,4BAAY,CAAC,UAAU,CAAC,CAAC,CAAC;SAClD;IACL,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,GAAW;QACrB,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;QACtB,GAAG,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAElC,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE;YACnB,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YACjC,IAAI,GAAG,KAAK,aAAO,CAAC,CAAC,CAAC,EAAE;gBACpB,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;aAC9B;iBAAM,IAAI,GAAG,KAAK,aAAO,CAAC,CAAC,CAAC,EAAE;gBAC3B,CAAC,CAAC,WAAW,CAAC,4BAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;aAC3C;iBAAM,IAAI,GAAG,KAAK,aAAO,CAAC,CAAC,CAAC,EAAE;gBAC3B,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;aACzB;iBAAM;gBACH,MAAM,IAAI,oCAA2B,CAAC,GAAG,CAAC,CAAC;aAC9C;SACJ;QACD,OAAO,CAAC,CAAC;IACb,CAAC;IAED,MAAM;QACF,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,WAAW;QACP,MAAM,EAAE,GAAG,IAAI,8BAAa,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7C,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAChB,OAAO,EAAE,CAAC;IACd,CAAC;CACJ;AA9DD,oBA8DC"}
@@ -0,0 +1,10 @@
1
+ export declare enum ParameterAccess {
2
+ none = 0,
3
+ read = 1,
4
+ write = 2,
5
+ readWrite = 3
6
+ }
7
+ declare type ParameterAccessStrings = keyof typeof ParameterAccess;
8
+ export declare function parameterAccessFromString(s: ParameterAccessStrings): ParameterAccess;
9
+ export declare function parameterAccessToString(a: ParameterAccess): string;
10
+ export {};
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var ParameterAccess;
4
+ (function (ParameterAccess) {
5
+ ParameterAccess[ParameterAccess["none"] = 0] = "none";
6
+ ParameterAccess[ParameterAccess["read"] = 1] = "read";
7
+ ParameterAccess[ParameterAccess["write"] = 2] = "write";
8
+ ParameterAccess[ParameterAccess["readWrite"] = 3] = "readWrite";
9
+ })(ParameterAccess = exports.ParameterAccess || (exports.ParameterAccess = {}));
10
+ function parameterAccessFromString(s) {
11
+ if (typeof (s) !== 'string') {
12
+ throw new Error(`parameterAccessFromString: Invalid string ${s}`);
13
+ }
14
+ return ParameterAccess[s];
15
+ }
16
+ exports.parameterAccessFromString = parameterAccessFromString;
17
+ function parameterAccessToString(a) {
18
+ const num = Number(a);
19
+ if (isNaN(num) || num < ParameterAccess.none || num > ParameterAccess.readWrite) {
20
+ throw new Error(`parameterAccessToString: Invalid parameter type ${a}`);
21
+ }
22
+ return ParameterAccess[num];
23
+ }
24
+ exports.parameterAccessToString = parameterAccessToString;
25
+ //# sourceMappingURL=parameter-access.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parameter-access.js","sourceRoot":"","sources":["../../src/common/parameter-access.ts"],"names":[],"mappings":";;AACA,IAAY,eAKX;AALD,WAAY,eAAe;IACvB,qDAAQ,CAAA;IACR,qDAAI,CAAA;IACJ,uDAAK,CAAA;IACL,+DAAS,CAAA;AACb,CAAC,EALW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAK1B;AAGD,SAAgB,yBAAyB,CAAC,CAAyB;IAC/D,IAAI,OAAM,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;QACxB,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,EAAE,CAAC,CAAC;KACrE;IACD,OAAO,eAAe,CAAC,CAAC,CAAC,CAAC;AAC9B,CAAC;AALD,8DAKC;AAED,SAAgB,uBAAuB,CAAC,CAAkB;IACtD,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,eAAe,CAAC,IAAI,IAAI,GAAG,GAAG,eAAe,CAAC,SAAS,EAAE;QAC7E,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,EAAE,CAAC,CAAC;KAC3E;IACD,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC;AAChC,CAAC;AAND,0DAMC"}
@@ -0,0 +1,55 @@
1
+ /// <reference types="node" />
2
+ import { ParameterType } from './parameter-type';
3
+ import { ParameterAccess } from './parameter-access';
4
+ import { ExtendedReader as Reader, ExtendedWriter as Writer } from '../ber';
5
+ import { StringIntegerCollection } from './string-integer-collection';
6
+ import { StreamDescription } from './stream/stream-description';
7
+ export interface JParameterContents {
8
+ identifier: string;
9
+ description?: string;
10
+ value?: string | number | boolean | Buffer;
11
+ minimum?: string | number | boolean | Buffer;
12
+ maximum?: string | number | boolean | Buffer;
13
+ access?: string;
14
+ format?: string;
15
+ enumeration?: string;
16
+ factor?: number;
17
+ isOnline?: boolean;
18
+ formula?: string;
19
+ step?: number;
20
+ default?: string | number | boolean | Buffer;
21
+ type?: string;
22
+ streamIdentifier?: number;
23
+ enumMap?: object;
24
+ streamDescriptor?: object;
25
+ schemaIdentifiers?: string;
26
+ templateReference?: string;
27
+ }
28
+ export declare class ParameterContents {
29
+ type?: ParameterType;
30
+ value?: string | number | boolean | Buffer;
31
+ identifier?: string;
32
+ description?: string;
33
+ minimum?: string | number | boolean | Buffer;
34
+ maximum?: string | number | boolean | Buffer;
35
+ access?: ParameterAccess;
36
+ format?: string;
37
+ enumeration?: string;
38
+ factor?: number;
39
+ isOnline?: boolean;
40
+ formula?: string;
41
+ step?: number;
42
+ default?: string | number | boolean | Buffer;
43
+ streamIdentifier?: number;
44
+ enumMap?: StringIntegerCollection;
45
+ streamDescriptor?: StreamDescription;
46
+ schemaIdentifiers?: string;
47
+ templateReference?: string;
48
+ constructor(type?: ParameterType, value?: string | number | boolean | Buffer);
49
+ static createParameterContent(value: number | string | boolean | Buffer, type?: ParameterType): ParameterContents;
50
+ static decode(ber: Reader): ParameterContents;
51
+ encode(ber: Writer): void;
52
+ toJSON(res?: {
53
+ [index: string]: any;
54
+ }): JParameterContents;
55
+ }
@@ -0,0 +1,167 @@
1
+ 'use strict';
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const parameter_type_1 = require("./parameter-type");
4
+ const parameter_access_1 = require("./parameter-access");
5
+ const ber_1 = require("../ber");
6
+ const string_integer_collection_1 = require("./string-integer-collection");
7
+ const stream_description_1 = require("./stream/stream-description");
8
+ const errors_1 = require("../error/errors");
9
+ class ParameterContents {
10
+ constructor(type, value) {
11
+ this.type = type;
12
+ this.value = value;
13
+ if (type != null && isNaN(Number(type))) {
14
+ throw new errors_1.InvalidEmberNodeError(`Invalid parameter type ${type}`);
15
+ }
16
+ }
17
+ static createParameterContent(value, type) {
18
+ if (type != null) {
19
+ return new ParameterContents(type, value);
20
+ }
21
+ else if (typeof value === 'string') {
22
+ return new ParameterContents(parameter_type_1.ParameterType.string, value);
23
+ }
24
+ else if (typeof value === 'boolean') {
25
+ return new ParameterContents(parameter_type_1.ParameterType.boolean, value);
26
+ }
27
+ else if (typeof value === 'number') {
28
+ if (Math.round(value) === value) {
29
+ return new ParameterContents(parameter_type_1.ParameterType.integer, value);
30
+ }
31
+ else {
32
+ return new ParameterContents(parameter_type_1.ParameterType.real, value);
33
+ }
34
+ }
35
+ else if (value instanceof Buffer) {
36
+ return new ParameterContents(parameter_type_1.ParameterType.octets, value);
37
+ }
38
+ throw new errors_1.UnsupportedValueError(value);
39
+ }
40
+ static decode(ber) {
41
+ const pc = new ParameterContents();
42
+ ber = ber.getSequence(ber_1.EMBER_SET);
43
+ while (ber.remain > 0) {
44
+ const tag = ber.peek();
45
+ const seq = ber.getSequence(tag);
46
+ switch (tag) {
47
+ case ber_1.CONTEXT(0):
48
+ pc.identifier = seq.readString(ber_1.EMBER_STRING);
49
+ break;
50
+ case ber_1.CONTEXT(1):
51
+ pc.description = seq.readString(ber_1.EMBER_STRING);
52
+ break;
53
+ case ber_1.CONTEXT(2):
54
+ pc.value = seq.readValue();
55
+ break;
56
+ case ber_1.CONTEXT(3):
57
+ pc.minimum = seq.readValue();
58
+ break;
59
+ case ber_1.CONTEXT(4):
60
+ pc.maximum = seq.readValue();
61
+ break;
62
+ case ber_1.CONTEXT(5):
63
+ pc.access = seq.readInt();
64
+ break;
65
+ case ber_1.CONTEXT(6):
66
+ pc.format = seq.readString(ber_1.EMBER_STRING);
67
+ break;
68
+ case ber_1.CONTEXT(7):
69
+ pc.enumeration = seq.readString(ber_1.EMBER_STRING);
70
+ break;
71
+ case ber_1.CONTEXT(8):
72
+ pc.factor = seq.readInt();
73
+ break;
74
+ case ber_1.CONTEXT(9):
75
+ pc.isOnline = seq.readBoolean();
76
+ break;
77
+ case ber_1.CONTEXT(10):
78
+ pc.formula = seq.readString(ber_1.EMBER_STRING);
79
+ break;
80
+ case ber_1.CONTEXT(11):
81
+ pc.step = seq.readInt();
82
+ break;
83
+ case ber_1.CONTEXT(12):
84
+ pc.default = seq.readValue();
85
+ break;
86
+ case ber_1.CONTEXT(13):
87
+ pc.type = seq.readInt();
88
+ break;
89
+ case ber_1.CONTEXT(14):
90
+ pc.streamIdentifier = seq.readInt();
91
+ break;
92
+ case ber_1.CONTEXT(15):
93
+ pc.enumMap = string_integer_collection_1.StringIntegerCollection.decode(seq);
94
+ break;
95
+ case ber_1.CONTEXT(16):
96
+ pc.streamDescriptor = stream_description_1.StreamDescription.decode(seq);
97
+ break;
98
+ case ber_1.CONTEXT(17):
99
+ pc.schemaIdentifiers = seq.readString(ber_1.EMBER_STRING);
100
+ break;
101
+ case ber_1.CONTEXT(18):
102
+ pc.templateReference = seq.readRelativeOID(ber_1.EMBER_RELATIVE_OID);
103
+ break;
104
+ default:
105
+ throw new errors_1.UnimplementedEmberTypeError(tag);
106
+ }
107
+ }
108
+ return pc;
109
+ }
110
+ encode(ber) {
111
+ ber.startSequence(ber_1.EMBER_SET);
112
+ ber.writeIfDefined(this.identifier, ber.writeString, 0, ber_1.EMBER_STRING);
113
+ ber.writeIfDefined(this.description, ber.writeString, 1, ber_1.EMBER_STRING);
114
+ ber.writeIfDefined(this.value, ber.writeValue, 2, parameter_type_1.ParameterTypeToBERTAG(this.type));
115
+ ber.writeIfDefined(this.minimum, ber.writeValue, 3, parameter_type_1.ParameterTypeToBERTAG(this.type));
116
+ ber.writeIfDefined(this.maximum, ber.writeValue, 4, parameter_type_1.ParameterTypeToBERTAG(this.type));
117
+ ber.writeIfDefined(this.access, ber.writeInt, 5);
118
+ ber.writeIfDefined(this.format, ber.writeString, 6, ber_1.EMBER_STRING);
119
+ ber.writeIfDefined(this.enumeration, ber.writeString, 7, ber_1.EMBER_STRING);
120
+ ber.writeIfDefined(this.factor, ber.writeInt, 8);
121
+ ber.writeIfDefined(this.isOnline, ber.writeBoolean, 9);
122
+ ber.writeIfDefined(this.formula, ber.writeString, 10, ber_1.EMBER_STRING);
123
+ ber.writeIfDefined(this.step, ber.writeInt, 11);
124
+ ber.writeIfDefined(this.default, ber.writeValue, 12, parameter_type_1.ParameterTypeToBERTAG(this.type));
125
+ ber.writeIfDefined(this.type, ber.writeInt, 13);
126
+ ber.writeIfDefined(this.streamIdentifier, ber.writeInt, 14);
127
+ if (this.enumMap != null) {
128
+ ber.startSequence(ber_1.CONTEXT(15));
129
+ this.enumMap.encode(ber);
130
+ ber.endSequence();
131
+ }
132
+ if (this.streamDescriptor != null) {
133
+ ber.startSequence(ber_1.CONTEXT(16));
134
+ this.streamDescriptor.encode(ber);
135
+ ber.endSequence();
136
+ }
137
+ ber.writeIfDefined(this.schemaIdentifiers, ber.writeString, 17, ber_1.EMBER_STRING);
138
+ ber.writeIfDefined(this.templateReference, ber.writeRelativeOID, 18, ber_1.EMBER_RELATIVE_OID);
139
+ ber.endSequence();
140
+ }
141
+ toJSON(res) {
142
+ var _a, _b;
143
+ const response = (res || {});
144
+ response.identifier = this.identifier,
145
+ response.description = this.description,
146
+ response.value = this.value,
147
+ response.minimum = this.minimum,
148
+ response.maximum = this.maximum,
149
+ response.access = parameter_access_1.parameterAccessToString(this.access == null ? parameter_access_1.ParameterAccess.none : this.access),
150
+ response.format = this.format,
151
+ response.enumeration = this.enumeration,
152
+ response.factor = this.factor,
153
+ response.isOnline = this.isOnline,
154
+ response.formula = this.formula,
155
+ response.step = this.step,
156
+ response.default = this.default,
157
+ response.type = parameter_type_1.parameterTypeToString(this.type ? this.type : parameter_type_1.ParameterType.string),
158
+ response.streamIdentifier = this.streamIdentifier,
159
+ response.enumMap = (_a = this.enumMap) === null || _a === void 0 ? void 0 : _a.toJSON(),
160
+ response.streamDescriptor = (_b = this.streamDescriptor) === null || _b === void 0 ? void 0 : _b.toJSON(),
161
+ response.schemaIdentifiers = this.schemaIdentifiers,
162
+ response.templateReference = this.templateReference;
163
+ return response;
164
+ }
165
+ }
166
+ exports.ParameterContents = ParameterContents;
167
+ //# sourceMappingURL=parameter-contents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parameter-contents.js","sourceRoot":"","sources":["../../src/common/parameter-contents.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ export declare const ParameterTypeToBERTAG: (type: ParameterType) => number;
2
+ export declare const ParameterTypeFromBERTAG: (tag: number) => number;
3
+ declare type ParameterTypeStrings = keyof typeof ParameterType;
4
+ export declare function parameterTypeFromString(s: ParameterTypeStrings): ParameterType;
5
+ export declare function parameterTypeToString(t: ParameterType): string;
6
+ export declare enum ParameterType {
7
+ integer = 1,
8
+ real = 2,
9
+ string = 3,
10
+ boolean = 4,
11
+ trigger = 5,
12
+ enum = 6,
13
+ octets = 7
14
+ }
15
+ export {};
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const ber_1 = require("../ber");
4
+ const errors_1 = require("../error/errors");
5
+ exports.ParameterTypeToBERTAG = (type) => {
6
+ switch (type) {
7
+ case ParameterType.integer: return ber_1.EMBER_INTEGER;
8
+ case ParameterType.real: return ber_1.EMBER_REAL;
9
+ case ParameterType.string: return ber_1.EMBER_STRING;
10
+ case ParameterType.boolean: return ber_1.EMBER_BOOLEAN;
11
+ case ParameterType.octets: return ber_1.EMBER_OCTETSTRING;
12
+ case ParameterType.enum: return ber_1.EMBER_INTEGER;
13
+ default:
14
+ throw new errors_1.InvalidEmberNodeError('', `Unhandled ParameterType ${type}`);
15
+ }
16
+ };
17
+ exports.ParameterTypeFromBERTAG = (tag) => {
18
+ switch (tag) {
19
+ case ber_1.EMBER_INTEGER: return ParameterType.integer;
20
+ case ber_1.EMBER_REAL: return ParameterType.real;
21
+ case ber_1.EMBER_STRING: return ParameterType.string;
22
+ case ber_1.EMBER_BOOLEAN: return ParameterType.boolean;
23
+ case ber_1.EMBER_OCTETSTRING: return ParameterType.octets;
24
+ case ber_1.EMBER_ENUMERATED: return ParameterType.enum;
25
+ default:
26
+ throw new errors_1.InvalidBERFormatError(`Unhandled BER TAB ${tag}`);
27
+ }
28
+ };
29
+ function parameterTypeFromString(s) {
30
+ if (typeof (s) !== 'string') {
31
+ throw new Error(`parameterTypeFromString: Invalid string ${s}`);
32
+ }
33
+ return ParameterType[s];
34
+ }
35
+ exports.parameterTypeFromString = parameterTypeFromString;
36
+ function parameterTypeToString(t) {
37
+ const num = Number(t);
38
+ if (isNaN(num) || num < ParameterType.integer || num > ParameterType.octets) {
39
+ throw new Error(`parameterTypeToString: Invalid parameter type ${t}`);
40
+ }
41
+ return ParameterType[num];
42
+ }
43
+ exports.parameterTypeToString = parameterTypeToString;
44
+ var ParameterType;
45
+ (function (ParameterType) {
46
+ ParameterType[ParameterType["integer"] = 1] = "integer";
47
+ ParameterType[ParameterType["real"] = 2] = "real";
48
+ ParameterType[ParameterType["string"] = 3] = "string";
49
+ ParameterType[ParameterType["boolean"] = 4] = "boolean";
50
+ ParameterType[ParameterType["trigger"] = 5] = "trigger";
51
+ ParameterType[ParameterType["enum"] = 6] = "enum";
52
+ ParameterType[ParameterType["octets"] = 7] = "octets";
53
+ })(ParameterType = exports.ParameterType || (exports.ParameterType = {}));
54
+ //# sourceMappingURL=parameter-type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parameter-type.js","sourceRoot":"","sources":["../../src/common/parameter-type.ts"],"names":[],"mappings":";;AAAA,gCAGgB;AAChB,4CAA+E;AAElE,QAAA,qBAAqB,GAAG,CAAC,IAAmB,EAAU,EAAE;IACjE,QAAQ,IAAI,EAAE;QACV,KAAK,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,mBAAa,CAAC;QACjD,KAAK,aAAa,CAAC,IAAI,CAAC,CAAC,OAAO,gBAAU,CAAC;QAC3C,KAAK,aAAa,CAAC,MAAM,CAAC,CAAC,OAAO,kBAAY,CAAC;QAC/C,KAAK,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,mBAAa,CAAC;QACjD,KAAK,aAAa,CAAC,MAAM,CAAC,CAAC,OAAO,uBAAiB,CAAC;QACpD,KAAK,aAAa,CAAC,IAAI,CAAC,CAAC,OAAO,mBAAa,CAAC;QAC9C;YACI,MAAM,IAAI,8BAAqB,CAAC,EAAE,EAAE,2BAA2B,IAAI,EAAE,CAAC,CAAC;KAC9E;AACL,CAAC,CAAC;AAEW,QAAA,uBAAuB,GAAG,CAAC,GAAW,EAAU,EAAE;IAC3D,QAAQ,GAAG,EAAE;QACT,KAAK,mBAAa,CAAC,CAAC,OAAO,aAAa,CAAC,OAAO,CAAC;QACjD,KAAK,gBAAU,CAAC,CAAC,OAAO,aAAa,CAAC,IAAI,CAAC;QAC3C,KAAK,kBAAY,CAAC,CAAC,OAAO,aAAa,CAAC,MAAM,CAAC;QAC/C,KAAK,mBAAa,CAAC,CAAC,OAAO,aAAa,CAAC,OAAO,CAAC;QACjD,KAAK,uBAAiB,CAAC,CAAC,OAAO,aAAa,CAAC,MAAM,CAAC;QACpD,KAAK,sBAAgB,CAAC,CAAC,OAAO,aAAa,CAAC,IAAI,CAAC;QACjD;YACI,MAAM,IAAI,8BAAqB,CAAC,qBAAqB,GAAG,EAAE,CAAC,CAAC;KACnE;AACL,CAAC,CAAC;AAGF,SAAgB,uBAAuB,CAAC,CAAuB;IAC3D,IAAI,OAAM,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;QACxB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,EAAE,CAAC,CAAC;KACnE;IACD,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC;AAC5B,CAAC;AALD,0DAKC;AAED,SAAgB,qBAAqB,CAAC,CAAgB;IAClD,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,aAAa,CAAC,OAAO,IAAI,GAAG,GAAG,aAAa,CAAC,MAAM,EAAE;QACzE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,EAAE,CAAC,CAAC;KACzE;IACD,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC;AAND,sDAMC;AAcA,IAAY,aAQZ;AARA,WAAY,aAAa;IACtB,uDAAW,CAAA;IACX,iDAAI,CAAA;IACJ,qDAAM,CAAA;IACN,uDAAO,CAAA;IACP,uDAAO,CAAA;IACP,iDAAI,CAAA;IACJ,qDAAM,CAAA;AACV,CAAC,EARY,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAQzB"}
@@ -0,0 +1,76 @@
1
+ /// <reference types="node" />
2
+ import { ExtendedReader as Reader } from '../ber';
3
+ import { Element } from './element';
4
+ import { ParameterContents } from './parameter-contents';
5
+ import { TreeNode } from './tree-node';
6
+ import { QualifiedParameter } from './qualified-parameter';
7
+ import { ParameterType } from './parameter-type';
8
+ import { ParameterAccess } from './parameter-access';
9
+ import { StringIntegerCollection } from './string-integer-collection';
10
+ import { StreamDescription } from './stream/stream-description';
11
+ export interface JParameter {
12
+ number: number;
13
+ path: string;
14
+ children?: Object[];
15
+ identifier?: string;
16
+ description?: string;
17
+ value?: string | number | boolean | Buffer;
18
+ minimum?: string | number | boolean | Buffer;
19
+ maximum?: string | number | boolean | Buffer;
20
+ access?: string;
21
+ format?: string;
22
+ enumeration?: string;
23
+ factor?: number;
24
+ isOnline?: boolean;
25
+ formula?: string;
26
+ step?: number;
27
+ default?: string | number | boolean | Buffer;
28
+ type?: string;
29
+ streamIdentifier?: number;
30
+ enumMap?: object;
31
+ streamDescriptor?: object;
32
+ schemaIdentifiers?: string;
33
+ templateReference?: string;
34
+ }
35
+ export declare class Parameter extends Element {
36
+ static get BERID(): number;
37
+ get contents(): ParameterContents;
38
+ get minimum(): string | number | boolean | Buffer | null;
39
+ set minimum(minimum: string | number | boolean | Buffer);
40
+ get maximum(): string | number | boolean | Buffer | null;
41
+ set maximum(maximum: string | number | boolean | Buffer);
42
+ get access(): ParameterAccess | null;
43
+ set access(access: ParameterAccess);
44
+ get format(): string | null;
45
+ set format(format: string);
46
+ get enumeration(): string | null;
47
+ set enumeration(enumeration: string);
48
+ get factor(): number | null;
49
+ set factor(factor: number);
50
+ get isOnline(): boolean | null;
51
+ set isOnline(isOnline: boolean);
52
+ get formula(): string | null;
53
+ set formula(formula: string);
54
+ get step(): number | null;
55
+ set step(step: number);
56
+ get default(): string | number | boolean | Buffer | null;
57
+ set default(value: string | number | boolean | Buffer);
58
+ get value(): string | number | boolean | Buffer | null;
59
+ set value(value: string | number | boolean | Buffer);
60
+ get streamIdentifier(): number | null;
61
+ set streamIdentifier(streamIdentifier: number);
62
+ get enumMap(): StringIntegerCollection | null;
63
+ set enumMap(enumMap: StringIntegerCollection);
64
+ get streamDescriptor(): StreamDescription | null;
65
+ set streamDescriptor(streamDescriptor: StreamDescription);
66
+ get schemaIdentifiers(): string | null;
67
+ set schemaIdentifiers(schemaIdentifiers: string);
68
+ get type(): ParameterType | null;
69
+ set type(type: ParameterType);
70
+ constructor(number: number, type?: ParameterType, value?: number | string | Buffer | boolean);
71
+ static decode(ber: Reader): Parameter;
72
+ isParameter(): boolean;
73
+ isStream(): boolean;
74
+ setValue(value: ParameterContents | number | string | boolean | Buffer): TreeNode;
75
+ toQualified(): QualifiedParameter;
76
+ }