@psavelis/enterprise-blockchain 0.1.0 → 1.1.1
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.
- package/README.md +15 -2
- package/dist/aid-settlement/application/reconciler.d.ts +13 -0
- package/dist/aid-settlement/application/reconciler.d.ts.map +1 -0
- package/dist/aid-settlement/application/reconciler.js +77 -0
- package/dist/aid-settlement/domain/entities.d.ts +24 -0
- package/dist/aid-settlement/domain/entities.d.ts.map +1 -0
- package/dist/aid-settlement/domain/entities.js +1 -0
- package/dist/aid-settlement/domain/ports.d.ts +10 -0
- package/dist/aid-settlement/domain/ports.d.ts.map +1 -0
- package/dist/aid-settlement/domain/ports.js +1 -0
- package/dist/aid-settlement/index.d.ts +19 -0
- package/dist/aid-settlement/index.d.ts.map +1 -0
- package/dist/aid-settlement/index.js +23 -0
- package/dist/aid-settlement/infrastructure/in-memory-store.d.ts +12 -0
- package/dist/aid-settlement/infrastructure/in-memory-store.d.ts.map +1 -0
- package/dist/aid-settlement/infrastructure/in-memory-store.js +17 -0
- package/dist/credentialing/application/clearance-evaluator.d.ts +10 -0
- package/dist/credentialing/application/clearance-evaluator.d.ts.map +1 -0
- package/dist/credentialing/application/clearance-evaluator.js +63 -0
- package/dist/credentialing/domain/entities.d.ts +28 -0
- package/dist/credentialing/domain/entities.d.ts.map +1 -0
- package/dist/credentialing/domain/entities.js +1 -0
- package/dist/credentialing/domain/ports.d.ts +9 -0
- package/dist/credentialing/domain/ports.d.ts.map +1 -0
- package/dist/credentialing/domain/ports.js +1 -0
- package/dist/credentialing/index.d.ts +19 -0
- package/dist/credentialing/index.d.ts.map +1 -0
- package/dist/credentialing/index.js +23 -0
- package/dist/credentialing/infrastructure/in-memory-store.d.ts +11 -0
- package/dist/credentialing/infrastructure/in-memory-store.d.ts.map +1 -0
- package/dist/credentialing/infrastructure/in-memory-store.js +14 -0
- package/dist/hsm/application/asymmetric-key-service.d.ts +23 -0
- package/dist/hsm/application/asymmetric-key-service.d.ts.map +1 -0
- package/dist/hsm/application/asymmetric-key-service.js +109 -0
- package/dist/hsm/application/envelope-encryption-service.d.ts +18 -0
- package/dist/hsm/application/envelope-encryption-service.d.ts.map +1 -0
- package/dist/hsm/application/envelope-encryption-service.js +59 -0
- package/dist/hsm/application/symmetric-key-service.d.ts +34 -0
- package/dist/hsm/application/symmetric-key-service.d.ts.map +1 -0
- package/dist/hsm/application/symmetric-key-service.js +107 -0
- package/dist/hsm/domain/entities.d.ts +104 -0
- package/dist/hsm/domain/entities.d.ts.map +1 -0
- package/dist/hsm/domain/entities.js +10 -0
- package/dist/hsm/domain/ports.d.ts +20 -0
- package/dist/hsm/domain/ports.d.ts.map +1 -0
- package/dist/hsm/domain/ports.js +1 -0
- package/dist/hsm/index.d.ts +48 -0
- package/dist/hsm/index.d.ts.map +1 -0
- package/dist/hsm/index.js +97 -0
- package/dist/hsm/infrastructure/audit-log-factory.d.ts +59 -0
- package/dist/hsm/infrastructure/audit-log-factory.d.ts.map +1 -0
- package/dist/hsm/infrastructure/audit-log-factory.js +95 -0
- package/dist/hsm/infrastructure/audit-log.d.ts +8 -0
- package/dist/hsm/infrastructure/audit-log.d.ts.map +1 -0
- package/dist/hsm/infrastructure/audit-log.js +18 -0
- package/dist/hsm/infrastructure/file-audit-log.d.ts +55 -0
- package/dist/hsm/infrastructure/file-audit-log.d.ts.map +1 -0
- package/dist/hsm/infrastructure/file-audit-log.js +128 -0
- package/dist/hsm/infrastructure/key-store.d.ts +9 -0
- package/dist/hsm/infrastructure/key-store.d.ts.map +1 -0
- package/dist/hsm/infrastructure/key-store.js +12 -0
- package/dist/hsm/infrastructure/syslog-audit-log.d.ts +64 -0
- package/dist/hsm/infrastructure/syslog-audit-log.d.ts.map +1 -0
- package/dist/hsm/infrastructure/syslog-audit-log.js +167 -0
- package/dist/index.d.ts +22 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +37 -0
- package/dist/integrations/besu-client/error-mapper.d.ts +9 -0
- package/dist/integrations/besu-client/error-mapper.d.ts.map +1 -0
- package/dist/integrations/besu-client/error-mapper.js +22 -0
- package/dist/integrations/besu-client/index.d.ts +65 -0
- package/dist/integrations/besu-client/index.d.ts.map +1 -0
- package/dist/integrations/besu-client/index.js +276 -0
- package/dist/integrations/besu-client/ports.d.ts +44 -0
- package/dist/integrations/besu-client/ports.d.ts.map +1 -0
- package/dist/integrations/besu-client/ports.js +1 -0
- package/dist/integrations/corda-gateway/index.d.ts +37 -0
- package/dist/integrations/corda-gateway/index.d.ts.map +1 -0
- package/dist/integrations/corda-gateway/index.js +234 -0
- package/dist/integrations/corda-gateway/ports.d.ts +33 -0
- package/dist/integrations/corda-gateway/ports.d.ts.map +1 -0
- package/dist/integrations/corda-gateway/ports.js +1 -0
- package/dist/integrations/fabric-gateway/index.d.ts +78 -0
- package/dist/integrations/fabric-gateway/index.d.ts.map +1 -0
- package/dist/integrations/fabric-gateway/index.js +214 -0
- package/dist/integrations/fabric-gateway/ports.d.ts +50 -0
- package/dist/integrations/fabric-gateway/ports.d.ts.map +1 -0
- package/dist/integrations/fabric-gateway/ports.js +1 -0
- package/dist/integrations/index.d.ts +19 -0
- package/dist/integrations/index.d.ts.map +1 -0
- package/dist/integrations/index.js +19 -0
- package/dist/integrations/shared/env.d.ts +4 -0
- package/dist/integrations/shared/env.d.ts.map +1 -0
- package/dist/integrations/shared/env.js +24 -0
- package/dist/integrations/shared/retry.d.ts +79 -0
- package/dist/integrations/shared/retry.d.ts.map +1 -0
- package/dist/integrations/shared/retry.js +315 -0
- package/dist/mpc/adapters.d.ts +36 -0
- package/dist/mpc/adapters.d.ts.map +1 -0
- package/dist/mpc/adapters.js +46 -0
- package/dist/mpc/crypto.d.ts +2 -0
- package/dist/mpc/crypto.d.ts.map +1 -0
- package/dist/mpc/crypto.js +2 -0
- package/dist/mpc/dsa.d.ts +134 -0
- package/dist/mpc/dsa.d.ts.map +1 -0
- package/dist/mpc/dsa.js +127 -0
- package/dist/mpc/field.d.ts +127 -0
- package/dist/mpc/field.d.ts.map +1 -0
- package/dist/mpc/field.js +209 -0
- package/dist/mpc/hybrid-kem.d.ts +96 -0
- package/dist/mpc/hybrid-kem.d.ts.map +1 -0
- package/dist/mpc/hybrid-kem.js +136 -0
- package/dist/mpc/index.d.ts +135 -0
- package/dist/mpc/index.d.ts.map +1 -0
- package/dist/mpc/index.js +348 -0
- package/dist/mpc/kyber.d.ts +134 -0
- package/dist/mpc/kyber.d.ts.map +1 -0
- package/dist/mpc/kyber.js +143 -0
- package/dist/mpc/ports.d.ts +67 -0
- package/dist/mpc/ports.d.ts.map +1 -0
- package/dist/mpc/ports.js +9 -0
- package/dist/mpc/quantum.d.ts +80 -0
- package/dist/mpc/quantum.d.ts.map +1 -0
- package/dist/mpc/quantum.js +180 -0
- package/dist/p2mr/adapters.d.ts +31 -0
- package/dist/p2mr/adapters.d.ts.map +1 -0
- package/dist/p2mr/adapters.js +35 -0
- package/dist/p2mr/index.d.ts +63 -0
- package/dist/p2mr/index.d.ts.map +1 -0
- package/dist/p2mr/index.js +59 -0
- package/dist/p2mr/merkle-tree.d.ts +109 -0
- package/dist/p2mr/merkle-tree.d.ts.map +1 -0
- package/dist/p2mr/merkle-tree.js +239 -0
- package/dist/p2mr/p2mr-output.d.ts +142 -0
- package/dist/p2mr/p2mr-output.d.ts.map +1 -0
- package/dist/p2mr/p2mr-output.js +150 -0
- package/dist/p2mr/ports.d.ts +52 -0
- package/dist/p2mr/ports.d.ts.map +1 -0
- package/dist/p2mr/ports.js +9 -0
- package/dist/p2mr/script-interpreter.d.ts +92 -0
- package/dist/p2mr/script-interpreter.d.ts.map +1 -0
- package/dist/p2mr/script-interpreter.js +535 -0
- package/dist/p2mr/script-leaf.d.ts +70 -0
- package/dist/p2mr/script-leaf.d.ts.map +1 -0
- package/dist/p2mr/script-leaf.js +203 -0
- package/dist/p2mr/spend-proof.d.ts +95 -0
- package/dist/p2mr/spend-proof.d.ts.map +1 -0
- package/dist/p2mr/spend-proof.js +358 -0
- package/dist/p2mr/types.d.ts +209 -0
- package/dist/p2mr/types.d.ts.map +1 -0
- package/dist/p2mr/types.js +9 -0
- package/dist/privacy/application/view-projector.d.ts +13 -0
- package/dist/privacy/application/view-projector.d.ts.map +1 -0
- package/dist/privacy/application/view-projector.js +85 -0
- package/dist/privacy/domain/entities.d.ts +26 -0
- package/dist/privacy/domain/entities.d.ts.map +1 -0
- package/dist/privacy/domain/entities.js +1 -0
- package/dist/privacy/domain/ports.d.ts +7 -0
- package/dist/privacy/domain/ports.d.ts.map +1 -0
- package/dist/privacy/domain/ports.js +1 -0
- package/dist/privacy/index.d.ts +21 -0
- package/dist/privacy/index.d.ts.map +1 -0
- package/dist/privacy/index.js +25 -0
- package/dist/privacy/infrastructure/in-memory-store.d.ts +8 -0
- package/dist/privacy/infrastructure/in-memory-store.d.ts.map +1 -0
- package/dist/privacy/infrastructure/in-memory-store.js +7 -0
- package/dist/protocols/besu-port.d.ts +80 -0
- package/dist/protocols/besu-port.d.ts.map +1 -0
- package/dist/protocols/besu-port.js +1 -0
- package/dist/protocols/corda-port.d.ts +103 -0
- package/dist/protocols/corda-port.d.ts.map +1 -0
- package/dist/protocols/corda-port.js +9 -0
- package/dist/protocols/credentialing-port.d.ts +11 -0
- package/dist/protocols/credentialing-port.d.ts.map +1 -0
- package/dist/protocols/credentialing-port.js +1 -0
- package/dist/protocols/fabric-port.d.ts +89 -0
- package/dist/protocols/fabric-port.d.ts.map +1 -0
- package/dist/protocols/fabric-port.js +9 -0
- package/dist/protocols/index.d.ts +14 -0
- package/dist/protocols/index.d.ts.map +1 -0
- package/dist/protocols/index.js +7 -0
- package/dist/protocols/p2mr-port.d.ts +159 -0
- package/dist/protocols/p2mr-port.d.ts.map +1 -0
- package/dist/protocols/p2mr-port.js +12 -0
- package/dist/protocols/privacy-port.d.ts +9 -0
- package/dist/protocols/privacy-port.d.ts.map +1 -0
- package/dist/protocols/privacy-port.js +1 -0
- package/dist/protocols/traceability-port.d.ts +12 -0
- package/dist/protocols/traceability-port.d.ts.map +1 -0
- package/dist/protocols/traceability-port.js +1 -0
- package/dist/shared/collection-store.d.ts +12 -0
- package/dist/shared/collection-store.d.ts.map +1 -0
- package/dist/shared/collection-store.js +26 -0
- package/dist/shared/commit.d.ts +24 -0
- package/dist/shared/commit.d.ts.map +1 -0
- package/dist/shared/commit.js +50 -0
- package/dist/shared/crypto.d.ts +2 -0
- package/dist/shared/crypto.d.ts.map +1 -0
- package/dist/shared/crypto.js +4 -0
- package/dist/shared/date.d.ts +2 -0
- package/dist/shared/date.d.ts.map +1 -0
- package/dist/shared/date.js +3 -0
- package/dist/shared/index.d.ts +9 -0
- package/dist/shared/index.d.ts.map +1 -0
- package/dist/shared/index.js +11 -0
- package/dist/shared/logger.d.ts +37 -0
- package/dist/shared/logger.d.ts.map +1 -0
- package/dist/shared/logger.js +45 -0
- package/dist/shared/store.d.ts +25 -0
- package/dist/shared/store.d.ts.map +1 -0
- package/dist/shared/store.js +18 -0
- package/dist/shared/telemetry-sdk.d.ts +26 -0
- package/dist/shared/telemetry-sdk.d.ts.map +1 -0
- package/dist/shared/telemetry-sdk.js +97 -0
- package/dist/shared/telemetry.d.ts +86 -0
- package/dist/shared/telemetry.d.ts.map +1 -0
- package/dist/shared/telemetry.js +137 -0
- package/dist/stark-settlement/application/aggregator-service.d.ts +112 -0
- package/dist/stark-settlement/application/aggregator-service.d.ts.map +1 -0
- package/dist/stark-settlement/application/aggregator-service.js +256 -0
- package/dist/stark-settlement/application/ledger-service.d.ts +114 -0
- package/dist/stark-settlement/application/ledger-service.d.ts.map +1 -0
- package/dist/stark-settlement/application/ledger-service.js +318 -0
- package/dist/stark-settlement/application/settlement-service.d.ts +104 -0
- package/dist/stark-settlement/application/settlement-service.d.ts.map +1 -0
- package/dist/stark-settlement/application/settlement-service.js +251 -0
- package/dist/stark-settlement/domain/entities.d.ts +365 -0
- package/dist/stark-settlement/domain/entities.d.ts.map +1 -0
- package/dist/stark-settlement/domain/entities.js +29 -0
- package/dist/stark-settlement/domain/ports.d.ts +485 -0
- package/dist/stark-settlement/domain/ports.d.ts.map +1 -0
- package/dist/stark-settlement/domain/ports.js +14 -0
- package/dist/stark-settlement/domain/value-objects.d.ts +268 -0
- package/dist/stark-settlement/domain/value-objects.d.ts.map +1 -0
- package/dist/stark-settlement/domain/value-objects.js +500 -0
- package/dist/stark-settlement/index.d.ts +172 -0
- package/dist/stark-settlement/index.d.ts.map +1 -0
- package/dist/stark-settlement/index.js +193 -0
- package/dist/stark-settlement/infrastructure/adapters/audit-adapter.d.ts +52 -0
- package/dist/stark-settlement/infrastructure/adapters/audit-adapter.d.ts.map +1 -0
- package/dist/stark-settlement/infrastructure/adapters/audit-adapter.js +154 -0
- package/dist/stark-settlement/infrastructure/adapters/bitcoin-adapter.d.ts +88 -0
- package/dist/stark-settlement/infrastructure/adapters/bitcoin-adapter.d.ts.map +1 -0
- package/dist/stark-settlement/infrastructure/adapters/bitcoin-adapter.js +187 -0
- package/dist/stark-settlement/infrastructure/adapters/clock-adapter.d.ts +59 -0
- package/dist/stark-settlement/infrastructure/adapters/clock-adapter.d.ts.map +1 -0
- package/dist/stark-settlement/infrastructure/adapters/clock-adapter.js +85 -0
- package/dist/stark-settlement/infrastructure/adapters/dilithium-adapter.d.ts +60 -0
- package/dist/stark-settlement/infrastructure/adapters/dilithium-adapter.d.ts.map +1 -0
- package/dist/stark-settlement/infrastructure/adapters/dilithium-adapter.js +104 -0
- package/dist/stark-settlement/infrastructure/adapters/event-emitter-adapter.d.ts +115 -0
- package/dist/stark-settlement/infrastructure/adapters/event-emitter-adapter.d.ts.map +1 -0
- package/dist/stark-settlement/infrastructure/adapters/event-emitter-adapter.js +191 -0
- package/dist/stark-settlement/infrastructure/adapters/fiat-adapter.d.ts +65 -0
- package/dist/stark-settlement/infrastructure/adapters/fiat-adapter.d.ts.map +1 -0
- package/dist/stark-settlement/infrastructure/adapters/fiat-adapter.js +207 -0
- package/dist/stark-settlement/infrastructure/adapters/mock-stark-adapter.d.ts +73 -0
- package/dist/stark-settlement/infrastructure/adapters/mock-stark-adapter.d.ts.map +1 -0
- package/dist/stark-settlement/infrastructure/adapters/mock-stark-adapter.js +287 -0
- package/dist/stark-settlement/infrastructure/adapters/solana-adapter.d.ts +78 -0
- package/dist/stark-settlement/infrastructure/adapters/solana-adapter.d.ts.map +1 -0
- package/dist/stark-settlement/infrastructure/adapters/solana-adapter.js +172 -0
- package/dist/stark-settlement/infrastructure/adapters/starknet-proof-adapter.d.ts +56 -0
- package/dist/stark-settlement/infrastructure/adapters/starknet-proof-adapter.d.ts.map +1 -0
- package/dist/stark-settlement/infrastructure/adapters/starknet-proof-adapter.js +261 -0
- package/dist/stark-settlement/infrastructure/adapters/stone-proof-adapter.d.ts +125 -0
- package/dist/stark-settlement/infrastructure/adapters/stone-proof-adapter.d.ts.map +1 -0
- package/dist/stark-settlement/infrastructure/adapters/stone-proof-adapter.js +416 -0
- package/dist/stark-settlement/infrastructure/persistence/ledger-store.d.ts +68 -0
- package/dist/stark-settlement/infrastructure/persistence/ledger-store.d.ts.map +1 -0
- package/dist/stark-settlement/infrastructure/persistence/ledger-store.js +238 -0
- package/dist/stark-settlement/infrastructure/persistence/offset-store.d.ts +30 -0
- package/dist/stark-settlement/infrastructure/persistence/offset-store.d.ts.map +1 -0
- package/dist/stark-settlement/infrastructure/persistence/offset-store.js +57 -0
- package/dist/stark-settlement/infrastructure/persistence/outbox-store.d.ts +45 -0
- package/dist/stark-settlement/infrastructure/persistence/outbox-store.d.ts.map +1 -0
- package/dist/stark-settlement/infrastructure/persistence/outbox-store.js +171 -0
- package/dist/traceability/application/recall-assessor.d.ts +13 -0
- package/dist/traceability/application/recall-assessor.d.ts.map +1 -0
- package/dist/traceability/application/recall-assessor.js +74 -0
- package/dist/traceability/domain/entities.d.ts +23 -0
- package/dist/traceability/domain/entities.d.ts.map +1 -0
- package/dist/traceability/domain/entities.js +1 -0
- package/dist/traceability/domain/ports.d.ts +23 -0
- package/dist/traceability/domain/ports.d.ts.map +1 -0
- package/dist/traceability/domain/ports.js +1 -0
- package/dist/traceability/domain/recall.d.ts +12 -0
- package/dist/traceability/domain/recall.d.ts.map +1 -0
- package/dist/traceability/domain/recall.js +1 -0
- package/dist/traceability/index.d.ts +22 -0
- package/dist/traceability/index.d.ts.map +1 -0
- package/dist/traceability/index.js +26 -0
- package/dist/traceability/infrastructure/in-memory-store.d.ts +13 -0
- package/dist/traceability/infrastructure/in-memory-store.d.ts.map +1 -0
- package/dist/traceability/infrastructure/in-memory-store.js +24 -0
- package/package.json +12 -9
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Value Objects for Aggregated STARK Settlement Layer
|
|
3
|
+
*
|
|
4
|
+
* Immutable, self-validating value types that encapsulate domain concepts:
|
|
5
|
+
* - FieldElement: Arithmetic in the STARK prime field
|
|
6
|
+
* - IdempotencyKey: Collision-resistant exactly-once keys
|
|
7
|
+
* - ProofCommitment: Succinct commitment to a STARK proof
|
|
8
|
+
* - StateRoot: Merkle root of ledger state
|
|
9
|
+
*
|
|
10
|
+
* Value objects are equal if their values are equal (no identity).
|
|
11
|
+
* All validation happens at construction time.
|
|
12
|
+
*
|
|
13
|
+
* @see modules/mpc/src/field.ts for field arithmetic patterns
|
|
14
|
+
*/
|
|
15
|
+
/**
|
|
16
|
+
* STARK prime field: 2^251 + 17 * 2^192 + 1
|
|
17
|
+
* This is the prime used by StarkNet/Cairo for field operations.
|
|
18
|
+
*/
|
|
19
|
+
export declare const STARK_PRIME = 3618502788666131213697322783095070105623107215331596699973092056135872020481n;
|
|
20
|
+
/**
|
|
21
|
+
* Generator of the multiplicative group of the STARK field.
|
|
22
|
+
*/
|
|
23
|
+
export declare const STARK_GENERATOR = 3n;
|
|
24
|
+
/**
|
|
25
|
+
* An element in the STARK prime field.
|
|
26
|
+
*
|
|
27
|
+
* Supports modular arithmetic operations and serialization.
|
|
28
|
+
* Immutable - all operations return new instances.
|
|
29
|
+
*/
|
|
30
|
+
export declare class FieldElement {
|
|
31
|
+
#private;
|
|
32
|
+
readonly value: bigint;
|
|
33
|
+
readonly prime: bigint;
|
|
34
|
+
private constructor();
|
|
35
|
+
/**
|
|
36
|
+
* Create a field element from a bigint.
|
|
37
|
+
* Value is automatically reduced modulo prime.
|
|
38
|
+
*/
|
|
39
|
+
static fromBigInt(value: bigint, prime?: bigint): FieldElement;
|
|
40
|
+
/**
|
|
41
|
+
* Create a field element from a hex string.
|
|
42
|
+
*/
|
|
43
|
+
static fromHex(hex: string, prime?: bigint): FieldElement;
|
|
44
|
+
/**
|
|
45
|
+
* Create a field element from a byte array (big-endian).
|
|
46
|
+
*/
|
|
47
|
+
static fromBytes(bytes: Uint8Array, prime?: bigint): FieldElement;
|
|
48
|
+
/**
|
|
49
|
+
* Generate a random field element.
|
|
50
|
+
*/
|
|
51
|
+
static random(prime?: bigint): FieldElement;
|
|
52
|
+
/**
|
|
53
|
+
* Zero element in the field.
|
|
54
|
+
*/
|
|
55
|
+
static zero(prime?: bigint): FieldElement;
|
|
56
|
+
/**
|
|
57
|
+
* One (multiplicative identity) in the field.
|
|
58
|
+
*/
|
|
59
|
+
static one(prime?: bigint): FieldElement;
|
|
60
|
+
/**
|
|
61
|
+
* Modular addition: (this + other) mod prime
|
|
62
|
+
*/
|
|
63
|
+
add(other: FieldElement): FieldElement;
|
|
64
|
+
/**
|
|
65
|
+
* Modular subtraction: (this - other) mod prime
|
|
66
|
+
*/
|
|
67
|
+
sub(other: FieldElement): FieldElement;
|
|
68
|
+
/**
|
|
69
|
+
* Modular multiplication: (this * other) mod prime
|
|
70
|
+
*/
|
|
71
|
+
mul(other: FieldElement): FieldElement;
|
|
72
|
+
/**
|
|
73
|
+
* Modular exponentiation: this^exp mod prime
|
|
74
|
+
* Uses square-and-multiply for O(log exp) complexity.
|
|
75
|
+
*/
|
|
76
|
+
pow(exp: bigint): FieldElement;
|
|
77
|
+
/**
|
|
78
|
+
* Modular multiplicative inverse: this^(-1) mod prime
|
|
79
|
+
* Uses Fermat's little theorem: a^(-1) = a^(p-2) mod p
|
|
80
|
+
*/
|
|
81
|
+
inverse(): FieldElement;
|
|
82
|
+
/**
|
|
83
|
+
* Modular division: this / other mod prime
|
|
84
|
+
*/
|
|
85
|
+
div(other: FieldElement): FieldElement;
|
|
86
|
+
/**
|
|
87
|
+
* Negation: -this mod prime
|
|
88
|
+
*/
|
|
89
|
+
neg(): FieldElement;
|
|
90
|
+
/**
|
|
91
|
+
* Check if this is zero.
|
|
92
|
+
*/
|
|
93
|
+
isZero(): boolean;
|
|
94
|
+
/**
|
|
95
|
+
* Check equality with another field element.
|
|
96
|
+
*/
|
|
97
|
+
equals(other: FieldElement): boolean;
|
|
98
|
+
/**
|
|
99
|
+
* Convert to hex string (64 characters, zero-padded).
|
|
100
|
+
*/
|
|
101
|
+
toHex(): string;
|
|
102
|
+
/**
|
|
103
|
+
* Convert to byte array (big-endian, 32 bytes).
|
|
104
|
+
*/
|
|
105
|
+
toBytes(): Uint8Array;
|
|
106
|
+
/**
|
|
107
|
+
* String representation for debugging.
|
|
108
|
+
*/
|
|
109
|
+
toString(): string;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* A collision-resistant idempotency key for exactly-once processing.
|
|
113
|
+
*
|
|
114
|
+
* Generated from a combination of source, transaction ID, and timestamp.
|
|
115
|
+
* SHA-256 hash ensures collision resistance.
|
|
116
|
+
*/
|
|
117
|
+
export declare class IdempotencyKey {
|
|
118
|
+
readonly value: string;
|
|
119
|
+
private constructor();
|
|
120
|
+
/**
|
|
121
|
+
* Create an idempotency key from source components.
|
|
122
|
+
*/
|
|
123
|
+
static create(source: string, txId: string, timestamp: number): IdempotencyKey;
|
|
124
|
+
/**
|
|
125
|
+
* Create from an existing key string (must be 64 hex chars).
|
|
126
|
+
*/
|
|
127
|
+
static fromString(value: string): IdempotencyKey;
|
|
128
|
+
/**
|
|
129
|
+
* Generate a random idempotency key.
|
|
130
|
+
*/
|
|
131
|
+
static random(): IdempotencyKey;
|
|
132
|
+
/**
|
|
133
|
+
* Check equality with another key.
|
|
134
|
+
*/
|
|
135
|
+
equals(other: IdempotencyKey): boolean;
|
|
136
|
+
/**
|
|
137
|
+
* String representation.
|
|
138
|
+
*/
|
|
139
|
+
toString(): string;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* A succinct commitment to a STARK proof.
|
|
143
|
+
*
|
|
144
|
+
* Used for on-chain anchoring without storing the full proof.
|
|
145
|
+
* Computed as SHA-256(proofId || starkProof || publicInputs).
|
|
146
|
+
*/
|
|
147
|
+
export declare class ProofCommitment {
|
|
148
|
+
readonly value: string;
|
|
149
|
+
private constructor();
|
|
150
|
+
/**
|
|
151
|
+
* Create a commitment from proof components.
|
|
152
|
+
*/
|
|
153
|
+
static create(proofId: string, starkProof: Uint8Array, publicInputs: readonly string[]): ProofCommitment;
|
|
154
|
+
/**
|
|
155
|
+
* Create from an existing commitment string (must be 64 hex chars).
|
|
156
|
+
*/
|
|
157
|
+
static fromString(value: string): ProofCommitment;
|
|
158
|
+
/**
|
|
159
|
+
* Check equality with another commitment.
|
|
160
|
+
*/
|
|
161
|
+
equals(other: ProofCommitment): boolean;
|
|
162
|
+
/**
|
|
163
|
+
* String representation.
|
|
164
|
+
*/
|
|
165
|
+
toString(): string;
|
|
166
|
+
/**
|
|
167
|
+
* Convert to bytes for on-chain storage.
|
|
168
|
+
*/
|
|
169
|
+
toBytes(): Uint8Array;
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* A Merkle root representing the state of the ledger.
|
|
173
|
+
*
|
|
174
|
+
* Computed as the root of a Merkle tree over all account states.
|
|
175
|
+
* Used to prove state transitions in STARK proofs.
|
|
176
|
+
*/
|
|
177
|
+
export declare class StateRoot {
|
|
178
|
+
readonly value: string;
|
|
179
|
+
private constructor();
|
|
180
|
+
/**
|
|
181
|
+
* Create a state root from a hex string.
|
|
182
|
+
*/
|
|
183
|
+
static fromHex(hex: string): StateRoot;
|
|
184
|
+
/**
|
|
185
|
+
* Create the genesis (empty) state root.
|
|
186
|
+
*/
|
|
187
|
+
static genesis(): StateRoot;
|
|
188
|
+
/**
|
|
189
|
+
* Compute a new state root by hashing with another value.
|
|
190
|
+
* Used for incremental state updates.
|
|
191
|
+
*/
|
|
192
|
+
hash(data: Uint8Array): StateRoot;
|
|
193
|
+
/**
|
|
194
|
+
* Check equality with another state root.
|
|
195
|
+
*/
|
|
196
|
+
equals(other: StateRoot): boolean;
|
|
197
|
+
/**
|
|
198
|
+
* String representation.
|
|
199
|
+
*/
|
|
200
|
+
toString(): string;
|
|
201
|
+
/**
|
|
202
|
+
* Convert to bytes.
|
|
203
|
+
*/
|
|
204
|
+
toBytes(): Uint8Array;
|
|
205
|
+
/**
|
|
206
|
+
* Convert to field element for STARK circuits.
|
|
207
|
+
*/
|
|
208
|
+
toFieldElement(): FieldElement;
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* A validated amount with decimal conversion utilities.
|
|
212
|
+
*
|
|
213
|
+
* Stores value in atomic units (lamports, satoshis, cents).
|
|
214
|
+
* Provides conversion to/from human-readable format.
|
|
215
|
+
*/
|
|
216
|
+
export declare class Amount {
|
|
217
|
+
#private;
|
|
218
|
+
readonly atomicValue: bigint;
|
|
219
|
+
readonly decimals: number;
|
|
220
|
+
private constructor();
|
|
221
|
+
/**
|
|
222
|
+
* Create from atomic units (e.g., lamports, satoshis, cents).
|
|
223
|
+
*/
|
|
224
|
+
static fromAtomic(value: bigint, decimals: number): Amount;
|
|
225
|
+
/**
|
|
226
|
+
* Create from a decimal string (e.g., "1.5" SOL = 1500000000 lamports).
|
|
227
|
+
*/
|
|
228
|
+
static fromDecimal(value: string, decimals: number): Amount;
|
|
229
|
+
/**
|
|
230
|
+
* Add two amounts.
|
|
231
|
+
*/
|
|
232
|
+
add(other: Amount): Amount;
|
|
233
|
+
/**
|
|
234
|
+
* Subtract another amount.
|
|
235
|
+
*/
|
|
236
|
+
sub(other: Amount): Amount;
|
|
237
|
+
/**
|
|
238
|
+
* Check if this amount is zero.
|
|
239
|
+
*/
|
|
240
|
+
isZero(): boolean;
|
|
241
|
+
/**
|
|
242
|
+
* Compare with another amount.
|
|
243
|
+
* Returns -1 if this < other, 0 if equal, 1 if this > other.
|
|
244
|
+
*/
|
|
245
|
+
compare(other: Amount): -1 | 0 | 1;
|
|
246
|
+
/**
|
|
247
|
+
* Convert to decimal string (e.g., "1.500000000" for 1.5 SOL).
|
|
248
|
+
*/
|
|
249
|
+
toDecimal(): string;
|
|
250
|
+
/**
|
|
251
|
+
* String representation.
|
|
252
|
+
*/
|
|
253
|
+
toString(): string;
|
|
254
|
+
}
|
|
255
|
+
/**
|
|
256
|
+
* Compute SHA-256 hash of a string.
|
|
257
|
+
*/
|
|
258
|
+
export declare function sha256(input: string): string;
|
|
259
|
+
/**
|
|
260
|
+
* Compute SHA-256 hash of bytes.
|
|
261
|
+
*/
|
|
262
|
+
export declare function sha256Bytes(input: Uint8Array): Uint8Array;
|
|
263
|
+
/**
|
|
264
|
+
* Compute Pedersen hash (placeholder - actual implementation would use Cairo's Pedersen).
|
|
265
|
+
* For now, uses SHA-256 as a stand-in.
|
|
266
|
+
*/
|
|
267
|
+
export declare function pedersenHash(a: FieldElement, b: FieldElement): FieldElement;
|
|
268
|
+
//# sourceMappingURL=value-objects.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"value-objects.d.ts","sourceRoot":"","sources":["../../../src/stark-settlement/domain/value-objects.ts"],"names":[],"mappings":"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"}
|