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

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 (99) hide show
  1. package/distribution/contracts/crypto/block.d.ts +2 -2
  2. package/distribution/contracts/crypto/block.d.ts.map +1 -1
  3. package/distribution/contracts/crypto/networks.d.ts +0 -4
  4. package/distribution/contracts/crypto/networks.d.ts.map +1 -1
  5. package/distribution/contracts/evm/evm.d.ts +39 -4
  6. package/distribution/contracts/evm/evm.d.ts.map +1 -1
  7. package/distribution/contracts/evm/evm.js +1 -2
  8. package/distribution/contracts/evm/evm.js.map +1 -1
  9. package/distribution/contracts/evm/index.d.ts +1 -0
  10. package/distribution/contracts/evm/index.d.ts.map +1 -1
  11. package/distribution/contracts/evm/index.js +1 -0
  12. package/distribution/contracts/evm/index.js.map +1 -1
  13. package/distribution/contracts/evm/state.d.ts +4 -0
  14. package/distribution/contracts/evm/state.d.ts.map +1 -0
  15. package/distribution/contracts/evm/state.js +2 -0
  16. package/distribution/contracts/evm/state.js.map +1 -0
  17. package/distribution/contracts/evm/worker.d.ts +7 -1
  18. package/distribution/contracts/evm/worker.d.ts.map +1 -1
  19. package/distribution/contracts/index.d.ts +0 -1
  20. package/distribution/contracts/index.d.ts.map +1 -1
  21. package/distribution/contracts/index.js +0 -1
  22. package/distribution/contracts/index.js.map +1 -1
  23. package/distribution/contracts/network-generator.d.ts +0 -7
  24. package/distribution/contracts/network-generator.d.ts.map +1 -1
  25. package/distribution/contracts/processor.d.ts +4 -8
  26. package/distribution/contracts/processor.d.ts.map +1 -1
  27. package/distribution/contracts/serializer.d.ts +1 -1
  28. package/distribution/contracts/serializer.d.ts.map +1 -1
  29. package/distribution/contracts/state/index.d.ts +0 -7
  30. package/distribution/contracts/state/index.d.ts.map +1 -1
  31. package/distribution/contracts/state/index.js +0 -7
  32. package/distribution/contracts/state/index.js.map +1 -1
  33. package/distribution/contracts/state/store.d.ts +1 -16
  34. package/distribution/contracts/state/store.d.ts.map +1 -1
  35. package/distribution/contracts/state/wallets.d.ts +3 -105
  36. package/distribution/contracts/state/wallets.d.ts.map +1 -1
  37. package/distribution/contracts/state/wallets.js +1 -15
  38. package/distribution/contracts/state/wallets.js.map +1 -1
  39. package/distribution/contracts/transaction-pool/mempool.d.ts +4 -4
  40. package/distribution/contracts/transaction-pool/mempool.d.ts.map +1 -1
  41. package/distribution/contracts/transaction-pool/sender-mempool.d.ts +1 -1
  42. package/distribution/contracts/transaction-pool/sender-mempool.d.ts.map +1 -1
  43. package/distribution/contracts/transaction-pool/sender-state.d.ts +1 -1
  44. package/distribution/contracts/transaction-pool/sender-state.d.ts.map +1 -1
  45. package/distribution/contracts/transaction-pool/worker.d.ts +0 -3
  46. package/distribution/contracts/transaction-pool/worker.d.ts.map +1 -1
  47. package/distribution/contracts/transactions.d.ts +6 -21
  48. package/distribution/contracts/transactions.d.ts.map +1 -1
  49. package/distribution/contracts/validator-set.d.ts +3 -3
  50. package/distribution/contracts/validator-set.d.ts.map +1 -1
  51. package/distribution/contracts/validator.d.ts +1 -1
  52. package/distribution/contracts/validator.d.ts.map +1 -1
  53. package/distribution/exceptions/crypto.d.ts +1 -1
  54. package/distribution/exceptions/crypto.d.ts.map +1 -1
  55. package/distribution/exceptions/crypto.js +3 -4
  56. package/distribution/exceptions/crypto.js.map +1 -1
  57. package/distribution/exceptions/processor.js +1 -1
  58. package/distribution/exceptions/processor.js.map +1 -1
  59. package/distribution/exceptions/validation.d.ts +1 -1
  60. package/distribution/exceptions/validation.d.ts.map +1 -1
  61. package/distribution/exceptions/validation.js +2 -2
  62. package/distribution/exceptions/validation.js.map +1 -1
  63. package/distribution/identifiers.d.ts +2 -36
  64. package/distribution/identifiers.d.ts.map +1 -1
  65. package/distribution/identifiers.js +2 -36
  66. package/distribution/identifiers.js.map +1 -1
  67. package/package.json +2 -2
  68. package/distribution/contracts/fees.d.ts +0 -10
  69. package/distribution/contracts/fees.d.ts.map +0 -1
  70. package/distribution/contracts/fees.js +0 -2
  71. package/distribution/contracts/fees.js.map +0 -1
  72. package/distribution/contracts/state/attributes.d.ts +0 -22
  73. package/distribution/contracts/state/attributes.d.ts.map +0 -1
  74. package/distribution/contracts/state/attributes.js +0 -9
  75. package/distribution/contracts/state/attributes.js.map +0 -1
  76. package/distribution/contracts/state/block-state.d.ts +0 -12
  77. package/distribution/contracts/state/block-state.d.ts.map +0 -1
  78. package/distribution/contracts/state/block-state.js +0 -2
  79. package/distribution/contracts/state/block-state.js.map +0 -1
  80. package/distribution/contracts/state/index-set.d.ts +0 -5
  81. package/distribution/contracts/state/index-set.d.ts.map +0 -1
  82. package/distribution/contracts/state/index-set.js +0 -2
  83. package/distribution/contracts/state/index-set.js.map +0 -1
  84. package/distribution/contracts/state/repository.d.ts +0 -26
  85. package/distribution/contracts/state/repository.d.ts.map +0 -1
  86. package/distribution/contracts/state/repository.js +0 -2
  87. package/distribution/contracts/state/repository.js.map +0 -1
  88. package/distribution/contracts/state/service.d.ts +0 -11
  89. package/distribution/contracts/state/service.d.ts.map +0 -1
  90. package/distribution/contracts/state/service.js +0 -2
  91. package/distribution/contracts/state/service.js.map +0 -1
  92. package/distribution/contracts/state/snapshots.d.ts +0 -13
  93. package/distribution/contracts/state/snapshots.d.ts.map +0 -1
  94. package/distribution/contracts/state/snapshots.js +0 -2
  95. package/distribution/contracts/state/snapshots.js.map +0 -1
  96. package/distribution/contracts/state/state-verifier.d.ts +0 -4
  97. package/distribution/contracts/state/state-verifier.d.ts.map +0 -1
  98. package/distribution/contracts/state/state-verifier.js +0 -2
  99. package/distribution/contracts/state/state-verifier.js.map +0 -1
@@ -29,7 +29,7 @@ export interface BlockData {
29
29
  readonly reward: BigNumber;
30
30
  readonly payloadLength: number;
31
31
  readonly payloadHash: string;
32
- readonly generatorPublicKey: string;
32
+ readonly generatorAddress: string;
33
33
  readonly transactions: TransactionData[];
34
34
  }
35
35
  export interface BlockJson {
@@ -47,7 +47,7 @@ export interface BlockJson {
47
47
  readonly reward: string;
48
48
  readonly payloadLength: number;
49
49
  readonly payloadHash: string;
50
- readonly generatorPublicKey: string;
50
+ readonly generatorAddress: string;
51
51
  readonly serialized?: string;
52
52
  readonly transactions: TransactionJson[];
53
53
  }
@@ -1 +1 @@
1
- {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../../source/contracts/crypto/block.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../../source/contracts/crypto/block.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import { SpecId } from "../evm/evm.js";
2
- import { Fees } from "../fees.js";
3
2
  import { CommitJson } from "./commit.js";
4
3
  export type NetworkConfig = {
5
4
  genesisBlock: CommitJson;
@@ -46,7 +45,6 @@ export type MilestoneGas = {
46
45
  maximumGasLimit: number;
47
46
  minimumGasFee: number;
48
47
  nativeFeeMultiplier: number;
49
- nativeGasLimits: Record<string, number>;
50
48
  };
51
49
  export type Milestone = {
52
50
  height: number;
@@ -56,8 +54,6 @@ export type Milestone = {
56
54
  epoch: string;
57
55
  evmSpec: SpecId;
58
56
  gas: MilestoneGas;
59
- fees: Fees;
60
- multiPaymentLimit: number;
61
57
  reward: string;
62
58
  satoshi: MilestoneSatoshi;
63
59
  timeouts: MilestoneTimeouts;
@@ -1 +1 @@
1
- {"version":3,"file":"networks.d.ts","sourceRoot":"","sources":["../../../source/contracts/crypto/networks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,MAAM,aAAa,GAAG;IAC3B,YAAY,EAAE,UAAU,CAAC;IACzB,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAClC,YAAY,EAAE,UAAU,CAAC;IACzB,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAC/B,OAAO,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;KACjB,CAAC;CACF,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACrB,CAAC;AACF,MAAM,MAAM,iBAAiB,GAAG;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7B,KAAK,EAAE,cAAc,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,YAAY,CAAC;IAClB,IAAI,EAAE,IAAI,CAAC;IACX,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG;IACnD,MAAM,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC;AAE3C,MAAM,MAAM,aAAa,GAAG;KAAG,GAAG,IAAI,YAAY,CAAC,CAAC,EAAE,MAAM;CAAE,CAAC;AAE/D,MAAM,MAAM,qBAAqB,CAAC,CAAC,IAAI;IACtC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;CACf,CAAC"}
1
+ {"version":3,"file":"networks.d.ts","sourceRoot":"","sources":["../../../source/contracts/crypto/networks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,MAAM,aAAa,GAAG;IAC3B,YAAY,EAAE,UAAU,CAAC;IACzB,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAClC,YAAY,EAAE,UAAU,CAAC;IACzB,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAC/B,OAAO,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;KACjB,CAAC;CACF,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACrB,CAAC;AACF,MAAM,MAAM,iBAAiB,GAAG;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7B,KAAK,EAAE,cAAc,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,YAAY,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG;IACnD,MAAM,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC;AAE3C,MAAM,MAAM,aAAa,GAAG;KAAG,GAAG,IAAI,YAAY,CAAC,CAAC,EAAE,MAAM;CAAE,CAAC;AAE/D,MAAM,MAAM,qBAAqB,CAAC,CAAC,IAAI;IACtC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;CACf,CAAC"}
@@ -2,15 +2,25 @@
2
2
  import { CommitHandler } from "../crypto/commit.js";
3
3
  export declare enum EvmMode {
4
4
  Ephemeral = 0,
5
- Mock = 1,
6
- Persistent = 2
5
+ Persistent = 1
6
+ }
7
+ export interface GenesisInfo {
8
+ readonly account: string;
9
+ readonly deployerAccount: string;
10
+ readonly validatorContract: string;
11
+ readonly initialSupply: bigint;
7
12
  }
8
13
  export interface Instance extends CommitHandler {
14
+ prepareNextCommit(context: PrepareNextCommitContext): Promise<void>;
9
15
  process(txContext: TransactionContext): Promise<ProcessResult>;
10
16
  view(viewContext: TransactionViewContext): Promise<ViewResult>;
17
+ initializeGenesis(commit: GenesisInfo): Promise<void>;
11
18
  getAccountInfo(address: string): Promise<AccountInfo>;
12
- updateAccountInfo(context: AccountUpdateContext): Promise<void>;
13
- stateHash(currentHash: string): Promise<string>;
19
+ calculateTopValidators(context: CalculateTopValidatorsContext): Promise<void>;
20
+ updateRewardsAndVotes(context: UpdateRewardsAndVotesContext): Promise<void>;
21
+ stateHash(commitKey: CommitKey, currentHash: string): Promise<string>;
22
+ codeAt(address: string): Promise<string>;
23
+ storageAt(address: string, slot: bigint): Promise<string>;
14
24
  mode(): EvmMode;
15
25
  }
16
26
  export interface ProcessResult {
@@ -27,16 +37,27 @@ export interface AccountInfo {
27
37
  readonly nonce: bigint;
28
38
  readonly balance: bigint;
29
39
  }
40
+ export interface AccountUpdate {
41
+ readonly address: string;
42
+ readonly balance: bigint;
43
+ readonly nonce: bigint;
44
+ }
30
45
  export interface AccountUpdateContext {
31
46
  readonly account: string;
32
47
  readonly commitKey: CommitKey;
33
48
  readonly nonce: bigint;
34
49
  }
50
+ export interface PrepareNextCommitContext {
51
+ readonly commitKey: CommitKey;
52
+ }
35
53
  export interface TransactionContext {
36
54
  readonly caller: string;
37
55
  /** Omit recipient when deploying a contract */
38
56
  readonly recipient?: string;
39
57
  readonly gasLimit: bigint;
58
+ readonly value: bigint;
59
+ readonly gasPrice?: bigint;
60
+ readonly nonce: bigint;
40
61
  readonly data: Buffer;
41
62
  readonly blockContext: BlockContext;
42
63
  readonly txHash: string;
@@ -55,6 +76,20 @@ export interface BlockContext {
55
76
  readonly timestamp: bigint;
56
77
  readonly validatorAddress: string;
57
78
  }
79
+ export interface CalculateTopValidatorsContext {
80
+ readonly commitKey: CommitKey;
81
+ readonly timestamp: bigint;
82
+ readonly validatorAddress: string;
83
+ readonly activeValidators: bigint;
84
+ readonly specId: SpecId;
85
+ }
86
+ export interface UpdateRewardsAndVotesContext {
87
+ readonly commitKey: CommitKey;
88
+ readonly timestamp: bigint;
89
+ readonly validatorAddress: string;
90
+ readonly blockReward: bigint;
91
+ readonly specId: SpecId;
92
+ }
58
93
  export interface CommitKey {
59
94
  readonly height: bigint;
60
95
  readonly round: bigint;
@@ -1 +1 @@
1
- {"version":3,"file":"evm.d.ts","sourceRoot":"","sources":["../../../source/contracts/evm/evm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evm.d.ts","sourceRoot":"","sources":["../../../source/contracts/evm/evm.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,7 @@
1
1
  export var EvmMode;
2
2
  (function (EvmMode) {
3
3
  EvmMode[EvmMode["Ephemeral"] = 0] = "Ephemeral";
4
- EvmMode[EvmMode["Mock"] = 1] = "Mock";
5
- EvmMode[EvmMode["Persistent"] = 2] = "Persistent";
4
+ EvmMode[EvmMode["Persistent"] = 1] = "Persistent";
6
5
  })(EvmMode || (EvmMode = {}));
7
6
  // Supported EVM specs
8
7
  // https://github.com/ethereum/execution-specs
@@ -1 +1 @@
1
- {"version":3,"file":"evm.js","sourceRoot":"","sources":["../../../source/contracts/evm/evm.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,OAIX;AAJD,WAAY,OAAO;IAClB,+CAAS,CAAA;IACT,qCAAI,CAAA;IACJ,iDAAU,CAAA;AACX,CAAC,EAJW,OAAO,KAAP,OAAO,QAIlB;AA0ED,sBAAsB;AACtB,8CAA8C;AAC9C,MAAM,CAAN,IAAY,MAGX;AAHD,WAAY,MAAM;IACjB,+BAAqB,CAAA;IACrB,2BAAiB,CAAA;AAClB,CAAC,EAHW,MAAM,KAAN,MAAM,QAGjB"}
1
+ {"version":3,"file":"evm.js","sourceRoot":"","sources":["../../../source/contracts/evm/evm.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,OAGX;AAHD,WAAY,OAAO;IAClB,+CAAS,CAAA;IACT,iDAAU,CAAA;AACX,CAAC,EAHW,OAAO,KAAP,OAAO,QAGlB;AAsHD,sBAAsB;AACtB,8CAA8C;AAC9C,MAAM,CAAN,IAAY,MAGX;AAHD,WAAY,MAAM;IACjB,+BAAqB,CAAA;IACrB,2BAAiB,CAAA;AAClB,CAAC,EAHW,MAAM,KAAN,MAAM,QAGjB"}
@@ -1,4 +1,5 @@
1
1
  export * from "./evm.js";
2
2
  export * from "./gas-fee.js";
3
+ export * from "./state.js";
3
4
  export * from "./worker.js";
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../source/contracts/evm/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../source/contracts/evm/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export * from "./evm.js";
2
2
  export * from "./gas-fee.js";
3
+ export * from "./state.js";
3
4
  export * from "./worker.js";
4
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../source/contracts/evm/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../source/contracts/evm/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC"}
@@ -0,0 +1,4 @@
1
+ export interface State {
2
+ peerCount: number;
3
+ }
4
+ //# sourceMappingURL=state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../source/contracts/evm/state.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,KAAK;IACrB,SAAS,EAAE,MAAM,CAAC;CAClB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../source/contracts/evm/state.ts"],"names":[],"mappings":""}
@@ -1,14 +1,20 @@
1
+ import { CommitHandler } from "../crypto/index.js";
2
+ import { EventListener } from "../kernel/index.js";
1
3
  import { Subprocess } from "../kernel/ipc.js";
2
4
  import { KeyValuePair } from "../types/index.js";
3
5
  export interface WorkerFlags extends KeyValuePair {
4
6
  }
5
7
  export interface WorkerScriptHandler {
6
8
  boot(flags: WorkerFlags): Promise<void>;
9
+ setPeerCount(peerCount: number): Promise<void>;
10
+ commit(data: {
11
+ block: string;
12
+ }): Promise<void>;
7
13
  }
8
14
  export type WorkerFactory = () => Worker;
9
15
  export type WorkerSubprocess = Subprocess<WorkerScriptHandler>;
10
16
  export type WorkerSubprocessFactory = () => WorkerSubprocess;
11
- export interface Worker extends WorkerScriptHandler {
17
+ export interface Worker extends WorkerScriptHandler, CommitHandler, EventListener {
12
18
  getQueueSize(): number;
13
19
  kill(): Promise<number>;
14
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../../source/contracts/evm/worker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,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;CACxC;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,mBAAmB;IAClD,YAAY,IAAI,MAAM,CAAC;IACvB,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CACxB"}
1
+ {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../../source/contracts/evm/worker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,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,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C;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,mBAAmB,EAAE,aAAa,EAAE,aAAa;IAChF,YAAY,IAAI,MAAM,CAAC;IACvB,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CACxB"}
@@ -5,7 +5,6 @@ export * as ConsensusStorage from "./consensus-storage.js";
5
5
  export * as Crypto from "./crypto/index.js";
6
6
  export * as Database from "./database.js";
7
7
  export * as Evm from "./evm/index.js";
8
- export * as Fee from "./fees.js";
9
8
  export * as Kernel from "./kernel/index.js";
10
9
  export * as NetworkGenerator from "./network-generator.js";
11
10
  export * as P2P from "./p2p/index.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../source/contracts/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAClD,OAAO,KAAK,gBAAgB,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,GAAG,MAAM,WAAW,CAAC;AACjC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,gBAAgB,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,eAAe,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,YAAY,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../source/contracts/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAClD,OAAO,KAAK,gBAAgB,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,gBAAgB,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,eAAe,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,YAAY,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC"}
@@ -5,7 +5,6 @@ export * as ConsensusStorage from "./consensus-storage.js";
5
5
  export * as Crypto from "./crypto/index.js";
6
6
  export * as Database from "./database.js";
7
7
  export * as Evm from "./evm/index.js";
8
- export * as Fee from "./fees.js";
9
8
  export * as Kernel from "./kernel/index.js";
10
9
  export * as NetworkGenerator from "./network-generator.js";
11
10
  export * as P2P from "./p2p/index.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../source/contracts/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAClD,OAAO,KAAK,gBAAgB,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,GAAG,MAAM,WAAW,CAAC;AACjC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,gBAAgB,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,eAAe,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,YAAY,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../source/contracts/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAClD,OAAO,KAAK,gBAAgB,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,gBAAgB,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,eAAe,MAAM,6BAA6B,CAAC;AAC/D,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,YAAY,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC"}
@@ -15,13 +15,6 @@ export type MilestoneOptions = {
15
15
  blockTime: number;
16
16
  epoch: Date;
17
17
  vendorFieldLength: number;
18
- address: {
19
- bech32m: string;
20
- } | {
21
- base58: number;
22
- } | {
23
- keccak256: boolean;
24
- };
25
18
  };
26
19
  export type NetworkOptions = {
27
20
  network: string;
@@ -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,12 @@
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
5
  getLastHeight(): number;
14
6
  getLastBlock(): Block;
15
7
  setLastBlock(block: Block): void;
8
+ setTotalRoundAndHeight(totalRound: number, height: number): void;
16
9
  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
10
  }
26
11
  export type StoreFactory = (originalStore?: Store) => Store;
27
12
  //# 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,aAAa,IAAI,MAAM,CAAC;IACxB,YAAY,IAAI,KAAK,CAAC;IACtB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAEjC,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACjE,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,10 @@ 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[];
119
17
  }
120
18
  //# 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;CACvB"}
@@ -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":""}