@mainsail/contracts 0.0.1-evm.1 → 0.0.1-evm.10

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 (130) hide show
  1. package/distribution/contracts/api/api.d.ts +4 -0
  2. package/distribution/contracts/api/api.d.ts.map +1 -1
  3. package/distribution/contracts/api/api.js.map +1 -1
  4. package/distribution/contracts/api-sync.d.ts +0 -1
  5. package/distribution/contracts/api-sync.d.ts.map +1 -1
  6. package/distribution/contracts/crypto/block.d.ts +2 -2
  7. package/distribution/contracts/crypto/block.d.ts.map +1 -1
  8. package/distribution/contracts/crypto/identities.d.ts +3 -0
  9. package/distribution/contracts/crypto/identities.d.ts.map +1 -1
  10. package/distribution/contracts/crypto/networks.d.ts +0 -4
  11. package/distribution/contracts/crypto/networks.d.ts.map +1 -1
  12. package/distribution/contracts/crypto/transactions.d.ts +25 -55
  13. package/distribution/contracts/crypto/transactions.d.ts.map +1 -1
  14. package/distribution/contracts/database.d.ts +8 -0
  15. package/distribution/contracts/database.d.ts.map +1 -1
  16. package/distribution/contracts/evm/contract-service.d.ts +23 -0
  17. package/distribution/contracts/evm/contract-service.d.ts.map +1 -0
  18. package/distribution/contracts/evm/contract-service.js +2 -0
  19. package/distribution/contracts/evm/contract-service.js.map +1 -0
  20. package/distribution/contracts/evm/evm.d.ts +53 -4
  21. package/distribution/contracts/evm/evm.d.ts.map +1 -1
  22. package/distribution/contracts/evm/evm.js +1 -2
  23. package/distribution/contracts/evm/evm.js.map +1 -1
  24. package/distribution/contracts/evm/gas-fee.d.ts +1 -1
  25. package/distribution/contracts/evm/gas-fee.d.ts.map +1 -1
  26. package/distribution/contracts/evm/index.d.ts +2 -0
  27. package/distribution/contracts/evm/index.d.ts.map +1 -1
  28. package/distribution/contracts/evm/index.js +2 -0
  29. package/distribution/contracts/evm/index.js.map +1 -1
  30. package/distribution/contracts/evm/state.d.ts +4 -0
  31. package/distribution/contracts/evm/state.d.ts.map +1 -0
  32. package/distribution/contracts/evm/state.js +2 -0
  33. package/distribution/contracts/evm/state.js.map +1 -0
  34. package/distribution/contracts/evm/worker.d.ts +6 -1
  35. package/distribution/contracts/evm/worker.d.ts.map +1 -1
  36. package/distribution/contracts/index.d.ts +0 -1
  37. package/distribution/contracts/index.d.ts.map +1 -1
  38. package/distribution/contracts/index.js +0 -1
  39. package/distribution/contracts/index.js.map +1 -1
  40. package/distribution/contracts/network-generator.d.ts +0 -7
  41. package/distribution/contracts/network-generator.d.ts.map +1 -1
  42. package/distribution/contracts/processor.d.ts +4 -8
  43. package/distribution/contracts/processor.d.ts.map +1 -1
  44. package/distribution/contracts/serializer.d.ts +1 -1
  45. package/distribution/contracts/serializer.d.ts.map +1 -1
  46. package/distribution/contracts/state/index.d.ts +0 -7
  47. package/distribution/contracts/state/index.d.ts.map +1 -1
  48. package/distribution/contracts/state/index.js +0 -7
  49. package/distribution/contracts/state/index.js.map +1 -1
  50. package/distribution/contracts/state/store.d.ts +3 -17
  51. package/distribution/contracts/state/store.d.ts.map +1 -1
  52. package/distribution/contracts/state/wallets.d.ts +5 -105
  53. package/distribution/contracts/state/wallets.d.ts.map +1 -1
  54. package/distribution/contracts/state/wallets.js +1 -15
  55. package/distribution/contracts/state/wallets.js.map +1 -1
  56. package/distribution/contracts/transaction-pool/client.d.ts +1 -4
  57. package/distribution/contracts/transaction-pool/client.d.ts.map +1 -1
  58. package/distribution/contracts/transaction-pool/mempool.d.ts +4 -5
  59. package/distribution/contracts/transaction-pool/mempool.d.ts.map +1 -1
  60. package/distribution/contracts/transaction-pool/query.d.ts +1 -5
  61. package/distribution/contracts/transaction-pool/query.d.ts.map +1 -1
  62. package/distribution/contracts/transaction-pool/sender-mempool.d.ts +2 -2
  63. package/distribution/contracts/transaction-pool/sender-mempool.d.ts.map +1 -1
  64. package/distribution/contracts/transaction-pool/sender-state.d.ts +3 -1
  65. package/distribution/contracts/transaction-pool/sender-state.d.ts.map +1 -1
  66. package/distribution/contracts/transaction-pool/service.d.ts +2 -2
  67. package/distribution/contracts/transaction-pool/service.d.ts.map +1 -1
  68. package/distribution/contracts/transaction-pool/worker.d.ts +3 -10
  69. package/distribution/contracts/transaction-pool/worker.d.ts.map +1 -1
  70. package/distribution/contracts/transactions.d.ts +9 -27
  71. package/distribution/contracts/transactions.d.ts.map +1 -1
  72. package/distribution/contracts/validator-set.d.ts +5 -3
  73. package/distribution/contracts/validator-set.d.ts.map +1 -1
  74. package/distribution/contracts/validator.d.ts +1 -1
  75. package/distribution/contracts/validator.d.ts.map +1 -1
  76. package/distribution/events.d.ts +2 -1
  77. package/distribution/events.d.ts.map +1 -1
  78. package/distribution/events.js +1 -0
  79. package/distribution/events.js.map +1 -1
  80. package/distribution/exceptions/crypto.d.ts +5 -6
  81. package/distribution/exceptions/crypto.d.ts.map +1 -1
  82. package/distribution/exceptions/crypto.js +3 -4
  83. package/distribution/exceptions/crypto.js.map +1 -1
  84. package/distribution/exceptions/pool.d.ts +2 -3
  85. package/distribution/exceptions/pool.d.ts.map +1 -1
  86. package/distribution/exceptions/pool.js +1 -1
  87. package/distribution/exceptions/pool.js.map +1 -1
  88. package/distribution/exceptions/processor.js +1 -1
  89. package/distribution/exceptions/processor.js.map +1 -1
  90. package/distribution/exceptions/validation.d.ts +1 -1
  91. package/distribution/exceptions/validation.d.ts.map +1 -1
  92. package/distribution/exceptions/validation.js +2 -2
  93. package/distribution/exceptions/validation.js.map +1 -1
  94. package/distribution/identifiers.d.ts +15 -36
  95. package/distribution/identifiers.d.ts.map +1 -1
  96. package/distribution/identifiers.js +15 -36
  97. package/distribution/identifiers.js.map +1 -1
  98. package/package.json +2 -2
  99. package/distribution/contracts/fees.d.ts +0 -10
  100. package/distribution/contracts/fees.d.ts.map +0 -1
  101. package/distribution/contracts/fees.js +0 -2
  102. package/distribution/contracts/fees.js.map +0 -1
  103. package/distribution/contracts/state/attributes.d.ts +0 -22
  104. package/distribution/contracts/state/attributes.d.ts.map +0 -1
  105. package/distribution/contracts/state/attributes.js +0 -9
  106. package/distribution/contracts/state/attributes.js.map +0 -1
  107. package/distribution/contracts/state/block-state.d.ts +0 -12
  108. package/distribution/contracts/state/block-state.d.ts.map +0 -1
  109. package/distribution/contracts/state/block-state.js +0 -2
  110. package/distribution/contracts/state/block-state.js.map +0 -1
  111. package/distribution/contracts/state/index-set.d.ts +0 -5
  112. package/distribution/contracts/state/index-set.d.ts.map +0 -1
  113. package/distribution/contracts/state/index-set.js +0 -2
  114. package/distribution/contracts/state/index-set.js.map +0 -1
  115. package/distribution/contracts/state/repository.d.ts +0 -26
  116. package/distribution/contracts/state/repository.d.ts.map +0 -1
  117. package/distribution/contracts/state/repository.js +0 -2
  118. package/distribution/contracts/state/repository.js.map +0 -1
  119. package/distribution/contracts/state/service.d.ts +0 -11
  120. package/distribution/contracts/state/service.d.ts.map +0 -1
  121. package/distribution/contracts/state/service.js +0 -2
  122. package/distribution/contracts/state/service.js.map +0 -1
  123. package/distribution/contracts/state/snapshots.d.ts +0 -13
  124. package/distribution/contracts/state/snapshots.d.ts.map +0 -1
  125. package/distribution/contracts/state/snapshots.js +0 -2
  126. package/distribution/contracts/state/snapshots.js.map +0 -1
  127. package/distribution/contracts/state/state-verifier.d.ts +0 -4
  128. package/distribution/contracts/state/state-verifier.d.ts.map +0 -1
  129. package/distribution/contracts/state/state-verifier.js +0 -2
  130. package/distribution/contracts/state/state-verifier.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"network-generator.d.ts","sourceRoot":"","sources":["../../source/contracts/network-generator.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,kBAAkB,GAAG;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,IAAI,CAAC;IACZ,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC;CAC3E,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IACjC,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,IAAI,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,kBAAkB,GAC/C,gBAAgB,GAChB,cAAc,GACd,aAAa,GACb,mBAAmB,GAAG;IAErB,KAAK,EAAE,MAAM,EAAE,CAAC;IAGhB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;IACzB,KAAK,EAAE,OAAO,CAAC;CACf,CAAC;AAEH,MAAM,MAAM,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC,GAAG;IAChD,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IAC1B,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;IACzB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,WAAW,EAAE,OAAO,CAAC;CACrB,CAAC"}
1
+ {"version":3,"file":"network-generator.d.ts","sourceRoot":"","sources":["../../source/contracts/network-generator.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,kBAAkB,GAAG;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,IAAI,CAAC;IACZ,iBAAiB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IACjC,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,IAAI,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,kBAAkB,GAC/C,gBAAgB,GAChB,cAAc,GACd,aAAa,GACb,mBAAmB,GAAG;IAErB,KAAK,EAAE,MAAM,EAAE,CAAC;IAGhB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;IACzB,KAAK,EAAE,OAAO,CAAC;CACf,CAAC;AAEH,MAAM,MAAM,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC,GAAG;IAChD,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IAC1B,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;IACzB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,WAAW,EAAE,OAAO,CAAC;CACrB,CAAC"}
@@ -1,14 +1,14 @@
1
1
  import { Block, Commit, Transaction } from "./crypto/index.js";
2
- import { TransactionReceipt } from "./evm/evm.js";
3
- import { Store } from "./state/index.js";
2
+ import { AccountUpdate, TransactionReceipt } from "./evm/evm.js";
4
3
  export interface ProcessableUnit {
5
4
  readonly height: number;
6
5
  readonly round: number;
7
6
  readonly persist: boolean;
8
- readonly store: Store;
9
7
  hasProcessorResult(): boolean;
10
8
  getProcessorResult(): BlockProcessorResult;
11
9
  setProcessorResult(processorResult: BlockProcessorResult): void;
10
+ setAccountUpdates(accounts: Array<AccountUpdate>): void;
11
+ getAccountUpdates(): Array<AccountUpdate>;
12
12
  getBlock(): Block;
13
13
  getCommit(): Promise<Commit>;
14
14
  }
@@ -25,11 +25,7 @@ export interface BlockProcessorResult {
25
25
  gasUsed: number;
26
26
  }
27
27
  export interface TransactionProcessor {
28
- process(unit: ProcessableUnit, transaction: Transaction): Promise<TransactionProcessorResult>;
29
- }
30
- export interface TransactionProcessorResult {
31
- readonly gasUsed: number;
32
- readonly receipt?: TransactionReceipt;
28
+ process(unit: ProcessableUnit, transaction: Transaction): Promise<TransactionReceipt>;
33
29
  }
34
30
  export interface Verifier {
35
31
  verify(unit: ProcessableUnit): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"processor.d.ts","sourceRoot":"","sources":["../../source/contracts/processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,kBAAkB,IAAI,OAAO,CAAC;IAC9B,kBAAkB,IAAI,oBAAoB,CAAC;IAC3C,kBAAkB,CAAC,eAAe,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAChE,QAAQ,IAAI,KAAK,CAAC;IAClB,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CAC7B;AAED,MAAM,WAAW,OAAO;IACvB,OAAO,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,cAAc;IAC9B,OAAO,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC9D,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,oBAAoB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC1C,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACpC,OAAO,CAAC,IAAI,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;CAC9F;AAED,MAAM,WAAW,0BAA0B;IAC1C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB,QAAQ,CAAC,OAAO,CAAC,EAAE,kBAAkB,CAAC;CACtC;AAED,MAAM,WAAW,QAAQ;IACxB,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C"}
1
+ {"version":3,"file":"processor.d.ts","sourceRoot":"","sources":["../../source/contracts/processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEjE,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,kBAAkB,IAAI,OAAO,CAAC;IAC9B,kBAAkB,IAAI,oBAAoB,CAAC;IAC3C,kBAAkB,CAAC,eAAe,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAChE,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC;IACxD,iBAAiB,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;IAC1C,QAAQ,IAAI,KAAK,CAAC;IAClB,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CAC7B;AAED,MAAM,WAAW,OAAO;IACvB,OAAO,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,cAAc;IAC9B,OAAO,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC9D,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,oBAAoB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC1C,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACpC,OAAO,CAAC,IAAI,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;CACtF;AAED,MAAM,WAAW,QAAQ;IACxB,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C"}
@@ -1,7 +1,7 @@
1
1
  /// <reference types="node" resolution-mode="require"/>
2
2
  import { ByteBuffer } from "@mainsail/utils";
3
3
  export type MandatoryPropertyType = "hash" | "publicKey" | "hex" | "signature" | "transactions" | "consensusSignature" | "validatorSet";
4
- export type OptionalPropertyType = "uint8" | "uint16" | "uint32" | "uint48" | "uint64" | "address" | "bigint" | "blockId";
4
+ export type OptionalPropertyType = "uint8" | "uint16" | "uint32" | "uint48" | "uint64" | "uint256" | "address" | "bigint" | "blockId";
5
5
  export type SerializationSchema = {
6
6
  type: MandatoryPropertyType;
7
7
  } | {
@@ -1 +1 @@
1
- {"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../source/contracts/serializer.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,MAAM,qBAAqB,GAC9B,MAAM,GACN,WAAW,GACX,KAAK,GACL,WAAW,GACX,cAAc,GACd,oBAAoB,GACpB,cAAc,CAAC;AAElB,MAAM,MAAM,oBAAoB,GAC7B,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,SAAS,CAAC;AAEb,MAAM,MAAM,mBAAmB,GAAG;IAAE,IAAI,EAAE,qBAAqB,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,QAAQ,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC;AAEpH,MAAM,WAAW,0BAA0B;IAC1C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,MAAM,qBAAqB,GAC9B;IAAE,IAAI,EAAE,qBAAqB,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,QAAQ,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC;AAEnD,MAAM,WAAW,4BAA4B;IAC5C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,UAAU;IAC1B,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,aAAa,EAAE,0BAA0B,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAElF,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,aAAa,EAAE,4BAA4B,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACvG"}
1
+ {"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../source/contracts/serializer.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,MAAM,qBAAqB,GAC9B,MAAM,GACN,WAAW,GACX,KAAK,GACL,WAAW,GACX,cAAc,GACd,oBAAoB,GACpB,cAAc,CAAC;AAElB,MAAM,MAAM,oBAAoB,GAC7B,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,SAAS,GACT,QAAQ,GACR,SAAS,CAAC;AAEb,MAAM,MAAM,mBAAmB,GAAG;IAAE,IAAI,EAAE,qBAAqB,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,QAAQ,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC;AAEpH,MAAM,WAAW,0BAA0B;IAC1C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,MAAM,qBAAqB,GAC9B;IAAE,IAAI,EAAE,qBAAqB,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,QAAQ,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC;AAEnD,MAAM,WAAW,4BAA4B;IAC5C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,UAAU;IAC1B,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,aAAa,EAAE,0BAA0B,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAElF,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,aAAa,EAAE,4BAA4B,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACvG"}
@@ -1,11 +1,4 @@
1
- export * from "./attributes.js";
2
- export * from "./block-state.js";
3
- export * from "./index-set.js";
4
- export * from "./repository.js";
5
- export * from "./service.js";
6
- export * from "./snapshots.js";
7
1
  export * from "./state.js";
8
- export * from "./state-verifier.js";
9
2
  export * from "./store.js";
10
3
  export * from "./wallets.js";
11
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../source/contracts/state/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../source/contracts/state/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC"}
@@ -1,11 +1,4 @@
1
- export * from "./attributes.js";
2
- export * from "./block-state.js";
3
- export * from "./index-set.js";
4
- export * from "./repository.js";
5
- export * from "./service.js";
6
- export * from "./snapshots.js";
7
1
  export * from "./state.js";
8
- export * from "./state-verifier.js";
9
2
  export * from "./store.js";
10
3
  export * from "./wallets.js";
11
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../source/contracts/state/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../source/contracts/state/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC"}
@@ -1,27 +1,13 @@
1
1
  import { Block, Commit, CommitHandler } from "../crypto/index.js";
2
- import { JsonObject } from "../types/index.js";
3
- import { StateRepositoryChange } from "./repository.js";
4
- import { WalletRepository, WalletRepositoryChange } from "./wallets.js";
5
- export type StoreChange = {
6
- walletRepository: WalletRepositoryChange;
7
- store: StateRepositoryChange;
8
- };
9
2
  export interface Store extends CommitHandler {
10
- readonly walletRepository: WalletRepository;
11
3
  getGenesisCommit(): Commit;
12
4
  setGenesisCommit(block: Commit): void;
13
- getLastHeight(): number;
14
5
  getLastBlock(): Block;
15
6
  setLastBlock(block: Block): void;
7
+ setHeight(height: number): void;
8
+ getHeight(): number;
9
+ setTotalRound(totalRound: number): void;
16
10
  getTotalRound(): number;
17
- hasAttribute(key: string): boolean;
18
- getAttribute<T>(key: string): T;
19
- setAttribute<T>(key: string, value: T): void;
20
- commitChanges(): void;
21
- toJson(): JsonObject;
22
- fromJson(data: JsonObject): void;
23
- changesToJson(): StoreChange;
24
- applyChanges(changes: StoreChange): void;
25
11
  }
26
12
  export type StoreFactory = (originalStore?: Store) => Store;
27
13
  //# sourceMappingURL=store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../source/contracts/state/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAExE,MAAM,MAAM,WAAW,GAAG;IACzB,gBAAgB,EAAE,sBAAsB,CAAC;IACzC,KAAK,EAAE,qBAAqB,CAAC;CAC7B,CAAC;AAEF,MAAM,WAAW,KAAM,SAAQ,aAAa;IAC3C,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAE5C,gBAAgB,IAAI,MAAM,CAAC;IAC3B,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtC,aAAa,IAAI,MAAM,CAAC;IACxB,YAAY,IAAI,KAAK,CAAC;IACtB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAEjC,aAAa,IAAI,MAAM,CAAC;IAExB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACnC,YAAY,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC;IAChC,YAAY,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;IAE7C,aAAa,IAAI,IAAI,CAAC;IAEtB,MAAM,IAAI,UAAU,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IAEjC,aAAa,IAAI,WAAW,CAAC;IAC7B,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;CACzC;AAED,MAAM,MAAM,YAAY,GAAG,CAAC,aAAa,CAAC,EAAE,KAAK,KAAK,KAAK,CAAC"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../source/contracts/state/store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAElE,MAAM,WAAW,KAAM,SAAQ,aAAa;IAC3C,gBAAgB,IAAI,MAAM,CAAC;IAC3B,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtC,YAAY,IAAI,KAAK,CAAC;IACtB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAEjC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,SAAS,IAAI,MAAM,CAAC;IAEpB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,aAAa,IAAI,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,YAAY,GAAG,CAAC,aAAa,CAAC,EAAE,KAAK,KAAK,KAAK,CAAC"}
@@ -1,32 +1,6 @@
1
1
  import { BigNumber } from "@mainsail/utils";
2
- import { JsonObject } from "type-fest";
3
- import { BlockData, MultiSignatureAsset } from "../crypto/index.js";
4
- import { StateRepository, StateRepositoryChange } from "./repository.js";
5
- export interface WalletIndex {
6
- has(key: string): boolean;
7
- get(key: string): Wallet | undefined;
8
- set(key: string, wallet: Wallet): void;
9
- forget(key: string): void;
10
- entries(): ReadonlyArray<[string, Wallet]>;
11
- values(): ReadonlyArray<Wallet>;
12
- keys(): string[];
13
- size(): number;
14
- clear(): void;
15
- }
16
- export declare enum WalletIndexes {
17
- Addresses = "addresses",
18
- PublicKeys = "publicKeys",
19
- Usernames = "usernames",
20
- Resignations = "resignations",
21
- Validators = "validators"
22
- }
23
- export interface WalletChange extends StateRepositoryChange {
24
- address: string;
25
- }
26
- export interface Wallet extends Omit<StateRepository, "fromJson" | "commitChanges" | "changesToJson"> {
2
+ export interface Wallet {
27
3
  getAddress(): string;
28
- getPublicKey(): string | undefined;
29
- setPublicKey(publicKey: string): void;
30
4
  getBalance(): BigNumber;
31
5
  setBalance(balance: BigNumber): void;
32
6
  increaseBalance(balance: BigNumber): Wallet;
@@ -35,86 +9,12 @@ export interface Wallet extends Omit<StateRepository, "fromJson" | "commitChange
35
9
  setNonce(nonce: BigNumber): void;
36
10
  increaseNonce(): void;
37
11
  decreaseNonce(): void;
38
- isValidator(): boolean;
39
- hasVoted(): boolean;
40
- hasMultiSignature(): boolean;
41
- clone(walletRepository: WalletRepository): Wallet;
42
- getOriginal(): Wallet;
43
- fromJson(data: JsonObject): Wallet;
44
- commitChanges(walletRepository: WalletRepository): void;
45
- changesToJson(): WalletChange;
46
- toString(): string;
47
12
  }
48
13
  export interface ValidatorWallet {
49
- getWallet(): Wallet;
50
- getWalletPublicKey(): string;
51
- getConsensusPublicKey(): string;
52
- getVoteBalance(): BigNumber;
53
- getRank(): number;
54
- setRank(rank: number): void;
55
- unsetRank(): void;
56
- getApproval(): number;
57
- setApproval(approval: number): void;
58
- unsetApproval(): void;
59
- isResigned(): boolean;
60
- toString(): string;
61
- }
62
- export type WalletFactory = (address: string, walletRepository: WalletRepository, wallet?: Wallet) => Wallet;
63
- export type ValidatorWalletFactory = (wallet: Wallet) => ValidatorWallet;
64
- export interface WalletValidatorAttributes {
65
- username: string;
14
+ address: string;
15
+ blsPublicKey: string;
66
16
  voteBalance: BigNumber;
67
- rank?: number;
68
- lastBlock?: BlockData;
69
- round?: number;
70
- resigned?: boolean;
71
- }
72
- export type WalletMultiSignatureAttributes = MultiSignatureAsset & {
73
- legacy?: boolean;
74
- };
75
- export type WalletRepositoryChange = {
76
- wallets: WalletChange[];
77
- indexes: {
78
- [index: string]: {
79
- forgets: string[];
80
- sets: Record<string, string>;
81
- };
82
- };
83
- };
84
- export interface WalletRepository {
85
- allByAddress(): ReadonlyArray<Wallet>;
86
- allByPublicKey(): ReadonlyArray<Wallet>;
87
- allValidators(): ReadonlyArray<Wallet>;
88
- allByIndex(indexName: string): ReadonlyArray<Wallet>;
89
- findByAddress(address: string): Wallet;
90
- findByPublicKey(publicKey: string): Promise<Wallet>;
91
- findByUsername(username: string): Wallet;
92
- findByIndex(index: string, key: string): Wallet;
93
- hasByAddress(address: string): boolean;
94
- hasByPublicKey(publicKey: string): boolean;
95
- hasByUsername(username: string): boolean;
96
- hasByIndex(indexName: string, key: string): boolean;
97
- getIndex(name: string): WalletIndex;
98
- setOnIndex(index: string, key: string, wallet: Wallet): void;
99
- forgetOnIndex(index: string, key: string): void;
100
- sizeOfIndex(index: string): number;
101
- setDirtyWallet(wallet: Wallet): void;
102
- getDirtyWallets(): IterableIterator<Wallet>;
103
- commitChanges(): void;
104
- changesToJson(): WalletRepositoryChange;
105
- applyChanges(changes: WalletRepositoryChange): void;
106
- }
107
- export type WalletRepositoryFactory = (originalWalletRepository?: WalletRepository) => WalletRepository;
108
- export type WalletRepositoryBySenderFactory = (originalWalletRepository: WalletRepository, publicKey: string) => Promise<WalletRepository>;
109
- export declare enum SearchScope {
110
- Wallets = 0,
111
- Validators = 1,
112
- Locks = 2,
113
- Entities = 3
114
- }
115
- export interface SearchContext<T = any> {
116
- query: Record<string, string[]>;
117
- entries: ReadonlyArray<T>;
118
- defaultOrder: string[];
17
+ votersCount: number;
18
+ isResigned: boolean;
119
19
  }
120
20
  //# sourceMappingURL=wallets.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wallets.d.ts","sourceRoot":"","sources":["../../../source/contracts/state/wallets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wallets.d.ts","sourceRoot":"","sources":["../../../source/contracts/state/wallets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,MAAM,WAAW,MAAM;IACtB,UAAU,IAAI,MAAM,CAAC;IAErB,UAAU,IAAI,SAAS,CAAC;IACxB,UAAU,CAAC,OAAO,EAAE,SAAS,GAAG,IAAI,CAAC;IACrC,eAAe,CAAC,OAAO,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5C,eAAe,CAAC,OAAO,EAAE,SAAS,GAAG,MAAM,CAAC;IAE5C,QAAQ,IAAI,SAAS,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IACjC,aAAa,IAAI,IAAI,CAAC;IACtB,aAAa,IAAI,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,SAAS,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;CACpB"}
@@ -1,16 +1,2 @@
1
- export var WalletIndexes;
2
- (function (WalletIndexes) {
3
- WalletIndexes["Addresses"] = "addresses";
4
- WalletIndexes["PublicKeys"] = "publicKeys";
5
- WalletIndexes["Usernames"] = "usernames";
6
- WalletIndexes["Resignations"] = "resignations";
7
- WalletIndexes["Validators"] = "validators";
8
- })(WalletIndexes || (WalletIndexes = {}));
9
- export var SearchScope;
10
- (function (SearchScope) {
11
- SearchScope[SearchScope["Wallets"] = 0] = "Wallets";
12
- SearchScope[SearchScope["Validators"] = 1] = "Validators";
13
- SearchScope[SearchScope["Locks"] = 2] = "Locks";
14
- SearchScope[SearchScope["Entities"] = 3] = "Entities";
15
- })(SearchScope || (SearchScope = {}));
1
+ export {};
16
2
  //# sourceMappingURL=wallets.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"wallets.js","sourceRoot":"","sources":["../../../source/contracts/state/wallets.ts"],"names":[],"mappings":"AAoBA,MAAM,CAAN,IAAY,aAMX;AAND,WAAY,aAAa;IACxB,wCAAuB,CAAA;IACvB,0CAAyB,CAAA;IACzB,wCAAuB,CAAA;IACvB,8CAA6B,CAAA;IAC7B,0CAAyB,CAAA;AAC1B,CAAC,EANW,aAAa,KAAb,aAAa,QAMxB;AAkHD,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;IACtB,mDAAO,CAAA;IACP,yDAAU,CAAA;IACV,+CAAK,CAAA;IACL,qDAAQ,CAAA;AACT,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB"}
1
+ {"version":3,"file":"wallets.js","sourceRoot":"","sources":["../../../source/contracts/state/wallets.ts"],"names":[],"mappings":""}
@@ -1,10 +1,7 @@
1
1
  /// <reference types="node" resolution-mode="require"/>
2
- import { CommitHandler, Transaction } from "../crypto/index.js";
2
+ import { CommitHandler } from "../crypto/index.js";
3
3
  export interface Client extends CommitHandler {
4
- setFailedTransactions(transactions: Transaction[]): void;
5
4
  getTransactionBytes(): Promise<Buffer[]>;
6
- listSnapshots(): Promise<number[]>;
7
- importSnapshot(height: number): Promise<void>;
8
5
  getStatus(): Promise<{
9
6
  height: number;
10
7
  version: string;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../source/contracts/transaction-pool/client.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAChE,MAAM,WAAW,MAAO,SAAQ,aAAa;IAC5C,qBAAqB,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IACzD,mBAAmB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACzC,aAAa,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACnC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,SAAS,IAAI,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC1D"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../source/contracts/transaction-pool/client.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,MAAM,WAAW,MAAO,SAAQ,aAAa;IAC5C,mBAAmB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACzC,SAAS,IAAI,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC1D"}
@@ -2,13 +2,12 @@ import { Transaction } from "../crypto/index.js";
2
2
  import { SenderMempool } from "./sender-mempool.js";
3
3
  export interface Mempool {
4
4
  getSize(): number;
5
- hasSenderMempool(senderPublicKey: string): boolean;
6
- getSenderMempool(senderPublicKey: string): SenderMempool;
5
+ hasSenderMempool(address: string): boolean;
6
+ getSenderMempool(address: string): SenderMempool;
7
7
  getSenderMempools(): Iterable<SenderMempool>;
8
8
  addTransaction(transaction: Transaction): Promise<void>;
9
- removeTransaction(senderPublicKey: string, id: string): Promise<Transaction[]>;
10
- removeForgedTransaction(senderPublicKey: string, id: string): Promise<Transaction[]>;
11
- fixInvalidStates(): Promise<Transaction[]>;
9
+ removeTransaction(address: string, id: string): Promise<Transaction[]>;
10
+ reAddTransactions(addresses: string[]): Promise<Transaction[]>;
12
11
  flush(): void;
13
12
  }
14
13
  //# sourceMappingURL=mempool.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mempool.d.ts","sourceRoot":"","sources":["../../../source/contracts/transaction-pool/mempool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,WAAW,OAAO;IACvB,OAAO,IAAI,MAAM,CAAC;IAElB,gBAAgB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC;IACnD,gBAAgB,CAAC,eAAe,EAAE,MAAM,GAAG,aAAa,CAAC;IACzD,iBAAiB,IAAI,QAAQ,CAAC,aAAa,CAAC,CAAC;IAE7C,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,iBAAiB,CAAC,eAAe,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAC/E,uBAAuB,CAAC,eAAe,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAErF,gBAAgB,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAE3C,KAAK,IAAI,IAAI,CAAC;CACd"}
1
+ {"version":3,"file":"mempool.d.ts","sourceRoot":"","sources":["../../../source/contracts/transaction-pool/mempool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,WAAW,OAAO;IACvB,OAAO,IAAI,MAAM,CAAC;IAElB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3C,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,CAAC;IACjD,iBAAiB,IAAI,QAAQ,CAAC,aAAa,CAAC,CAAC;IAE7C,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACvE,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAE/D,KAAK,IAAI,IAAI,CAAC;CACd"}
@@ -1,4 +1,4 @@
1
- import { Transaction, TransactionType, TransactionTypeGroup } from "../crypto/index.js";
1
+ import { Transaction } from "../crypto/index.js";
2
2
  export type QueryPredicate = (transaction: Transaction) => Promise<boolean>;
3
3
  export interface Query {
4
4
  getAll(): QueryIterable;
@@ -9,10 +9,6 @@ export interface Query {
9
9
  export interface QueryIterable {
10
10
  wherePredicate(predicate: QueryPredicate): QueryIterable;
11
11
  whereId(id: string): QueryIterable;
12
- whereType(type: TransactionType | number): QueryIterable;
13
- whereTypeGroup(typeGroup: TransactionTypeGroup | number): QueryIterable;
14
- whereVersion(version: number): QueryIterable;
15
- whereKind(transaction: Transaction): QueryIterable;
16
12
  has(): Promise<boolean>;
17
13
  first(): Promise<Transaction>;
18
14
  all(): Promise<Transaction[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../source/contracts/transaction-pool/query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAExF,MAAM,MAAM,cAAc,GAAG,CAAC,WAAW,EAAE,WAAW,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAE5E,MAAM,WAAW,KAAK;IACrB,MAAM,IAAI,aAAa,CAAC;IACxB,cAAc,CAAC,eAAe,EAAE,MAAM,GAAG,aAAa,CAAC;IACvD,qBAAqB,IAAI,aAAa,CAAC;IACvC,sBAAsB,IAAI,aAAa,CAAC;CACxC;AAED,MAAM,WAAW,aAAa;IAC7B,cAAc,CAAC,SAAS,EAAE,cAAc,GAAG,aAAa,CAAC;IACzD,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,CAAC;IACnC,SAAS,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,GAAG,aAAa,CAAC;IACzD,cAAc,CAAC,SAAS,EAAE,oBAAoB,GAAG,MAAM,GAAG,aAAa,CAAC;IACxE,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,CAAC;IAC7C,SAAS,CAAC,WAAW,EAAE,WAAW,GAAG,aAAa,CAAC;IAEnD,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IACxB,KAAK,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9B,GAAG,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;CAC9B"}
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../source/contracts/transaction-pool/query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,MAAM,cAAc,GAAG,CAAC,WAAW,EAAE,WAAW,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAE5E,MAAM,WAAW,KAAK;IACrB,MAAM,IAAI,aAAa,CAAC;IACxB,cAAc,CAAC,eAAe,EAAE,MAAM,GAAG,aAAa,CAAC;IACvD,qBAAqB,IAAI,aAAa,CAAC;IACvC,sBAAsB,IAAI,aAAa,CAAC;CACxC;AAED,MAAM,WAAW,aAAa;IAC7B,cAAc,CAAC,SAAS,EAAE,cAAc,GAAG,aAAa,CAAC;IACzD,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,CAAC;IAEnC,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IACxB,KAAK,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9B,GAAG,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;CAC9B"}
@@ -6,7 +6,7 @@ export interface SenderMempool {
6
6
  getFromLatest(): Iterable<Transaction>;
7
7
  addTransaction(transaction: Transaction): Promise<void>;
8
8
  removeTransaction(id: string): Transaction[];
9
- removeForgedTransaction(id: string): Transaction | undefined;
9
+ reAddTransactions(): Promise<Transaction[]>;
10
10
  }
11
- export type SenderMempoolFactory = (publicKey: string) => Promise<SenderMempool>;
11
+ export type SenderMempoolFactory = (address: string) => Promise<SenderMempool>;
12
12
  //# sourceMappingURL=sender-mempool.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sender-mempool.d.ts","sourceRoot":"","sources":["../../../source/contracts/transaction-pool/sender-mempool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,WAAW,aAAa;IAC7B,YAAY,IAAI,OAAO,CAAC;IACxB,OAAO,IAAI,MAAM,CAAC;IAElB,eAAe,IAAI,QAAQ,CAAC,WAAW,CAAC,CAAC;IACzC,aAAa,IAAI,QAAQ,CAAC,WAAW,CAAC,CAAC;IAEvC,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,EAAE,CAAC;IAC7C,uBAAuB,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAAC;CAC7D;AAED,MAAM,MAAM,oBAAoB,GAAG,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC"}
1
+ {"version":3,"file":"sender-mempool.d.ts","sourceRoot":"","sources":["../../../source/contracts/transaction-pool/sender-mempool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,WAAW,aAAa;IAC7B,YAAY,IAAI,OAAO,CAAC;IACxB,OAAO,IAAI,MAAM,CAAC;IAElB,eAAe,IAAI,QAAQ,CAAC,WAAW,CAAC,CAAC;IACzC,aAAa,IAAI,QAAQ,CAAC,WAAW,CAAC,CAAC;IAEvC,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,EAAE,CAAC;IAC7C,iBAAiB,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;CAC5C;AAED,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC"}
@@ -1,6 +1,8 @@
1
1
  import { Transaction } from "../crypto/transactions.js";
2
2
  export interface SenderState {
3
- configure(publicKey: string): Promise<SenderState>;
3
+ configure(address: string): Promise<SenderState>;
4
+ reset(): Promise<void>;
4
5
  apply(transaction: Transaction): Promise<void>;
6
+ revert(transaction: Transaction): void;
5
7
  }
6
8
  //# sourceMappingURL=sender-state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sender-state.d.ts","sourceRoot":"","sources":["../../../source/contracts/transaction-pool/sender-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,WAAW,WAAW;IAC3B,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IACnD,KAAK,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C"}
1
+ {"version":3,"file":"sender-state.d.ts","sourceRoot":"","sources":["../../../source/contracts/transaction-pool/sender-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,WAAW,WAAW;IAC3B,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IACjD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,KAAK,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;CACvC"}
@@ -1,9 +1,9 @@
1
- import { Block, Transaction } from "../crypto/index.js";
1
+ import { Transaction } from "../crypto/index.js";
2
2
  export interface Service {
3
3
  getPoolSize(): number;
4
4
  addTransaction(transaction: Transaction): Promise<void>;
5
5
  reAddTransactions(): Promise<void>;
6
- commit(block: Block, failedTransactionIds: string[]): Promise<void>;
6
+ commit(sendersAddresses: string[]): Promise<void>;
7
7
  flush(): Promise<void>;
8
8
  }
9
9
  //# sourceMappingURL=service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../source/contracts/transaction-pool/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAExD,MAAM,WAAW,OAAO;IACvB,WAAW,IAAI,MAAM,CAAC;IAEtB,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,oBAAoB,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../source/contracts/transaction-pool/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,WAAW,OAAO;IACvB,WAAW,IAAI,MAAM,CAAC;IAEtB,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,CAAC,gBAAgB,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB"}
@@ -1,23 +1,17 @@
1
1
  /// <reference types="node" resolution-mode="require"/>
2
- import { CommitHandler, Transaction } from "../crypto/index.js";
2
+ import { CommitHandler } from "../crypto/index.js";
3
3
  import { EventListener } from "../kernel/index.js";
4
4
  import { EventCallback, Subprocess } from "../kernel/ipc.js";
5
- import { StoreChange } from "../state/index.js";
6
5
  import { KeyValuePair } from "../types/index.js";
7
6
  export interface WorkerFlags extends KeyValuePair {
8
7
  }
9
8
  export interface WorkerScriptHandler {
10
9
  boot(flags: WorkerFlags): Promise<void>;
11
10
  getTransactions(): Promise<string[]>;
12
- importSnapshot(height: number): Promise<void>;
13
- commit(data: {
14
- block: string;
15
- failedTransactions: string[];
16
- store: StoreChange;
17
- }): Promise<void>;
11
+ commit(height: number, sendersAddresses: string[]): Promise<void>;
18
12
  setPeer(ip: string): Promise<void>;
19
13
  forgetPeer(ip: string): Promise<void>;
20
- start(): Promise<void>;
14
+ start(height: number): Promise<void>;
21
15
  reloadWebhooks(): Promise<void>;
22
16
  }
23
17
  export type WorkerFactory = () => Worker;
@@ -26,7 +20,6 @@ export type WorkerSubprocessFactory = () => WorkerSubprocess;
26
20
  export interface Worker extends Omit<WorkerScriptHandler, "commit" | "getTransactions">, CommitHandler, EventListener {
27
21
  getQueueSize(): number;
28
22
  kill(): Promise<number>;
29
- setFailedTransactions(transactions: Transaction[]): void;
30
23
  getTransactionBytes(): Promise<Buffer[]>;
31
24
  registerEventHandler(event: string, callback: EventCallback<any>): void;
32
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../../source/contracts/transaction-pool/worker.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,WAAW,WAAY,SAAQ,YAAY;CAAG;AAEpD,MAAM,WAAW,mBAAmB;IACnC,IAAI,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACrC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjG,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAChC;AAED,MAAM,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC;AAEzC,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAC;AAE/D,MAAM,MAAM,uBAAuB,GAAG,MAAM,gBAAgB,CAAC;AAE7D,MAAM,WAAW,MAAO,SAAQ,IAAI,CAAC,mBAAmB,EAAE,QAAQ,GAAG,iBAAiB,CAAC,EAAE,aAAa,EAAE,aAAa;IACpH,YAAY,IAAI,MAAM,CAAC;IACvB,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACxB,qBAAqB,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IACzD,mBAAmB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACzC,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;CACxE"}
1
+ {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../../source/contracts/transaction-pool/worker.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,WAAW,WAAY,SAAQ,YAAY;CAAG;AAEpD,MAAM,WAAW,mBAAmB;IACnC,IAAI,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACrC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAChC;AAED,MAAM,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC;AAEzC,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAC;AAE/D,MAAM,MAAM,uBAAuB,GAAG,MAAM,gBAAgB,CAAC;AAE7D,MAAM,WAAW,MAAO,SAAQ,IAAI,CAAC,mBAAmB,EAAE,QAAQ,GAAG,iBAAiB,CAAC,EAAE,aAAa,EAAE,aAAa;IACpH,YAAY,IAAI,MAAM,CAAC;IACvB,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACxB,mBAAmB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACzC,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;CACxE"}
@@ -1,52 +1,37 @@
1
1
  import { MultiSignatureAsset, Transaction, TransactionConstructor, TransactionData } from "./crypto/index.js";
2
2
  import { BlockContext, CommitKey, Instance, TransactionReceipt } from "./evm/index.js";
3
- import { AttributeType, Wallet, WalletRepository } from "./state/index.js";
3
+ import { Wallet } from "./state/index.js";
4
4
  export type TransactionHandlerConstructor = new () => TransactionHandler;
5
5
  export type TransactionHandlerContext = {
6
- walletRepository: WalletRepository;
7
6
  evm: {
8
7
  instance: Instance;
9
8
  blockContext: BlockContext;
10
9
  };
11
10
  };
12
- export interface TransactionApplyResult {
13
- gasUsed: number;
14
- receipt?: TransactionReceipt;
15
- }
16
11
  export interface TransactionHandler {
17
- verify(context: TransactionHandlerContext, transaction: Transaction): Promise<boolean>;
18
- throwIfCannotBeApplied(context: TransactionHandlerContext, transaction: Transaction, sender: Wallet): Promise<void>;
19
- throwIfCannotEnterPool(context: TransactionHandlerContext, transaction: Transaction): Promise<void>;
20
- apply(context: TransactionHandlerContext, transaction: Transaction): Promise<TransactionApplyResult>;
21
- applyToSender(context: TransactionHandlerContext, transaction: Transaction): Promise<TransactionApplyResult>;
22
- applyToRecipient(context: TransactionHandlerContext, transaction: Transaction): Promise<TransactionApplyResult>;
12
+ verify(transaction: Transaction): Promise<boolean>;
13
+ throwIfCannotBeApplied(transaction: Transaction, sender: Wallet): Promise<void>;
14
+ apply(context: TransactionHandlerContext, transaction: Transaction): Promise<TransactionReceipt>;
23
15
  emitEvents(transaction: Transaction): void;
24
16
  verifySignatures(wallet: Wallet, transaction: TransactionData, multiSignature?: MultiSignatureAsset): Promise<boolean>;
25
17
  getConstructor(): TransactionConstructor;
26
18
  dependencies(): ReadonlyArray<TransactionHandlerConstructor>;
27
- walletAttributes(): ReadonlyArray<{
28
- name: string;
29
- type: AttributeType;
30
- }>;
31
19
  isActivated(): Promise<boolean>;
32
20
  }
33
21
  export interface TransactionHandlerRegistry {
34
22
  initialize(): void;
35
23
  getRegisteredHandlers(): TransactionHandler[];
36
- getRegisteredHandlerByType(internalType: InternalTransactionType, version?: number): TransactionHandler;
24
+ getRegisteredHandlerByType(type: number, version?: number): TransactionHandler;
37
25
  getActivatedHandlers(): Promise<TransactionHandler[]>;
38
- getActivatedHandlerByType(internalType: InternalTransactionType, version?: number): Promise<TransactionHandler>;
26
+ getActivatedHandlerByType(type: number, version?: number): Promise<TransactionHandler>;
39
27
  getActivatedHandlerForData(transactionData: TransactionData): Promise<TransactionHandler>;
40
28
  }
41
29
  export interface TransactionHandlerProvider {
42
30
  isRegistrationRequired(): boolean;
43
31
  registerHandlers(): void;
44
32
  }
45
- export interface InternalTransactionType {
46
- toString(): string;
47
- }
48
33
  export interface TransactionTypeFactory {
49
- initialize(transactionTypes: Map<InternalTransactionType, Map<number, TransactionConstructor>>): any;
34
+ initialize(transactionTypes: Map<number, TransactionConstructor>): any;
50
35
  create(data: TransactionData): Transaction;
51
36
  get(type: number, typeGroup?: number, version?: number): TransactionConstructor;
52
37
  }
@@ -54,14 +39,11 @@ export interface TransactionValidatorContext {
54
39
  commitKey: CommitKey;
55
40
  gasLimit: number;
56
41
  timestamp: number;
57
- generatorPublicKey: string;
42
+ generatorAddress: string;
58
43
  }
59
44
  export interface TransactionValidator {
60
45
  getEvm(): Instance;
61
- validate(context: TransactionValidatorContext, transaction: Transaction): Promise<TransactionValidatorResult>;
62
- }
63
- export interface TransactionValidatorResult {
64
- readonly gasUsed: number;
46
+ validate(context: TransactionValidatorContext, transaction: Transaction): Promise<TransactionReceipt>;
65
47
  }
66
48
  export type TransactionValidatorFactory = () => TransactionValidator;
67
49
  //# sourceMappingURL=transactions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transactions.d.ts","sourceRoot":"","sources":["../../source/contracts/transactions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transactions.d.ts","sourceRoot":"","sources":["../../source/contracts/transactions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC9G,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACvF,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C,MAAM,MAAM,6BAA6B,GAAG,UAAU,kBAAkB,CAAC;AAEzE,MAAM,MAAM,yBAAyB,GAAG;IACvC,GAAG,EAAE;QACJ,QAAQ,EAAE,QAAQ,CAAC;QACnB,YAAY,EAAE,YAAY,CAAC;KAC3B,CAAC;CACF,CAAC;AAEF,MAAM,WAAW,kBAAkB;IAClC,MAAM,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEnD,sBAAsB,CAAC,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhF,KAAK,CAAC,OAAO,EAAE,yBAAyB,EAAE,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAEjG,UAAU,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IAE3C,gBAAgB,CACf,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,eAAe,EAC5B,cAAc,CAAC,EAAE,mBAAmB,GAClC,OAAO,CAAC,OAAO,CAAC,CAAC;IAGpB,cAAc,IAAI,sBAAsB,CAAC;IAEzC,YAAY,IAAI,aAAa,CAAC,6BAA6B,CAAC,CAAC;IAE7D,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,0BAA0B;IAC1C,UAAU,IAAI,IAAI,CAAC;IAEnB,qBAAqB,IAAI,kBAAkB,EAAE,CAAC;IAE9C,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAAC;IAE/E,oBAAoB,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAEtD,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAEvF,0BAA0B,CAAC,eAAe,EAAE,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;CAC1F;AAED,MAAM,WAAW,0BAA0B;IAC1C,sBAAsB,IAAI,OAAO,CAAC;IAElC,gBAAgB,IAAI,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,sBAAsB;IACtC,UAAU,CAAC,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,OAAE;IAElE,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,WAAW,CAAC;IAE3C,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,sBAAsB,CAAC;CAChF;AAED,MAAM,WAAW,2BAA2B;IAC3C,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,oBAAoB;IACpC,MAAM,IAAI,QAAQ,CAAC;IACnB,QAAQ,CAAC,OAAO,EAAE,2BAA2B,EAAE,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;CACtG;AAED,MAAM,MAAM,2BAA2B,GAAG,MAAM,oBAAoB,CAAC"}
@@ -1,9 +1,11 @@
1
1
  import { CommitHandler } from "./crypto/commit.js";
2
- import { Store, ValidatorWallet } from "./state/index.js";
2
+ import { ValidatorWallet } from "./state/index.js";
3
3
  export interface Service extends CommitHandler {
4
- restore(store: Store): void;
4
+ restore(): Promise<void>;
5
5
  getActiveValidators(): ValidatorWallet[];
6
+ getAllValidators(): ValidatorWallet[];
7
+ getDirtyValidators(): ValidatorWallet[];
6
8
  getValidator(validatorIndex: number): ValidatorWallet;
7
- getValidatorIndexByWalletPublicKey(walletPublicKey: string): number;
9
+ getValidatorIndexByWalletAddress(walletAddress: string): number;
8
10
  }
9
11
  //# sourceMappingURL=validator-set.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validator-set.d.ts","sourceRoot":"","sources":["../../source/contracts/validator-set.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAE1D,MAAM,WAAW,OAAQ,SAAQ,aAAa;IAC7C,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAC5B,mBAAmB,IAAI,eAAe,EAAE,CAAC;IACzC,YAAY,CAAC,cAAc,EAAE,MAAM,GAAG,eAAe,CAAC;IACtD,kCAAkC,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,CAAC;CACpE"}
1
+ {"version":3,"file":"validator-set.d.ts","sourceRoot":"","sources":["../../source/contracts/validator-set.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,WAAW,OAAQ,SAAQ,aAAa;IAC7C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,mBAAmB,IAAI,eAAe,EAAE,CAAC;IACzC,gBAAgB,IAAI,eAAe,EAAE,CAAC;IACtC,kBAAkB,IAAI,eAAe,EAAE,CAAC;IACxC,YAAY,CAAC,cAAc,EAAE,MAAM,GAAG,eAAe,CAAC;IACtD,gCAAgC,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAAC;CAChE"}
@@ -6,7 +6,7 @@ export interface ValidatorKeyPair {
6
6
  export interface Validator {
7
7
  configure(keyPair: ValidatorKeyPair): Validator;
8
8
  getConsensusPublicKey(): string;
9
- prepareBlock(generatorPublicKey: string, round: number, timestamp: number): Promise<Block>;
9
+ prepareBlock(generatorAddress: string, round: number, timestamp: number): Promise<Block>;
10
10
  propose(validatorIndex: number, round: number, validRound: number | undefined, block: Block, lockProof?: AggregatedSignature): Promise<Proposal>;
11
11
  prevote(validatorIndex: number, height: number, round: number, blockId: string | undefined): Promise<Prevote>;
12
12
  precommit(validatorIndex: number, height: number, round: number, blockId: string | undefined): Promise<Precommit>;
@@ -1 +1 @@
1
- {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../source/contracts/validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAEtG,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,SAAS;IACzB,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAChD,qBAAqB,IAAI,MAAM,CAAC;IAChC,YAAY,CAAC,kBAAkB,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC3F,OAAO,CACN,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,KAAK,EAAE,KAAK,EACZ,SAAS,CAAC,EAAE,mBAAmB,GAC7B,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrB,OAAO,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9G,SAAS,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;CAClH;AAED,MAAM,WAAW,mBAAmB;IACnC,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;IACvD,qBAAqB,IAAI,IAAI,CAAC;CAC9B"}
1
+ {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../source/contracts/validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAEtG,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,SAAS;IACzB,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAChD,qBAAqB,IAAI,MAAM,CAAC;IAChC,YAAY,CAAC,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IACzF,OAAO,CACN,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,KAAK,EAAE,KAAK,EACZ,SAAS,CAAC,EAAE,mBAAmB,GAC7B,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrB,OAAO,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9G,SAAS,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;CAClH;AAED,MAAM,WAAW,mBAAmB;IACnC,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;IACvD,qBAAqB,IAAI,IAAI,CAAC;CAC9B"}