saito-js 0.2.216 → 0.2.218

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 (102) hide show
  1. package/configs.d.ts +34 -0
  2. package/configs.d.ts.map +1 -0
  3. package/configs.js +3 -0
  4. package/configs.js.map +1 -0
  5. package/index.node.d.ts +14 -0
  6. package/index.node.d.ts.map +1 -0
  7. package/index.node.js +81 -0
  8. package/index.node.js.map +1 -0
  9. package/index.web.d.ts +14 -0
  10. package/index.web.d.ts.map +1 -0
  11. package/index.web.js +82 -0
  12. package/index.web.js.map +1 -0
  13. package/lib/balance_snapshot.d.ts +11 -0
  14. package/lib/balance_snapshot.d.ts.map +1 -0
  15. package/lib/balance_snapshot.js +36 -0
  16. package/lib/balance_snapshot.js.map +1 -0
  17. package/lib/block.d.ts +64 -0
  18. package/lib/block.d.ts.map +1 -0
  19. package/lib/block.js +204 -0
  20. package/lib/block.js.map +1 -0
  21. package/lib/blockchain.d.ts +29 -0
  22. package/lib/blockchain.d.ts.map +1 -0
  23. package/lib/blockchain.js +226 -0
  24. package/lib/blockchain.js.map +1 -0
  25. package/lib/custom/custom_shared_methods.d.ts +32 -0
  26. package/lib/custom/custom_shared_methods.d.ts.map +1 -0
  27. package/lib/custom/custom_shared_methods.js +104 -0
  28. package/lib/custom/custom_shared_methods.js.map +1 -0
  29. package/lib/custom/shared_methods.web.d.ts +17 -0
  30. package/lib/custom/shared_methods.web.d.ts.map +1 -0
  31. package/lib/custom/shared_methods.web.js +228 -0
  32. package/lib/custom/shared_methods.web.js.map +1 -0
  33. package/lib/factory.d.ts +18 -0
  34. package/lib/factory.d.ts.map +1 -0
  35. package/lib/factory.js +38 -0
  36. package/lib/factory.js.map +1 -0
  37. package/lib/hop.d.ts +15 -0
  38. package/lib/hop.d.ts.map +1 -0
  39. package/lib/hop.js +33 -0
  40. package/lib/hop.js.map +1 -0
  41. package/lib/network_peer.d.ts +11 -0
  42. package/lib/network_peer.d.ts.map +1 -0
  43. package/lib/network_peer.js +27 -0
  44. package/lib/network_peer.js.map +1 -0
  45. package/lib/nft.d.ts +14 -0
  46. package/lib/nft.d.ts.map +1 -0
  47. package/lib/nft.js +80 -0
  48. package/lib/nft.js.map +1 -0
  49. package/lib/peer.d.ts +14 -0
  50. package/lib/peer.d.ts.map +1 -0
  51. package/lib/peer.js +41 -0
  52. package/lib/peer.js.map +1 -0
  53. package/lib/peer_service.d.ts +7 -0
  54. package/lib/peer_service.d.ts.map +1 -0
  55. package/lib/peer_service.js +20 -0
  56. package/lib/peer_service.js.map +1 -0
  57. package/lib/peer_service_list.d.ts +9 -0
  58. package/lib/peer_service_list.d.ts.map +1 -0
  59. package/lib/peer_service_list.js +22 -0
  60. package/lib/peer_service_list.js.map +1 -0
  61. package/lib/slip.d.ts +45 -0
  62. package/lib/slip.d.ts.map +1 -0
  63. package/lib/slip.js +114 -0
  64. package/lib/slip.js.map +1 -0
  65. package/lib/stun_peer.d.ts +20 -0
  66. package/lib/stun_peer.d.ts.map +1 -0
  67. package/lib/stun_peer.js +103 -0
  68. package/lib/stun_peer.js.map +1 -0
  69. package/lib/transaction.d.ts +79 -0
  70. package/lib/transaction.d.ts.map +1 -0
  71. package/lib/transaction.js +180 -0
  72. package/lib/transaction.js.map +1 -0
  73. package/lib/util.d.ts +3 -0
  74. package/lib/util.d.ts.map +1 -0
  75. package/lib/util.js +37 -0
  76. package/lib/util.js.map +1 -0
  77. package/lib/wallet.d.ts +42 -0
  78. package/lib/wallet.d.ts.map +1 -0
  79. package/lib/wallet.js +117 -0
  80. package/lib/wallet.js.map +1 -0
  81. package/lib/wasm_wrapper.d.ts +7 -0
  82. package/lib/wasm_wrapper.d.ts.map +1 -0
  83. package/lib/wasm_wrapper.js +26 -0
  84. package/lib/wasm_wrapper.js.map +1 -0
  85. package/package.json +2 -43
  86. package/saito.d.ts +86 -0
  87. package/saito.d.ts.map +1 -0
  88. package/saito.js +509 -0
  89. package/saito.js.map +1 -0
  90. package/shared_methods.d.ts +33 -0
  91. package/shared_methods.d.ts.map +1 -0
  92. package/shared_methods.js +3 -0
  93. package/shared_methods.js.map +1 -0
  94. package/tests/index.test.d.ts +1 -0
  95. package/tests/index.test.d.ts.map +1 -0
  96. package/tests/index.test.js +37 -0
  97. package/tests/index.test.js.map +1 -0
  98. package/tests/wrappers.test.d.ts +2 -0
  99. package/tests/wrappers.test.d.ts.map +1 -0
  100. package/tests/wrappers.test.js +175 -0
  101. package/tests/wrappers.test.js.map +1 -0
  102. package/tsconfig.json +125 -0
package/configs.d.ts ADDED
@@ -0,0 +1,34 @@
1
+ type Configs = {
2
+ server: {
3
+ host: string;
4
+ port: number;
5
+ protocol: string;
6
+ endpoint: {
7
+ host: string;
8
+ port: number;
9
+ protocol: string;
10
+ };
11
+ verification_threads: number;
12
+ channel_size: number;
13
+ stat_timer_in_ms: number;
14
+ reconnection_wait_time: number;
15
+ thread_sleep_time_in_ms: number;
16
+ block_fetch_batch_size: number;
17
+ };
18
+ peers: {
19
+ host: string;
20
+ port: number;
21
+ protocol: string;
22
+ synctype: string;
23
+ }[];
24
+ spv_mode: boolean;
25
+ browser_mode: boolean;
26
+ consensus: {
27
+ genesis_period: number;
28
+ heartbeat_interval: number;
29
+ prune_after_blocks: number;
30
+ max_staker_recursions: number;
31
+ };
32
+ };
33
+ export default Configs;
34
+ //# sourceMappingURL=configs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configs.d.ts","sourceRoot":"","sources":["../configs.ts"],"names":[],"mappings":"AAAA,KAAK,OAAO,GAAG;IACX,MAAM,EAAE;QACJ,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE;YACN,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,QAAQ,EAAE,MAAM,CAAC;SACpB,CAAC;QACF,oBAAoB,EAAE,MAAM,CAAC;QAC7B,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;QACzB,sBAAsB,EAAE,MAAM,CAAC;QAC/B,uBAAuB,EAAE,MAAM,CAAC;QAChC,sBAAsB,EAAE,MAAM,CAAC;KAClC,CAAC;IACF,KAAK,EAAE;QACH,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;KACpB,EAAE,CAAC;IACJ,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE;QACP,cAAc,EAAE,MAAM,CAAC;QACvB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,kBAAkB,EAAE,MAAM,CAAC;QAC3B,qBAAqB,EAAE,MAAM,CAAC;KACjC,CAAA;CACJ,CAAC;AAEF,eAAe,OAAO,CAAC"}
package/configs.js ADDED
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=configs.js.map
package/configs.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configs.js","sourceRoot":"","sources":["../configs.ts"],"names":[],"mappings":""}
@@ -0,0 +1,14 @@
1
+ import Saito, { LogLevel } from "./saito";
2
+ import SharedMethods from "./shared_methods";
3
+ import Factory from "./lib/factory";
4
+ /**
5
+ *
6
+ * @param configs
7
+ * @param sharedMethods
8
+ * @param factory
9
+ * @param privateKey
10
+ * @param logLevel
11
+ */
12
+ export declare function initialize(configs: any, sharedMethods: SharedMethods, factory: Factory, privateKey: string, logLevel: LogLevel | undefined, haste_multiplier: bigint, delete_old_blocks: boolean): Promise<void>;
13
+ export default Saito;
14
+ //# sourceMappingURL=index.node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.node.d.ts","sourceRoot":"","sources":["../index.node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAK7C,OAAO,OAAO,MAAM,eAAe,CAAC;AAcpC;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAC9B,OAAO,EAAE,GAAG,EACZ,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,EAClB,QAAQ,sBAA0B,EAClC,gBAAgB,EAAE,MAAM,EACxB,iBAAiB,EAAE,OAAO,iBAsC3B;AAED,eAAe,KAAK,CAAC"}
package/index.node.js ADDED
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.initialize = void 0;
30
+ const saito_1 = __importStar(require("./saito"));
31
+ const transaction_1 = __importDefault(require("./lib/transaction"));
32
+ const slip_1 = __importDefault(require("./lib/slip"));
33
+ const block_1 = __importDefault(require("./lib/block"));
34
+ const peer_1 = __importDefault(require("./lib/peer"));
35
+ const wallet_1 = __importStar(require("./lib/wallet"));
36
+ const blockchain_1 = __importDefault(require("./lib/blockchain"));
37
+ const peer_service_1 = __importDefault(require("./lib/peer_service"));
38
+ const peer_service_list_1 = __importDefault(require("./lib/peer_service_list"));
39
+ const balance_snapshot_1 = __importDefault(require("./lib/balance_snapshot"));
40
+ const network_peer_1 = __importDefault(require("./lib/network_peer"));
41
+ const NODE_MAJOR_VERSION = parseInt(process.versions.node.split(".")[0]);
42
+ if (NODE_MAJOR_VERSION < 19) {
43
+ let cr = require("crypto");
44
+ globalThis.crypto = cr.webcrypto;
45
+ }
46
+ /**
47
+ *
48
+ * @param configs
49
+ * @param sharedMethods
50
+ * @param factory
51
+ * @param privateKey
52
+ * @param logLevel
53
+ */
54
+ async function initialize(configs, sharedMethods, factory, privateKey, logLevel = saito_1.LogLevel.Info, haste_multiplier, delete_old_blocks) {
55
+ if (saito_1.default.getLibInstance()) {
56
+ console.error("saito already initialized");
57
+ return;
58
+ }
59
+ console.log("initializing saito-js");
60
+ // let saito = await import("saito-wasm/dist/server");
61
+ let saito = await Promise.resolve().then(() => __importStar(require("saito-wasm/pkg/node")));
62
+ console.log("wasm lib loaded");
63
+ let s = await saito.default;
64
+ saito_1.default.setLibInstance(s);
65
+ transaction_1.default.Type = s.WasmTransaction;
66
+ slip_1.default.Type = s.WasmSlip;
67
+ block_1.default.Type = s.WasmBlock;
68
+ peer_1.default.Type = s.WasmPeer;
69
+ wallet_1.default.Type = s.WasmWallet;
70
+ blockchain_1.default.Type = s.WasmBlockchain;
71
+ peer_service_1.default.Type = s.WasmPeerService;
72
+ peer_service_list_1.default.Type = s.WasmPeerServiceList;
73
+ balance_snapshot_1.default.Type = s.WasmBalanceSnapshot;
74
+ wallet_1.WalletSlip.Type = s.WasmWalletSlip;
75
+ network_peer_1.default.Type = s.WasmNetworkPeer;
76
+ // Config.Type = s.WasmConfiguration;
77
+ return saito_1.default.initialize(configs, sharedMethods, factory, privateKey, logLevel, haste_multiplier, delete_old_blocks);
78
+ }
79
+ exports.initialize = initialize;
80
+ exports.default = saito_1.default;
81
+ //# sourceMappingURL=index.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.node.js","sourceRoot":"","sources":["../index.node.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAA0C;AAE1C,oEAA4C;AAC5C,sDAA8B;AAC9B,wDAAgC;AAChC,sDAA8B;AAE9B,uDAAkD;AAClD,kEAA0C;AAC1C,sEAA6C;AAC7C,gFAAsD;AACtD,8EAAqD;AACrD,sEAA6C;AAE7C,MAAM,kBAAkB,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACzE,IAAI,kBAAkB,GAAG,EAAE,EAAE,CAAC;IAC5B,IAAI,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC3B,UAAU,CAAC,MAAM,GAAG,EAAE,CAAC,SAAS,CAAC;AACnC,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,UAAU,CAC9B,OAAY,EACZ,aAA4B,EAC5B,OAAgB,EAChB,UAAkB,EAClB,WAAqB,gBAAQ,CAAC,IAAI,EAClC,gBAAwB,EACxB,iBAA0B;IAE1B,IAAI,eAAK,CAAC,cAAc,EAAE,EAAE,CAAC;QAC3B,OAAO,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC3C,OAAO;IACT,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACrC,sDAAsD;IACtD,IAAI,KAAK,GAAG,wDAAa,qBAAqB,GAAC,CAAC;IAEhD,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAE/B,IAAI,CAAC,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC;IAE5B,eAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAExB,qBAAW,CAAC,IAAI,GAAG,CAAC,CAAC,eAAe,CAAC;IACrC,cAAI,CAAC,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC;IACvB,eAAK,CAAC,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC;IACzB,cAAI,CAAC,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC;IACvB,gBAAM,CAAC,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC;IAC3B,oBAAU,CAAC,IAAI,GAAG,CAAC,CAAC,cAAc,CAAC;IACnC,sBAAW,CAAC,IAAI,GAAG,CAAC,CAAC,eAAe,CAAC;IACrC,2BAAe,CAAC,IAAI,GAAG,CAAC,CAAC,mBAAmB,CAAC;IAC7C,0BAAe,CAAC,IAAI,GAAG,CAAC,CAAC,mBAAmB,CAAC;IAC7C,mBAAU,CAAC,IAAI,GAAG,CAAC,CAAC,cAAc,CAAC;IACnC,sBAAW,CAAC,IAAI,GAAG,CAAC,CAAC,eAAe,CAAC;IACrC,qCAAqC;IAErC,OAAO,eAAK,CAAC,UAAU,CACrB,OAAO,EACP,aAAa,EACb,OAAO,EACP,UAAU,EACV,QAAQ,EACR,gBAAgB,EAChB,iBAAiB,CAClB,CAAC;AACJ,CAAC;AA7CD,gCA6CC;AAED,kBAAe,eAAK,CAAC"}
package/index.web.d.ts ADDED
@@ -0,0 +1,14 @@
1
+ import Saito, { LogLevel } from "./saito";
2
+ import SharedMethods from "./shared_methods";
3
+ import Factory from "./lib/factory";
4
+ /**
5
+ *
6
+ * @param configs
7
+ * @param sharedMethods
8
+ * @param factory
9
+ * @param privateKey
10
+ * @param logLevel
11
+ */
12
+ export declare function initialize(configs: any, sharedMethods: SharedMethods, factory: Factory, privateKey: string, logLevel: LogLevel | undefined, haste_multiplier: bigint, delete_old_blocks: boolean): Promise<void>;
13
+ export default Saito;
14
+ //# sourceMappingURL=index.web.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.web.d.ts","sourceRoot":"","sources":["../index.web.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAK7C,OAAO,OAAO,MAAM,eAAe,CAAC;AAUpC;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAC9B,OAAO,EAAE,GAAG,EACZ,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,MAAM,EAClB,QAAQ,sBAA0B,EAClC,gBAAgB,EAAE,MAAM,EACxB,iBAAiB,EAAE,OAAO,iBA2C3B;AAED,eAAe,KAAK,CAAC"}
package/index.web.js ADDED
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.initialize = void 0;
30
+ const saito_1 = __importStar(require("./saito"));
31
+ const transaction_1 = __importDefault(require("./lib/transaction"));
32
+ const slip_1 = __importDefault(require("./lib/slip"));
33
+ const block_1 = __importDefault(require("./lib/block"));
34
+ const peer_1 = __importDefault(require("./lib/peer"));
35
+ const wallet_1 = __importStar(require("./lib/wallet"));
36
+ const blockchain_1 = __importDefault(require("./lib/blockchain"));
37
+ const peer_service_1 = __importDefault(require("./lib/peer_service"));
38
+ const peer_service_list_1 = __importDefault(require("./lib/peer_service_list"));
39
+ const balance_snapshot_1 = __importDefault(require("./lib/balance_snapshot"));
40
+ const network_peer_1 = __importDefault(require("./lib/network_peer"));
41
+ // import Config from "./lib/config";
42
+ /**
43
+ *
44
+ * @param configs
45
+ * @param sharedMethods
46
+ * @param factory
47
+ * @param privateKey
48
+ * @param logLevel
49
+ */
50
+ async function initialize(configs, sharedMethods, factory, privateKey, logLevel = saito_1.LogLevel.Info, haste_multiplier, delete_old_blocks) {
51
+ if (saito_1.default.getLibInstance()) {
52
+ console.error("saito already initialized");
53
+ return;
54
+ }
55
+ console.log("initializing saito-js");
56
+ return Promise.resolve().then(() => __importStar(require("saito-wasm/pkg/web"))).then((s) => {
57
+ return s.default().then(() => {
58
+ return s;
59
+ });
60
+ })
61
+ .then((s) => {
62
+ saito_1.default.setLibInstance(s);
63
+ transaction_1.default.Type = s.WasmTransaction;
64
+ slip_1.default.Type = s.WasmSlip;
65
+ block_1.default.Type = s.WasmBlock;
66
+ peer_1.default.Type = s.WasmPeer;
67
+ wallet_1.default.Type = s.WasmWallet;
68
+ blockchain_1.default.Type = s.WasmBlockchain;
69
+ peer_service_1.default.Type = s.WasmPeerService;
70
+ peer_service_list_1.default.Type = s.WasmPeerServiceList;
71
+ balance_snapshot_1.default.Type = s.WasmBalanceSnapshot;
72
+ wallet_1.WalletSlip.Type = s.WasmWalletSlip;
73
+ network_peer_1.default.Type = s.WasmNetworkPeer;
74
+ // Config.Type = s.WasmConfiguration;
75
+ console.log("init output = ", s);
76
+ saito_1.default.setWasmMemory(s.memory);
77
+ return saito_1.default.initialize(configs, sharedMethods, factory, privateKey, logLevel, haste_multiplier, delete_old_blocks);
78
+ });
79
+ }
80
+ exports.initialize = initialize;
81
+ exports.default = saito_1.default;
82
+ //# sourceMappingURL=index.web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.web.js","sourceRoot":"","sources":["../index.web.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAA0C;AAE1C,oEAA4C;AAC5C,sDAA8B;AAC9B,wDAAgC;AAChC,sDAA8B;AAE9B,uDAAkD;AAClD,kEAA0C;AAC1C,sEAA6C;AAC7C,gFAAsD;AACtD,8EAAqD;AACrD,sEAA6C;AAE7C,qCAAqC;AAErC;;;;;;;GAOG;AACI,KAAK,UAAU,UAAU,CAC9B,OAAY,EACZ,aAA4B,EAC5B,OAAgB,EAChB,UAAkB,EAClB,WAAqB,gBAAQ,CAAC,IAAI,EAClC,gBAAwB,EACxB,iBAA0B;IAE1B,IAAI,eAAK,CAAC,cAAc,EAAE,EAAE,CAAC;QAC3B,OAAO,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC3C,OAAO;IACT,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAErC,OAAO,kDAAO,oBAAoB,IAC/B,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE;QACf,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YAC3B,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;SACD,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QACV,eAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QAExB,qBAAW,CAAC,IAAI,GAAG,CAAC,CAAC,eAAe,CAAC;QACrC,cAAI,CAAC,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC;QACvB,eAAK,CAAC,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC;QACzB,cAAI,CAAC,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC;QACvB,gBAAM,CAAC,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC;QAC3B,oBAAU,CAAC,IAAI,GAAG,CAAC,CAAC,cAAc,CAAC;QACnC,sBAAW,CAAC,IAAI,GAAG,CAAC,CAAC,eAAe,CAAC;QACrC,2BAAe,CAAC,IAAI,GAAG,CAAC,CAAC,mBAAmB,CAAC;QAC7C,0BAAe,CAAC,IAAI,GAAG,CAAC,CAAC,mBAAmB,CAAC;QAC7C,mBAAU,CAAC,IAAI,GAAG,CAAC,CAAC,cAAc,CAAC;QACnC,sBAAW,CAAC,IAAI,GAAG,CAAC,CAAC,eAAe,CAAC;QACrC,qCAAqC;QAErC,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;QACjC,eAAK,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAE9B,OAAO,eAAK,CAAC,UAAU,CACrB,OAAO,EACP,aAAa,EACb,OAAO,EACP,UAAU,EACV,QAAQ,EACR,gBAAgB,EAChB,iBAAiB,CAClB,CAAC;IACJ,CAAC,CAAC,CAAC;AACP,CAAC;AAlDD,gCAkDC;AAED,kBAAe,eAAK,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { WasmBalanceSnapshot } from "saito-wasm/pkg/node/index";
2
+ import WasmWrapper from "./wasm_wrapper";
3
+ export default class BalanceSnapshot extends WasmWrapper<WasmBalanceSnapshot> {
4
+ static Type: any;
5
+ constructor(snapshot?: WasmBalanceSnapshot);
6
+ get file_name(): string;
7
+ get rows(): Array<string>;
8
+ static fromString(str: string): BalanceSnapshot | null;
9
+ toString(): string;
10
+ }
11
+ //# sourceMappingURL=balance_snapshot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"balance_snapshot.d.ts","sourceRoot":"","sources":["../../lib/balance_snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,2BAA2B,CAAC;AACnE,OAAO,WAAW,MAAM,gBAAgB,CAAC;AAEzC,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,WAAW,CAAC,mBAAmB,CAAC;IACzE,OAAc,IAAI,EAAE,GAAG,CAAC;gBAEZ,QAAQ,CAAC,EAAE,mBAAmB;IAO1C,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED,IAAW,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,CAE/B;WAEa,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI;IAUtD,QAAQ,IAAI,MAAM;CAG5B"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const wasm_wrapper_1 = __importDefault(require("./wasm_wrapper"));
7
+ class BalanceSnapshot extends wasm_wrapper_1.default {
8
+ static Type;
9
+ constructor(snapshot) {
10
+ if (!snapshot) {
11
+ snapshot = new BalanceSnapshot.Type();
12
+ }
13
+ super(snapshot);
14
+ }
15
+ get file_name() {
16
+ return this.instance.get_file_name();
17
+ }
18
+ get rows() {
19
+ return this.instance.get_entries();
20
+ }
21
+ static fromString(str) {
22
+ try {
23
+ let snapshot = this.Type.from_string(str);
24
+ return new BalanceSnapshot(snapshot);
25
+ }
26
+ catch (error) {
27
+ console.error(error);
28
+ return null;
29
+ }
30
+ }
31
+ toString() {
32
+ return this.instance.to_string();
33
+ }
34
+ }
35
+ exports.default = BalanceSnapshot;
36
+ //# sourceMappingURL=balance_snapshot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"balance_snapshot.js","sourceRoot":"","sources":["../../lib/balance_snapshot.ts"],"names":[],"mappings":";;;;;AACA,kEAAyC;AAEzC,MAAqB,eAAgB,SAAQ,sBAAgC;IAClE,MAAM,CAAC,IAAI,CAAM;IAExB,YAAY,QAA8B;QACtC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,QAAQ,GAAG,IAAI,eAAe,CAAC,IAAI,EAAE,CAAC;QAC1C,CAAC;QACD,KAAK,CAAC,QAAS,CAAC,CAAC;IACrB,CAAC;IAED,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;IACzC,CAAC;IAED,IAAW,IAAI;QACX,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;IACvC,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,GAAW;QAChC,IAAI,CAAC;YACD,IAAI,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAC1C,OAAO,IAAI,eAAe,CAAC,QAAQ,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;IACrC,CAAC;CACJ;AA/BD,kCA+BC"}
package/lib/block.d.ts ADDED
@@ -0,0 +1,64 @@
1
+ import type { WasmBlock } from "saito-wasm/pkg/node/index";
2
+ import Transaction from "./transaction";
3
+ import WasmWrapper from "./wasm_wrapper";
4
+ export declare enum BlockType {
5
+ Ghost = 0,
6
+ Header = 1,
7
+ Pruned = 2,
8
+ Full = 3
9
+ }
10
+ export default class Block extends WasmWrapper<WasmBlock> {
11
+ static Type: any;
12
+ constructor(block?: WasmBlock);
13
+ toJson(): string;
14
+ get transactions(): Array<Transaction>;
15
+ get id(): bigint;
16
+ get hash(): string;
17
+ get block_type(): BlockType;
18
+ get previousBlockHash(): string;
19
+ get treasury(): bigint;
20
+ get graveyard(): bigint;
21
+ serialize(): Uint8Array;
22
+ get file_name(): string;
23
+ hasKeylistTxs(keylist: Array<string>): boolean;
24
+ generateLiteBlock(keylist: Array<string>): Block;
25
+ deserialize(buffer: Uint8Array): void;
26
+ get totalFees(): bigint;
27
+ get totalFeesCumulative(): bigint;
28
+ get avgFeePerByte(): bigint;
29
+ get avgIncome(): bigint;
30
+ get avgNolanRebroadcastPerBlock(): bigint;
31
+ get avgTotalFees(): bigint;
32
+ get burnFee(): bigint;
33
+ get difficulty(): bigint;
34
+ get forceLoaded(): boolean;
35
+ get inLongestChain(): boolean;
36
+ get rebroadcastHash(): string;
37
+ get totalRebroadcastNolan(): bigint;
38
+ get totalRebroadcastSlips(): bigint;
39
+ get totalFeesNew(): bigint;
40
+ get totalFeesAtr(): bigint;
41
+ get avgTotalFeesNew(): bigint;
42
+ get avgTotalFeesAtr(): bigint;
43
+ get totalPayoutRouting(): bigint;
44
+ get totalPayoutMining(): bigint;
45
+ get totalPayoutTreasury(): bigint;
46
+ get totalPayoutGraveyard(): bigint;
47
+ get avgPayoutRouting(): bigint;
48
+ get avgPayoutTreasury(): bigint;
49
+ get avgPayoutGraveyard(): bigint;
50
+ get avgPayoutAtr(): bigint;
51
+ get feePerByte(): bigint;
52
+ get previousBlockUnpaid(): bigint;
53
+ get totalWork(): bigint;
54
+ get hasGoldenTicket(): boolean;
55
+ get hasIssuanceTransaction(): boolean;
56
+ get issuanceTransactionIndex(): bigint;
57
+ get hasFeeTransaction(): boolean;
58
+ get hasStakingTransaction(): boolean;
59
+ get goldenTicketIndex(): bigint;
60
+ get feeTransactionIndex(): bigint;
61
+ get totalPayoutAtr(): bigint;
62
+ get avgPayoutMining(): bigint;
63
+ }
64
+ //# sourceMappingURL=block.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../lib/block.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,2BAA2B,CAAC;AACzD,OAAO,WAAW,MAAM,eAAe,CAAC;AAExC,OAAO,WAAW,MAAM,gBAAgB,CAAC;AAEzC,oBAAY,SAAS;IACjB,KAAK,IAAI;IACT,MAAM,IAAI;IACV,MAAM,IAAI;IACV,IAAI,IAAI;CACX;AAED,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,WAAW,CAAC,SAAS,CAAC;IACrD,OAAc,IAAI,EAAE,GAAG,CAAC;gBAEZ,KAAK,CAAC,EAAE,SAAS;IAOtB,MAAM,IAAI,MAAM;IAuBvB,IAAW,YAAY,IAAI,KAAK,CAAC,WAAW,CAAC,CAS5C;IAED,IAAW,EAAE,IAAI,MAAM,CAEtB;IAED,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,UAAU,IAAI,SAAS,CAEjC;IAGD,IAAW,iBAAiB,IAAI,MAAM,CAErC;IAED,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAED,IAAW,SAAS,IAAI,MAAM,CAE7B;IAEM,SAAS,IAAI,UAAU;IAK9B,IAAW,SAAS,WAEnB;IAEM,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,OAAO;IAI9C,iBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK;IAOhD,WAAW,CAAC,MAAM,EAAE,UAAU;IAIrC,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED,IAAW,mBAAmB,IAAI,MAAM,CAEvC;IAED,IAAW,aAAa,IAAI,MAAM,CAEjC;IAED,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED,IAAW,2BAA2B,IAAI,MAAM,CAE/C;IAED,IAAW,YAAY,IAAI,MAAM,CAEhC;IAED,IAAW,OAAO,IAAI,MAAM,CAE3B;IAED,IAAW,UAAU,IAAI,MAAM,CAE9B;IAED,IAAW,WAAW,IAAI,OAAO,CAEhC;IAGD,IAAW,cAAc,IAAI,OAAO,CAEnC;IAED,IAAW,eAAe,IAAI,MAAM,CAEnC;IAED,IAAW,qBAAqB,IAAI,MAAM,CAEzC;IAED,IAAW,qBAAqB,IAAI,MAAM,CAEzC;IAGD,IAAW,YAAY,IAAI,MAAM,CAEhC;IAED,IAAW,YAAY,IAAI,MAAM,CAEhC;IAED,IAAW,eAAe,IAAI,MAAM,CAEnC;IAED,IAAW,eAAe,IAAI,MAAM,CAEnC;IAED,IAAW,kBAAkB,IAAI,MAAM,CAEtC;IAED,IAAW,iBAAiB,IAAI,MAAM,CAErC;IAED,IAAW,mBAAmB,IAAI,MAAM,CAEvC;IAED,IAAW,oBAAoB,IAAI,MAAM,CAExC;IAED,IAAW,gBAAgB,IAAI,MAAM,CAEpC;IAED,IAAW,iBAAiB,IAAI,MAAM,CAErC;IAED,IAAW,kBAAkB,IAAI,MAAM,CAEtC;IAED,IAAW,YAAY,IAAI,MAAM,CAEhC;IAED,IAAW,UAAU,IAAI,MAAM,CAE9B;IAED,IAAW,mBAAmB,IAAI,MAAM,CAEvC;IAED,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED,IAAW,eAAe,IAAI,OAAO,CAEpC;IAED,IAAW,sBAAsB,IAAI,OAAO,CAE3C;IAED,IAAW,wBAAwB,IAAI,MAAM,CAE5C;IAED,IAAW,iBAAiB,IAAI,OAAO,CAEtC;IAED,IAAW,qBAAqB,IAAI,OAAO,CAE1C;IAED,IAAW,iBAAiB,IAAI,MAAM,CAErC;IAED,IAAW,mBAAmB,IAAI,MAAM,CAEvC;IAED,IAAW,cAAc,IAAI,MAAM,CAElC;IAED,IAAW,eAAe,IAAI,MAAM,CAEnC;CAEJ"}
package/lib/block.js ADDED
@@ -0,0 +1,204 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.BlockType = void 0;
7
+ const saito_1 = __importDefault(require("../saito"));
8
+ const wasm_wrapper_1 = __importDefault(require("./wasm_wrapper"));
9
+ var BlockType;
10
+ (function (BlockType) {
11
+ BlockType[BlockType["Ghost"] = 0] = "Ghost";
12
+ BlockType[BlockType["Header"] = 1] = "Header";
13
+ BlockType[BlockType["Pruned"] = 2] = "Pruned";
14
+ BlockType[BlockType["Full"] = 3] = "Full";
15
+ })(BlockType || (exports.BlockType = BlockType = {}));
16
+ class Block extends wasm_wrapper_1.default {
17
+ static Type;
18
+ constructor(block) {
19
+ if (!block) {
20
+ block = new Block.Type();
21
+ }
22
+ super(block);
23
+ }
24
+ toJson() {
25
+ try {
26
+ return JSON.stringify({
27
+ id: this.id,
28
+ hash: this.hash,
29
+ type: JSON.stringify(this.block_type),
30
+ previous_block_hash: this.previousBlockHash,
31
+ transactions: this.transactions.map(tx => tx.toJson()),
32
+ timestamp: this.instance.timestamp,
33
+ creator: this.instance.creator,
34
+ file_name: this.instance.file_name,
35
+ has_keylist_txs: this.instance.has_keylist_txs,
36
+ graveyard: this.instance.graveyard,
37
+ treasury: this.instance.treasury
38
+ });
39
+ }
40
+ catch (error) {
41
+ console.error(error);
42
+ }
43
+ return "";
44
+ }
45
+ get transactions() {
46
+ try {
47
+ return this.instance.transactions.map((tx) => {
48
+ return saito_1.default.getInstance().factory.createTransaction(tx);
49
+ });
50
+ }
51
+ catch (error) {
52
+ console.error(error);
53
+ return [];
54
+ }
55
+ }
56
+ get id() {
57
+ return this.instance.id;
58
+ }
59
+ get hash() {
60
+ return this.instance.hash;
61
+ }
62
+ get block_type() {
63
+ return this.instance.type;
64
+ }
65
+ get previousBlockHash() {
66
+ return this.instance.previous_block_hash;
67
+ }
68
+ get treasury() {
69
+ return this.instance.treasury;
70
+ }
71
+ get graveyard() {
72
+ return this.instance.graveyard;
73
+ }
74
+ serialize() {
75
+ return this.instance.serialize();
76
+ }
77
+ get file_name() {
78
+ return this.instance.file_name;
79
+ }
80
+ hasKeylistTxs(keylist) {
81
+ return this.instance.has_keylist_txs(keylist);
82
+ }
83
+ generateLiteBlock(keylist) {
84
+ let block = this.instance.generate_lite_block(keylist);
85
+ console.assert(block.hash === this.hash, `this block's hash : ${this.hash} does not match with generated lite block's hash : ${block.hash}`);
86
+ return saito_1.default.getInstance().factory.createBlock(block);
87
+ }
88
+ deserialize(buffer) {
89
+ this.instance.deserialize(buffer);
90
+ }
91
+ get totalFees() {
92
+ return this.instance.total_fees;
93
+ }
94
+ get totalFeesCumulative() {
95
+ return this.instance.total_fees_cumulative;
96
+ }
97
+ get avgFeePerByte() {
98
+ return this.instance.avg_fee_per_byte;
99
+ }
100
+ get avgIncome() {
101
+ return this.instance.avg_income;
102
+ }
103
+ get avgNolanRebroadcastPerBlock() {
104
+ return this.instance.avg_nolan_rebroadcast_per_block;
105
+ }
106
+ get avgTotalFees() {
107
+ return this.instance.avg_total_fees;
108
+ }
109
+ get burnFee() {
110
+ return this.instance.burnfee;
111
+ }
112
+ get difficulty() {
113
+ return this.instance.difficulty;
114
+ }
115
+ get forceLoaded() {
116
+ return this.instance.force_loaded;
117
+ }
118
+ get inLongestChain() {
119
+ return this.instance.in_longest_chain;
120
+ }
121
+ get rebroadcastHash() {
122
+ return this.instance.rebroadcast_hash;
123
+ }
124
+ get totalRebroadcastNolan() {
125
+ return this.instance.total_rebroadcast_nolan;
126
+ }
127
+ get totalRebroadcastSlips() {
128
+ return this.instance.total_rebroadcast_slips;
129
+ }
130
+ get totalFeesNew() {
131
+ return this.instance.total_fees_new;
132
+ }
133
+ get totalFeesAtr() {
134
+ return this.instance.total_fees_atr;
135
+ }
136
+ get avgTotalFeesNew() {
137
+ return this.instance.avg_total_fees_new;
138
+ }
139
+ get avgTotalFeesAtr() {
140
+ return this.instance.avg_total_fees_atr;
141
+ }
142
+ get totalPayoutRouting() {
143
+ return this.instance.total_payout_routing;
144
+ }
145
+ get totalPayoutMining() {
146
+ return this.instance.total_payout_mining;
147
+ }
148
+ get totalPayoutTreasury() {
149
+ return this.instance.total_payout_treasury;
150
+ }
151
+ get totalPayoutGraveyard() {
152
+ return this.instance.total_payout_graveyard;
153
+ }
154
+ get avgPayoutRouting() {
155
+ return this.instance.avg_payout_routing;
156
+ }
157
+ get avgPayoutTreasury() {
158
+ return this.instance.avg_payout_treasury;
159
+ }
160
+ get avgPayoutGraveyard() {
161
+ return this.instance.avg_payout_graveyard;
162
+ }
163
+ get avgPayoutAtr() {
164
+ return this.instance.avg_payout_atr;
165
+ }
166
+ get feePerByte() {
167
+ return this.instance.fee_per_byte;
168
+ }
169
+ get previousBlockUnpaid() {
170
+ return this.instance.previous_block_unpaid;
171
+ }
172
+ get totalWork() {
173
+ return this.instance.total_work;
174
+ }
175
+ get hasGoldenTicket() {
176
+ return this.instance.has_golden_ticket;
177
+ }
178
+ get hasIssuanceTransaction() {
179
+ return this.instance.has_issuance_transaction;
180
+ }
181
+ get issuanceTransactionIndex() {
182
+ return this.instance.issuance_transaction_index;
183
+ }
184
+ get hasFeeTransaction() {
185
+ return this.instance.has_fee_transaction;
186
+ }
187
+ get hasStakingTransaction() {
188
+ return this.instance.has_staking_transaction;
189
+ }
190
+ get goldenTicketIndex() {
191
+ return this.instance.golden_ticket_index;
192
+ }
193
+ get feeTransactionIndex() {
194
+ return this.instance.fee_transaction_index;
195
+ }
196
+ get totalPayoutAtr() {
197
+ return this.instance.total_payout_atr;
198
+ }
199
+ get avgPayoutMining() {
200
+ return this.instance.avg_payout_mining;
201
+ }
202
+ }
203
+ exports.default = Block;
204
+ //# sourceMappingURL=block.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"block.js","sourceRoot":"","sources":["../../lib/block.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import type { WasmBlockchain } from "saito-wasm/pkg/node/index";
2
+ import WasmWrapper from "./wasm_wrapper";
3
+ import Block from "./block";
4
+ import Transaction from "./transaction";
5
+ export default class Blockchain extends WasmWrapper<WasmBlockchain> {
6
+ static Type: any;
7
+ callbacks: Map<string, ((_1: Block, _2: Transaction, _3: bigint) => {})[]>;
8
+ callbackIndices: Map<string, number[]>;
9
+ last_callback_block_id: number;
10
+ callback_limit: number;
11
+ prune_after_blocks: number;
12
+ constructor(blockchain: WasmBlockchain);
13
+ reset(): Promise<void>;
14
+ affixCallbacks(block: Block): Promise<void>;
15
+ runCallbacks(block_hash: string, confirmations: bigint[]): Promise<void>;
16
+ onAddBlockSuccess(block_id: bigint, hash: string): Promise<void>;
17
+ onChainReorganization(block_id: bigint, block_hash: string, longest_chain: boolean): Promise<void>;
18
+ onConfirmation(block_id: bigint, block_hash: string, confirmations: bigint[]): Promise<void>;
19
+ onNewBlock(block: Block, lc: boolean): Promise<void>;
20
+ getLatestBlockId(): Promise<bigint>;
21
+ getLastBlockTimestamp(): Promise<bigint>;
22
+ getLongestChainHashAtId(blockId: bigint): Promise<string>;
23
+ getHashesAtId(blockId: bigint): Promise<any[]>;
24
+ getForkId(): Promise<string>;
25
+ setForkId(forkId: string): Promise<void>;
26
+ setSafeToPruneTransaction(blockId: bigint): Promise<void>;
27
+ isSlipSpendable(utxoKey: string): Promise<boolean>;
28
+ }
29
+ //# sourceMappingURL=blockchain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blockchain.d.ts","sourceRoot":"","sources":["../../lib/blockchain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,WAAW,MAAM,gBAAgB,CAAC;AAEzC,OAAO,KAAoB,MAAM,SAAS,CAAC;AAC3C,OAAO,WAAW,MAAM,eAAe,CAAC;AAGxC,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,WAAW,CAAC,cAAc,CAAC;IACjE,OAAc,IAAI,EAAE,GAAG,CAAC;IACjB,SAAS,oBAA8B,KAAK,MAAM,WAAW,MAAM,MAAM,KAAK,EAAE,KAAK;IACrF,eAAe,wBAAoC;IACnD,sBAAsB,EAAE,MAAM,CAAK;IAC1C,cAAc,EAAE,MAAM,CAAK;IAC3B,kBAAkB,EAAE,MAAM,CAAK;gBAEnB,UAAU,EAAE,cAAc;IAWzB,KAAK;IAIL,cAAc,CAAC,KAAK,EAAE,KAAK;IAE3B,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE;IA4DxD,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IA0FhD,qBAAqB,CAChC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,OAAO;IAGX,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE;IAqC5E,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO;IAEpC,gBAAgB;IAIhB,qBAAqB;IAIrB,uBAAuB,CAAC,OAAO,EAAE,MAAM;IAIvC,aAAa,CAAC,OAAO,EAAE,MAAM;IAI7B,SAAS;IAIT,SAAS,CAAC,MAAM,EAAE,MAAM;IAIxB,yBAAyB,CAAC,OAAO,EAAE,MAAM;IAIzC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAGhE"}