@astrox/agent 0.0.16 → 0.0.24

Sign up to get free protection for your applications and to get access to all the features.
Files changed (133) hide show
  1. package/package.json +4 -4
  2. package/lib/cjs/actor.d.ts +0 -126
  3. package/lib/cjs/actor.js +0 -207
  4. package/lib/cjs/actor.js.map +0 -1
  5. package/lib/cjs/agent/api.d.ts +0 -140
  6. package/lib/cjs/agent/api.js +0 -16
  7. package/lib/cjs/agent/api.js.map +0 -1
  8. package/lib/cjs/agent/http/index.d.ts +0 -49
  9. package/lib/cjs/agent/http/index.js +0 -355
  10. package/lib/cjs/agent/http/index.js.map +0 -1
  11. package/lib/cjs/agent/http/transforms.d.ts +0 -20
  12. package/lib/cjs/agent/http/transforms.js +0 -70
  13. package/lib/cjs/agent/http/transforms.js.map +0 -1
  14. package/lib/cjs/agent/http/types.d.ts +0 -77
  15. package/lib/cjs/agent/http/types.js +0 -24
  16. package/lib/cjs/agent/http/types.js.map +0 -1
  17. package/lib/cjs/agent/index.d.ts +0 -7
  18. package/lib/cjs/agent/index.js +0 -42
  19. package/lib/cjs/agent/index.js.map +0 -1
  20. package/lib/cjs/agent/proxy.d.ts +0 -85
  21. package/lib/cjs/agent/proxy.js +0 -159
  22. package/lib/cjs/agent/proxy.js.map +0 -1
  23. package/lib/cjs/auth.d.ts +0 -87
  24. package/lib/cjs/auth.js +0 -70
  25. package/lib/cjs/auth.js.map +0 -1
  26. package/lib/cjs/canisters/asset.d.ts +0 -10
  27. package/lib/cjs/canisters/asset.js +0 -18
  28. package/lib/cjs/canisters/asset.js.map +0 -1
  29. package/lib/cjs/canisters/asset_idl.d.ts +0 -7
  30. package/lib/cjs/canisters/asset_idl.js +0 -14
  31. package/lib/cjs/canisters/asset_idl.js.map +0 -1
  32. package/lib/cjs/canisters/management.d.ts +0 -33
  33. package/lib/cjs/canisters/management.js +0 -30
  34. package/lib/cjs/canisters/management.js.map +0 -1
  35. package/lib/cjs/canisters/management_idl.d.ts +0 -7
  36. package/lib/cjs/canisters/management_idl.js +0 -29
  37. package/lib/cjs/canisters/management_idl.js.map +0 -1
  38. package/lib/cjs/cbor.d.ts +0 -9
  39. package/lib/cjs/cbor.js +0 -138
  40. package/lib/cjs/cbor.js.map +0 -1
  41. package/lib/cjs/certificate.d.ts +0 -43
  42. package/lib/cjs/certificate.js +0 -227
  43. package/lib/cjs/certificate.js.map +0 -1
  44. package/lib/cjs/errors.d.ts +0 -8
  45. package/lib/cjs/errors.js +0 -13
  46. package/lib/cjs/errors.js.map +0 -1
  47. package/lib/cjs/index.d.ts +0 -52
  48. package/lib/cjs/index.js +0 -38
  49. package/lib/cjs/index.js.map +0 -1
  50. package/lib/cjs/polling/index.d.ts +0 -16
  51. package/lib/cjs/polling/index.js +0 -81
  52. package/lib/cjs/polling/index.js.map +0 -1
  53. package/lib/cjs/polling/strategy.d.ts +0 -47
  54. package/lib/cjs/polling/strategy.js +0 -106
  55. package/lib/cjs/polling/strategy.js.map +0 -1
  56. package/lib/cjs/request_id.d.ts +0 -15
  57. package/lib/cjs/request_id.js +0 -89
  58. package/lib/cjs/request_id.js.map +0 -1
  59. package/lib/cjs/utils/bls.d.ts +0 -9
  60. package/lib/cjs/utils/bls.js +0 -65
  61. package/lib/cjs/utils/bls.js.map +0 -1
  62. package/lib/cjs/utils/buffer.d.ts +0 -16
  63. package/lib/cjs/utils/buffer.js +0 -59
  64. package/lib/cjs/utils/buffer.js.map +0 -1
  65. package/lib/cjs/vendor/bls/bls.d.ts +0 -28
  66. package/lib/cjs/vendor/bls/bls.js +0 -894
  67. package/lib/cjs/vendor/bls/bls.js.map +0 -1
  68. package/lib/esm/actor.d.ts +0 -126
  69. package/lib/esm/actor.js +0 -200
  70. package/lib/esm/actor.js.map +0 -1
  71. package/lib/esm/agent/api.d.ts +0 -140
  72. package/lib/esm/agent/api.js +0 -13
  73. package/lib/esm/agent/api.js.map +0 -1
  74. package/lib/esm/agent/http/index.d.ts +0 -49
  75. package/lib/esm/agent/http/index.js +0 -328
  76. package/lib/esm/agent/http/index.js.map +0 -1
  77. package/lib/esm/agent/http/transforms.d.ts +0 -20
  78. package/lib/esm/agent/http/transforms.js +0 -45
  79. package/lib/esm/agent/http/transforms.js.map +0 -1
  80. package/lib/esm/agent/http/types.d.ts +0 -77
  81. package/lib/esm/agent/http/types.js +0 -20
  82. package/lib/esm/agent/http/types.js.map +0 -1
  83. package/lib/esm/agent/index.d.ts +0 -7
  84. package/lib/esm/agent/index.js +0 -27
  85. package/lib/esm/agent/index.js.map +0 -1
  86. package/lib/esm/agent/proxy.d.ts +0 -85
  87. package/lib/esm/agent/proxy.js +0 -154
  88. package/lib/esm/agent/proxy.js.map +0 -1
  89. package/lib/esm/auth.d.ts +0 -87
  90. package/lib/esm/auth.js +0 -64
  91. package/lib/esm/auth.js.map +0 -1
  92. package/lib/esm/canisters/asset.d.ts +0 -10
  93. package/lib/esm/canisters/asset.js +0 -11
  94. package/lib/esm/canisters/asset.js.map +0 -1
  95. package/lib/esm/canisters/asset_idl.d.ts +0 -7
  96. package/lib/esm/canisters/asset_idl.js +0 -12
  97. package/lib/esm/canisters/asset_idl.js.map +0 -1
  98. package/lib/esm/canisters/management.d.ts +0 -37
  99. package/lib/esm/canisters/management.js +0 -23
  100. package/lib/esm/canisters/management.js.map +0 -1
  101. package/lib/esm/canisters/management_idl.d.ts +0 -7
  102. package/lib/esm/canisters/management_idl.js +0 -27
  103. package/lib/esm/canisters/management_idl.js.map +0 -1
  104. package/lib/esm/cbor.d.ts +0 -9
  105. package/lib/esm/cbor.js +0 -111
  106. package/lib/esm/cbor.js.map +0 -1
  107. package/lib/esm/certificate.d.ts +0 -43
  108. package/lib/esm/certificate.js +0 -200
  109. package/lib/esm/certificate.js.map +0 -1
  110. package/lib/esm/errors.d.ts +0 -8
  111. package/lib/esm/errors.js +0 -9
  112. package/lib/esm/errors.js.map +0 -1
  113. package/lib/esm/index.d.ts +0 -52
  114. package/lib/esm/index.js +0 -14
  115. package/lib/esm/index.js.map +0 -1
  116. package/lib/esm/polling/index.d.ts +0 -16
  117. package/lib/esm/polling/index.js +0 -57
  118. package/lib/esm/polling/index.js.map +0 -1
  119. package/lib/esm/polling/strategy.d.ts +0 -47
  120. package/lib/esm/polling/strategy.js +0 -95
  121. package/lib/esm/polling/strategy.js.map +0 -1
  122. package/lib/esm/request_id.d.ts +0 -15
  123. package/lib/esm/request_id.js +0 -81
  124. package/lib/esm/request_id.js.map +0 -1
  125. package/lib/esm/utils/bls.d.ts +0 -9
  126. package/lib/esm/utils/bls.js +0 -43
  127. package/lib/esm/utils/bls.js.map +0 -1
  128. package/lib/esm/utils/buffer.d.ts +0 -16
  129. package/lib/esm/utils/buffer.js +0 -52
  130. package/lib/esm/utils/buffer.js.map +0 -1
  131. package/lib/esm/vendor/bls/bls.d.ts +0 -28
  132. package/lib/esm/vendor/bls/bls.js +0 -870
  133. package/lib/esm/vendor/bls/bls.js.map +0 -1
@@ -1,154 +0,0 @@
1
- import { Principal } from '@astrox/principal';
2
- export var ProxyMessageKind;
3
- (function (ProxyMessageKind) {
4
- ProxyMessageKind["Error"] = "err";
5
- ProxyMessageKind["GetPrincipal"] = "gp";
6
- ProxyMessageKind["GetPrincipalResponse"] = "gpr";
7
- ProxyMessageKind["Query"] = "q";
8
- ProxyMessageKind["QueryResponse"] = "qr";
9
- ProxyMessageKind["Call"] = "c";
10
- ProxyMessageKind["CallResponse"] = "cr";
11
- ProxyMessageKind["ReadState"] = "rs";
12
- ProxyMessageKind["ReadStateResponse"] = "rsr";
13
- ProxyMessageKind["Status"] = "s";
14
- ProxyMessageKind["StatusResponse"] = "sr";
15
- })(ProxyMessageKind || (ProxyMessageKind = {}));
16
- // A Stub Agent that forwards calls to another Agent implementation.
17
- export class ProxyStubAgent {
18
- constructor(_frontend, _agent) {
19
- this._frontend = _frontend;
20
- this._agent = _agent;
21
- }
22
- onmessage(msg) {
23
- switch (msg.type) {
24
- case ProxyMessageKind.GetPrincipal:
25
- this._agent.getPrincipal().then(response => {
26
- this._frontend({
27
- id: msg.id,
28
- type: ProxyMessageKind.GetPrincipalResponse,
29
- response: response.toText(),
30
- });
31
- });
32
- break;
33
- case ProxyMessageKind.Query:
34
- this._agent.query(...msg.args).then(response => {
35
- this._frontend({
36
- id: msg.id,
37
- type: ProxyMessageKind.QueryResponse,
38
- response,
39
- });
40
- });
41
- break;
42
- case ProxyMessageKind.Call:
43
- this._agent.call(...msg.args).then(response => {
44
- this._frontend({
45
- id: msg.id,
46
- type: ProxyMessageKind.CallResponse,
47
- response,
48
- });
49
- });
50
- break;
51
- case ProxyMessageKind.ReadState:
52
- this._agent.readState(...msg.args).then(response => {
53
- this._frontend({
54
- id: msg.id,
55
- type: ProxyMessageKind.ReadStateResponse,
56
- response,
57
- });
58
- });
59
- break;
60
- case ProxyMessageKind.Status:
61
- this._agent.status().then(response => {
62
- this._frontend({
63
- id: msg.id,
64
- type: ProxyMessageKind.StatusResponse,
65
- response,
66
- });
67
- });
68
- break;
69
- default:
70
- throw new Error(`Invalid message received: ${JSON.stringify(msg)}`);
71
- }
72
- }
73
- }
74
- // An Agent that forwards calls to a backend. The calls are serialized
75
- export class ProxyAgent {
76
- constructor(_backend) {
77
- this._backend = _backend;
78
- this._nextId = 0;
79
- this._pendingCalls = new Map();
80
- this.rootKey = null;
81
- }
82
- onmessage(msg) {
83
- const id = msg.id;
84
- const maybePromise = this._pendingCalls.get(id);
85
- if (!maybePromise) {
86
- throw new Error('A proxy get the same message twice...');
87
- }
88
- this._pendingCalls.delete(id);
89
- const [resolve, reject] = maybePromise;
90
- switch (msg.type) {
91
- case ProxyMessageKind.Error:
92
- return reject(msg.error);
93
- case ProxyMessageKind.GetPrincipalResponse:
94
- case ProxyMessageKind.CallResponse:
95
- case ProxyMessageKind.QueryResponse:
96
- case ProxyMessageKind.ReadStateResponse:
97
- case ProxyMessageKind.StatusResponse:
98
- return resolve(msg.response);
99
- default:
100
- throw new Error(`Invalid message being sent to ProxyAgent: ${JSON.stringify(msg)}`);
101
- }
102
- }
103
- async getPrincipal() {
104
- return this._sendAndWait({
105
- id: this._nextId++,
106
- type: ProxyMessageKind.GetPrincipal,
107
- }).then(principal => {
108
- if (typeof principal !== 'string') {
109
- throw new Error('Invalid principal received.');
110
- }
111
- return Principal.fromText(principal);
112
- });
113
- }
114
- readState(canisterId, fields) {
115
- return this._sendAndWait({
116
- id: this._nextId++,
117
- type: ProxyMessageKind.ReadState,
118
- args: [canisterId.toString(), fields],
119
- });
120
- }
121
- call(canisterId, fields) {
122
- return this._sendAndWait({
123
- id: this._nextId++,
124
- type: ProxyMessageKind.Call,
125
- args: [canisterId.toString(), fields],
126
- });
127
- }
128
- status() {
129
- return this._sendAndWait({
130
- id: this._nextId++,
131
- type: ProxyMessageKind.Status,
132
- });
133
- }
134
- query(canisterId, fields) {
135
- return this._sendAndWait({
136
- id: this._nextId++,
137
- type: ProxyMessageKind.Query,
138
- args: [canisterId.toString(), fields],
139
- });
140
- }
141
- async _sendAndWait(msg) {
142
- return new Promise((resolve, reject) => {
143
- this._pendingCalls.set(msg.id, [resolve, reject]);
144
- this._backend(msg);
145
- });
146
- }
147
- async fetchRootKey() {
148
- // Hex-encoded version of the replica root key
149
- const rootKey = (await this.status()).root_key;
150
- this.rootKey = rootKey;
151
- return rootKey;
152
- }
153
- }
154
- //# sourceMappingURL=proxy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../../src/agent/proxy.ts"],"names":[],"mappings":"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"}
package/lib/esm/auth.d.ts DELETED
@@ -1,87 +0,0 @@
1
- import { Principal } from '@astrox/principal';
2
- import { HttpAgentRequest } from './agent/http/types';
3
- /**
4
- * A Key Pair, containing a secret and public key.
5
- */
6
- export interface KeyPair {
7
- secretKey: ArrayBuffer;
8
- publicKey: PublicKey;
9
- }
10
- /**
11
- * A public key that is DER encoded. This is a branded ArrayBuffer.
12
- */
13
- export declare type DerEncodedPublicKey = ArrayBuffer & {
14
- __derEncodedPublicKey__: void;
15
- };
16
- /**
17
- * A signature array buffer.
18
- */
19
- export declare type Signature = ArrayBuffer & {
20
- __signature__: void;
21
- };
22
- /**
23
- * A Public Key implementation.
24
- */
25
- export interface PublicKey {
26
- toDer(): DerEncodedPublicKey;
27
- }
28
- /**
29
- * A General Identity object. This does not have to be a private key (for example,
30
- * the Anonymous identity), but it must be able to transform request.
31
- */
32
- export interface Identity {
33
- /**
34
- * Get the principal represented by this identity. Normally should be a
35
- * `Principal.selfAuthenticating()`.
36
- */
37
- getPrincipal(): Principal;
38
- /**
39
- * Transform a request into a signed version of the request. This is done last
40
- * after the transforms on the body of a request. The returned object can be
41
- * anything, but must be serializable to CBOR.
42
- */
43
- transformRequest(request: HttpAgentRequest): Promise<unknown>;
44
- }
45
- /**
46
- * An Identity that can sign blobs.
47
- */
48
- export declare abstract class SignIdentity implements Identity {
49
- protected _principal: Principal | undefined;
50
- /**
51
- * Returns the public key that would match this identity's signature.
52
- */
53
- abstract getPublicKey(): PublicKey;
54
- /**
55
- * Signs a blob of data, with this identity's private key.
56
- */
57
- abstract sign(blob: ArrayBuffer): Promise<Signature>;
58
- /**
59
- * Get the principal represented by this identity. Normally should be a
60
- * `Principal.selfAuthenticating()`.
61
- */
62
- getPrincipal(): Principal;
63
- /**
64
- * Transform a request into a signed version of the request. This is done last
65
- * after the transforms on the body of a request. The returned object can be
66
- * anything, but must be serializable to CBOR.
67
- * @param request - internet computer request to transform
68
- */
69
- transformRequest(request: HttpAgentRequest): Promise<unknown>;
70
- }
71
- export declare class AnonymousIdentity implements Identity {
72
- getPrincipal(): Principal;
73
- transformRequest(request: HttpAgentRequest): Promise<unknown>;
74
- }
75
- export interface AnonymousIdentityDescriptor {
76
- type: 'AnonymousIdentity';
77
- }
78
- export interface PublicKeyIdentityDescriptor {
79
- type: 'PublicKeyIdentity';
80
- publicKey: string;
81
- }
82
- export declare type IdentityDescriptor = AnonymousIdentityDescriptor | PublicKeyIdentityDescriptor;
83
- /**
84
- * Create an IdentityDescriptor from a @astrox/authentication Identity
85
- * @param identity - identity describe in returned descriptor
86
- */
87
- export declare function createIdentityDescriptor(identity: SignIdentity | AnonymousIdentity): IdentityDescriptor;
package/lib/esm/auth.js DELETED
@@ -1,64 +0,0 @@
1
- var __rest = (this && this.__rest) || function (s, e) {
2
- var t = {};
3
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
- t[p] = s[p];
5
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
- t[p[i]] = s[p[i]];
9
- }
10
- return t;
11
- };
12
- import { Principal } from '@astrox/principal';
13
- import { requestIdOf } from './request_id';
14
- import { concat, toHex } from './utils/buffer';
15
- const domainSeparator = new TextEncoder().encode('\x0Aic-request');
16
- /**
17
- * An Identity that can sign blobs.
18
- */
19
- export class SignIdentity {
20
- /**
21
- * Get the principal represented by this identity. Normally should be a
22
- * `Principal.selfAuthenticating()`.
23
- */
24
- getPrincipal() {
25
- if (!this._principal) {
26
- this._principal = Principal.selfAuthenticating(new Uint8Array(this.getPublicKey().toDer()));
27
- }
28
- return this._principal;
29
- }
30
- /**
31
- * Transform a request into a signed version of the request. This is done last
32
- * after the transforms on the body of a request. The returned object can be
33
- * anything, but must be serializable to CBOR.
34
- * @param request - internet computer request to transform
35
- */
36
- async transformRequest(request) {
37
- const { body } = request, fields = __rest(request, ["body"]);
38
- const requestId = await requestIdOf(body);
39
- return Object.assign(Object.assign({}, fields), { body: {
40
- content: body,
41
- sender_pubkey: this.getPublicKey().toDer(),
42
- sender_sig: await this.sign(concat(domainSeparator, requestId)),
43
- } });
44
- }
45
- }
46
- export class AnonymousIdentity {
47
- getPrincipal() {
48
- return Principal.anonymous();
49
- }
50
- async transformRequest(request) {
51
- return Object.assign(Object.assign({}, request), { body: { content: request.body } });
52
- }
53
- }
54
- /**
55
- * Create an IdentityDescriptor from a @astrox/authentication Identity
56
- * @param identity - identity describe in returned descriptor
57
- */
58
- export function createIdentityDescriptor(identity) {
59
- const identityIndicator = 'getPublicKey' in identity
60
- ? { type: 'PublicKeyIdentity', publicKey: toHex(identity.getPublicKey().toDer()) }
61
- : { type: 'AnonymousIdentity' };
62
- return identityIndicator;
63
- }
64
- //# sourceMappingURL=auth.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/auth.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAE/C,MAAM,eAAe,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;AA+CnE;;GAEG;AACH,MAAM,OAAgB,YAAY;IAahC;;;OAGG;IACI,YAAY;QACjB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,kBAAkB,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;SAC7F;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,gBAAgB,CAAC,OAAyB;QACrD,MAAM,EAAE,IAAI,KAAgB,OAAO,EAAlB,MAAM,UAAK,OAAO,EAA7B,QAAmB,CAAU,CAAC;QACpC,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;QAC1C,uCACK,MAAM,KACT,IAAI,EAAE;gBACJ,OAAO,EAAE,IAAI;gBACb,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE;gBAC1C,UAAU,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;aAChE,IACD;IACJ,CAAC;CACF;AAED,MAAM,OAAO,iBAAiB;IACrB,YAAY;QACjB,OAAO,SAAS,CAAC,SAAS,EAAE,CAAC;IAC/B,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAAC,OAAyB;QACrD,uCACK,OAAO,KACV,IAAI,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,IAC/B;IACJ,CAAC;CACF;AAuBD;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CACtC,QAA0C;IAE1C,MAAM,iBAAiB,GACrB,cAAc,IAAI,QAAQ;QACxB,CAAC,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE;QAClF,CAAC,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC;IACpC,OAAO,iBAAiB,CAAC;AAC3B,CAAC"}
@@ -1,10 +0,0 @@
1
- import { ActorConfig, ActorSubclass } from '../actor';
2
- export interface AssetCanisterRecord {
3
- store(path: string, content: number[]): Promise<void>;
4
- retrieve(path: string): Promise<number[]>;
5
- }
6
- /**
7
- * Create a management canister actor.
8
- * @param config
9
- */
10
- export declare function createAssetCanisterActor(config: ActorConfig): ActorSubclass<AssetCanisterRecord>;
@@ -1,11 +0,0 @@
1
- import { Actor } from '../actor';
2
- import assetCanister from './asset_idl';
3
- /* tslint:enable */
4
- /**
5
- * Create a management canister actor.
6
- * @param config
7
- */
8
- export function createAssetCanisterActor(config) {
9
- return Actor.createActor(assetCanister, config);
10
- }
11
- //# sourceMappingURL=asset.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"asset.js","sourceRoot":"","sources":["../../../src/canisters/asset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAA0C,MAAM,UAAU,CAAC;AACzE,OAAO,aAAa,MAAM,aAAa,CAAC;AAOxC,mBAAmB;AAEnB;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAAmB;IAC1D,OAAO,KAAK,CAAC,WAAW,CAAsB,aAAa,EAAE,MAAM,CAAC,CAAC;AACvE,CAAC"}
@@ -1,7 +0,0 @@
1
- declare const _default: ({ IDL }: {
2
- IDL: any;
3
- }) => any;
4
- /**
5
- * This file is generated from the candid for asset management.
6
- */
7
- export default _default;
@@ -1,12 +0,0 @@
1
- /**
2
- * This file is generated from the candid for asset management.
3
- */
4
- /* tslint:disable */
5
- // @ts-ignore
6
- export default ({ IDL }) => {
7
- return IDL.Service({
8
- retrieve: IDL.Func([IDL.Text], [IDL.Vec(IDL.Nat8)], ['query']),
9
- store: IDL.Func([IDL.Text, IDL.Vec(IDL.Nat8)], [], []),
10
- });
11
- };
12
- //# sourceMappingURL=asset_idl.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"asset_idl.js","sourceRoot":"","sources":["../../../src/canisters/asset_idl.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,oBAAoB;AACpB,aAAa;AACb,eAAe,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;IACzB,OAAO,GAAG,CAAC,OAAO,CAAC;QACjB,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;QAC9D,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;KACvD,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -1,37 +0,0 @@
1
- import { ActorMethod, ActorSubclass, CallConfig } from '../actor';
2
- import { Principal } from '@astrox/principal';
3
- export interface CanisterSettings {
4
- controller: [] | [Principal];
5
- compute_allocation: [] | [bigint];
6
- memory_allocation: [] | [bigint];
7
- freezing_threshold: [] | [bigint];
8
- }
9
- export interface ManagementCanisterRecord {
10
- provisional_create_canister_with_cycles: ActorMethod<[
11
- {
12
- amount: [] | [number];
13
- settings: [] | [CanisterSettings];
14
- }
15
- ], {
16
- canister_id: Principal;
17
- }>;
18
- install_code: ActorMethod<[
19
- {
20
- mode: {
21
- install: null;
22
- } | {
23
- reinstall: null;
24
- } | {
25
- upgrade: null;
26
- };
27
- canister_id: Principal;
28
- wasm_module: number[];
29
- arg: number[];
30
- }
31
- ], void>;
32
- }
33
- /**
34
- * Create a management canister actor.
35
- * @param config
36
- */
37
- export declare function getManagementCanister(config: CallConfig): ActorSubclass<ManagementCanisterRecord>;
@@ -1,23 +0,0 @@
1
- import { Actor } from '../actor';
2
- import { Principal } from '@astrox/principal';
3
- import managementCanisterIdl from './management_idl';
4
- /* tslint:enable */
5
- /**
6
- * Create a management canister actor.
7
- * @param config
8
- */
9
- export function getManagementCanister(config) {
10
- function transform(methodName, args, callConfig) {
11
- const first = args[0];
12
- let effectiveCanisterId = Principal.fromHex('');
13
- if (first && typeof first === 'object' && first.canister_id) {
14
- effectiveCanisterId = Principal.from(first.canister_id);
15
- }
16
- return { effectiveCanisterId };
17
- }
18
- return Actor.createActor(managementCanisterIdl, Object.assign(Object.assign(Object.assign({}, config), { canisterId: Principal.fromHex('') }), {
19
- callTransform: transform,
20
- queryTransform: transform,
21
- }));
22
- }
23
- //# sourceMappingURL=management.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"management.js","sourceRoot":"","sources":["../../../src/canisters/management.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAA0C,MAAM,UAAU,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,qBAAqB,MAAM,kBAAkB,CAAC;AAgCrD,mBAAmB;AAEnB;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAkB;IACtD,SAAS,SAAS,CAAC,UAAkB,EAAE,IAAe,EAAE,UAAsB;QAC5E,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAQ,CAAC;QAC7B,IAAI,mBAAmB,GAAG,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAChD,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,WAAW,EAAE;YAC3D,mBAAmB,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,WAAsB,CAAC,CAAC;SACpE;QACD,OAAO,EAAE,mBAAmB,EAAE,CAAC;IACjC,CAAC;IAED,OAAO,KAAK,CAAC,WAAW,CAA2B,qBAAqB,gDACnE,MAAM,KACT,UAAU,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,KAC9B;QACD,aAAa,EAAE,SAAS;QACxB,cAAc,EAAE,SAAS;KAC1B,EACD,CAAC;AACL,CAAC"}
@@ -1,7 +0,0 @@
1
- declare const _default: ({ IDL }: {
2
- IDL: any;
3
- }) => any;
4
- /**
5
- * This file is generated from the candid for asset management.
6
- */
7
- export default _default;
@@ -1,27 +0,0 @@
1
- /**
2
- * This file is generated from the candid for asset management.
3
- */
4
- /* tslint:disable */
5
- // @ts-ignore
6
- export default ({ IDL }) => {
7
- const canister_id = IDL.Principal;
8
- const wasm_module = IDL.Vec(IDL.Nat8);
9
- const CanisterSettings = IDL.Record({
10
- compute_allocation: IDL.Opt(IDL.Nat),
11
- memory_allocation: IDL.Opt(IDL.Nat),
12
- });
13
- return IDL.Service({
14
- provisional_create_canister_with_cycles: IDL.Func([IDL.Record({ amount: IDL.Opt(IDL.Nat), settings: IDL.Opt(CanisterSettings) })], [IDL.Record({ canister_id: canister_id })], []),
15
- create_canister: IDL.Func([], [IDL.Record({ canister_id: canister_id })], []),
16
- install_code: IDL.Func([
17
- IDL.Record({
18
- mode: IDL.Variant({ install: IDL.Null, reinstall: IDL.Null, upgrade: IDL.Null }),
19
- canister_id: canister_id,
20
- wasm_module: wasm_module,
21
- arg: IDL.Vec(IDL.Nat8),
22
- }),
23
- ], [], []),
24
- set_controller: IDL.Func([IDL.Record({ canister_id: canister_id, new_controller: IDL.Principal })], [], []),
25
- });
26
- };
27
- //# sourceMappingURL=management_idl.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"management_idl.js","sourceRoot":"","sources":["../../../src/canisters/management_idl.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,oBAAoB;AACpB,aAAa;AACb,eAAe,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;IACzB,MAAM,WAAW,GAAG,GAAG,CAAC,SAAS,CAAC;IAClC,MAAM,WAAW,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,gBAAgB,GAAG,GAAG,CAAC,MAAM,CAAC;QAClC,kBAAkB,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;QACpC,iBAAiB,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;KACpC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC,OAAO,CAAC;QACjB,uCAAuC,EAAE,GAAG,CAAC,IAAI,CAC/C,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,EAC/E,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC,EAC1C,EAAE,CACH;QACD,eAAe,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;QAC7E,YAAY,EAAE,GAAG,CAAC,IAAI,CACpB;YACE,GAAG,CAAC,MAAM,CAAC;gBACT,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;gBAChF,WAAW,EAAE,WAAW;gBACxB,WAAW,EAAE,WAAW;gBACxB,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;aACvB,CAAC;SACH,EACD,EAAE,EACF,EAAE,CACH;QACD,cAAc,EAAE,GAAG,CAAC,IAAI,CACtB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,EACzE,EAAE,EACF,EAAE,CACH;KACF,CAAC,CAAC;AACL,CAAC,CAAC"}
package/lib/esm/cbor.d.ts DELETED
@@ -1,9 +0,0 @@
1
- export declare enum CborTag {
2
- Uint64LittleEndian = 71,
3
- Semantic = 55799
4
- }
5
- /**
6
- * Encode a JavaScript value into CBOR.
7
- */
8
- export declare function encode(value: any): ArrayBuffer;
9
- export declare function decode<T>(input: ArrayBuffer): T;
package/lib/esm/cbor.js DELETED
@@ -1,111 +0,0 @@
1
- // tslint:disable:max-classes-per-file
2
- // This file is based on:
3
- // tslint:disable-next-line: max-line-length
4
- // https://github.com/dfinity-lab/dfinity/blob/9bca65f8edd65701ea6bdb00e0752f9186bbc893/docs/spec/public/index.adoc#cbor-encoding-of-requests-and-responses
5
- import borc from 'borc';
6
- import * as cbor from 'simple-cbor';
7
- import { SelfDescribeCborSerializer } from 'simple-cbor';
8
- import { concat, fromHex } from './utils/buffer';
9
- // We are using hansl/simple-cbor for CBOR serialization, to avoid issues with
10
- // encoding the uint64 values that the HTTP handler of the client expects for
11
- // canister IDs. However, simple-cbor does not yet provide deserialization so
12
- // we are using `Uint8Array` so that we can use the dignifiedquire/borc CBOR
13
- // decoder.
14
- class PrincipalEncoder {
15
- get name() {
16
- return 'Principal';
17
- }
18
- get priority() {
19
- return 0;
20
- }
21
- match(value) {
22
- return value && value._isPrincipal === true;
23
- }
24
- encode(v) {
25
- return cbor.value.bytes(v.toUint8Array());
26
- }
27
- }
28
- class BufferEncoder {
29
- get name() {
30
- return 'Buffer';
31
- }
32
- get priority() {
33
- return 1;
34
- }
35
- match(value) {
36
- return value instanceof ArrayBuffer || ArrayBuffer.isView(value);
37
- }
38
- encode(v) {
39
- return cbor.value.bytes(new Uint8Array(v));
40
- }
41
- }
42
- class BigIntEncoder {
43
- get name() {
44
- return 'BigInt';
45
- }
46
- get priority() {
47
- return 1;
48
- }
49
- match(value) {
50
- return typeof value === `bigint`;
51
- }
52
- encode(v) {
53
- // Always use a bigint encoding.
54
- if (v > BigInt(0)) {
55
- return cbor.value.tagged(2, cbor.value.bytes(fromHex(v.toString(16))));
56
- }
57
- else {
58
- return cbor.value.tagged(3, cbor.value.bytes(fromHex((BigInt('-1') * v).toString(16))));
59
- }
60
- }
61
- }
62
- const serializer = SelfDescribeCborSerializer.withDefaultEncoders(true);
63
- serializer.addEncoder(new PrincipalEncoder());
64
- serializer.addEncoder(new BufferEncoder());
65
- serializer.addEncoder(new BigIntEncoder());
66
- export var CborTag;
67
- (function (CborTag) {
68
- CborTag[CborTag["Uint64LittleEndian"] = 71] = "Uint64LittleEndian";
69
- CborTag[CborTag["Semantic"] = 55799] = "Semantic";
70
- })(CborTag || (CborTag = {}));
71
- /**
72
- * Encode a JavaScript value into CBOR.
73
- */
74
- export function encode(value) {
75
- return serializer.serialize(value);
76
- }
77
- function decodePositiveBigInt(buf) {
78
- const len = buf.byteLength;
79
- let res = BigInt(0);
80
- for (let i = 0; i < len; i++) {
81
- // tslint:disable-next-line:no-bitwise
82
- res = res * BigInt(0x100) + BigInt(buf[i]);
83
- }
84
- return res;
85
- }
86
- // A BORC subclass that decodes byte strings to ArrayBuffer instead of the Buffer class.
87
- class Uint8ArrayDecoder extends borc.Decoder {
88
- createByteString(raw) {
89
- return concat(...raw);
90
- }
91
- createByteStringFromHeap(start, end) {
92
- if (start === end) {
93
- return new ArrayBuffer(0);
94
- }
95
- return new Uint8Array(this._heap.slice(start, end));
96
- }
97
- }
98
- export function decode(input) {
99
- const buffer = new Uint8Array(input);
100
- const decoder = new Uint8ArrayDecoder({
101
- size: buffer.byteLength,
102
- tags: {
103
- // Override tags 2 and 3 for BigInt support (borc supports only BigNumber).
104
- 2: val => decodePositiveBigInt(val),
105
- 3: val => -decodePositiveBigInt(val),
106
- [CborTag.Semantic]: (value) => value,
107
- },
108
- });
109
- return decoder.decodeFirst(buffer);
110
- }
111
- //# sourceMappingURL=cbor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cbor.js","sourceRoot":"","sources":["../../src/cbor.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,yBAAyB;AACzB,4CAA4C;AAC5C,2JAA2J;AAC3J,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,IAAI,MAAM,aAAa,CAAC;AACpC,OAAO,EAAe,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAEtE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEjD,8EAA8E;AAC9E,6EAA6E;AAC7E,6EAA6E;AAC7E,4EAA4E;AAC5E,WAAW;AAEX,MAAM,gBAAgB;IACpB,IAAW,IAAI;QACb,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,CAAC,CAAC;IACX,CAAC;IAEM,KAAK,CAAC,KAAU;QACrB,OAAO,KAAK,IAAI,KAAK,CAAC,YAAY,KAAK,IAAI,CAAC;IAC9C,CAAC;IAEM,MAAM,CAAC,CAAY;QACxB,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC;IAC5C,CAAC;CACF;AAED,MAAM,aAAa;IACjB,IAAW,IAAI;QACb,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,CAAC,CAAC;IACX,CAAC;IAEM,KAAK,CAAC,KAAU;QACrB,OAAO,KAAK,YAAY,WAAW,IAAI,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnE,CAAC;IAEM,MAAM,CAAC,CAAc;QAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;CACF;AAED,MAAM,aAAa;IACjB,IAAW,IAAI;QACb,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,CAAC,CAAC;IACX,CAAC;IAEM,KAAK,CAAC,KAAU;QACrB,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC;IACnC,CAAC;IAEM,MAAM,CAAC,CAAS;QACrB,gCAAgC;QAChC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE;YACjB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;SACxE;aAAM;YACL,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;SACzF;IACH,CAAC;CACF;AAED,MAAM,UAAU,GAAG,0BAA0B,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;AACxE,UAAU,CAAC,UAAU,CAAC,IAAI,gBAAgB,EAAE,CAAC,CAAC;AAC9C,UAAU,CAAC,UAAU,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC;AAC3C,UAAU,CAAC,UAAU,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC;AAE3C,MAAM,CAAN,IAAY,OAGX;AAHD,WAAY,OAAO;IACjB,kEAAuB,CAAA;IACvB,iDAAgB,CAAA;AAClB,CAAC,EAHW,OAAO,KAAP,OAAO,QAGlB;AAED;;GAEG;AACH,MAAM,UAAU,MAAM,CAAC,KAAU;IAC/B,OAAO,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,oBAAoB,CAAC,GAAe;IAC3C,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,CAAC;IAC3B,IAAI,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;QAC5B,sCAAsC;QACtC,GAAG,GAAG,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;KAC5C;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,wFAAwF;AACxF,MAAM,iBAAkB,SAAQ,IAAI,CAAC,OAAO;IACnC,gBAAgB,CAAC,GAAkB;QACxC,OAAO,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC;IACxB,CAAC;IAEM,wBAAwB,CAAC,KAAa,EAAE,GAAW;QACxD,IAAI,KAAK,KAAK,GAAG,EAAE;YACjB,OAAO,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC;SAC3B;QAED,OAAO,IAAI,UAAU,CAAE,IAAY,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;IAC/D,CAAC;CACF;AAED,MAAM,UAAU,MAAM,CAAI,KAAkB;IAC1C,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;IACrC,MAAM,OAAO,GAAG,IAAI,iBAAiB,CAAC;QACpC,IAAI,EAAE,MAAM,CAAC,UAAU;QACvB,IAAI,EAAE;YACJ,2EAA2E;YAC3E,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC;YACnC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC;YACpC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAQ,EAAK,EAAE,CAAC,KAAK;SAC3C;KACF,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;AACrC,CAAC"}
@@ -1,43 +0,0 @@
1
- import { Agent, ReadStateResponse } from './agent';
2
- import { AgentError } from './errors';
3
- /**
4
- * A certificate needs to be verified (using {@link Certificate.prototype.verify})
5
- * before it can be used.
6
- */
7
- export declare class UnverifiedCertificateError extends AgentError {
8
- constructor();
9
- }
10
- declare const enum NodeId {
11
- Empty = 0,
12
- Fork = 1,
13
- Labeled = 2,
14
- Leaf = 3,
15
- Pruned = 4
16
- }
17
- export declare type HashTree = [NodeId.Empty] | [NodeId.Fork, HashTree, HashTree] | [NodeId.Labeled, ArrayBuffer, HashTree] | [NodeId.Leaf, ArrayBuffer] | [NodeId.Pruned, ArrayBuffer];
18
- /**
19
- * Make a human readable string out of a hash tree.
20
- * @param tree
21
- */
22
- export declare function hashTreeToString(tree: HashTree): string;
23
- export declare class Certificate {
24
- private _agent;
25
- private readonly cert;
26
- private verified;
27
- private _rootKey;
28
- constructor(response: ReadStateResponse, _agent?: Agent);
29
- lookup(path: Array<ArrayBuffer | string>): ArrayBuffer | undefined;
30
- verify(): Promise<boolean>;
31
- protected checkState(): void;
32
- private _checkDelegation;
33
- }
34
- /**
35
- * @param t
36
- */
37
- export declare function reconstruct(t: HashTree): Promise<ArrayBuffer>;
38
- /**
39
- * @param path
40
- * @param tree
41
- */
42
- export declare function lookup_path(path: Array<ArrayBuffer | string>, tree: HashTree): ArrayBuffer | undefined;
43
- export {};