Skip to main content

Effects

@midnight/ledger v7.0.0


@midnight/ledger / Effects

Type Alias: Effects

type Effects = {
claimedContractCalls: [bigint, ContractAddress, string, Fr][];
claimedNullifiers: Nullifier[];
claimedShieldedReceives: CoinCommitment[];
claimedShieldedSpends: CoinCommitment[];
claimedUnshieldedSpends: Map<[TokenType, PublicAddress], bigint>;
shieldedMints: Map<string, bigint>;
unshieldedInputs: Map<TokenType, bigint>;
unshieldedMints: Map<string, bigint>;
unshieldedOutputs: Map<TokenType, bigint>;
};

The contract-external effects of a transcript.

Properties

claimedContractCalls

claimedContractCalls: [bigint, ContractAddress, string, Fr][];

The contracts called from this contract. The values are, in order:

  • The sequence number of this call
  • The contract being called
  • The entry point being called
  • The communications commitment

claimedNullifiers

claimedNullifiers: Nullifier[];

The nullifiers (spends) this contract call requires


claimedShieldedReceives

claimedShieldedReceives: CoinCommitment[];

The coin commitments (outputs) this contract call requires, as coins received


claimedShieldedSpends

claimedShieldedSpends: CoinCommitment[];

The coin commitments (outputs) this contract call requires, as coins sent


claimedUnshieldedSpends

claimedUnshieldedSpends: Map<[TokenType, PublicAddress], bigint>;

The unshielded UTXO outputs this contract expects to be present.


shieldedMints

shieldedMints: Map<string, bigint>;

The shielded tokens minted in this call, as a map from hex-encoded 256-bit domain separators to unsigned 64-bit integers.


unshieldedInputs

unshieldedInputs: Map<TokenType, bigint>;

The unshielded inputs this contract expects.


unshieldedMints

unshieldedMints: Map<string, bigint>;

The unshielded tokens minted in this call, as a map from hex-encoded 256-bit domain separators to unsigned 64-bit integers.


unshieldedOutputs

unshieldedOutputs: Map<TokenType, bigint>;

The unshielded outputs this contract authorizes.