Skip to main content

Transaction

For the complete documentation index, see llms.txt

@midnight/ledger v8.0.3


@midnight/ledger / Transaction

Class: Transaction<S, P, B>

ContractAction 섹션과 guaranteed 및 fallible ZswapOffer로 구성된 Midnight 트랜잭션입니다.

guaranteed 섹션이 먼저 실행되며, 이 과정에서 수수료가 지불됩니다. 성공하면 fallible 섹션도 실행되며, 실패 시 원자적으로 롤백됩니다.

Type Parameters​

S​

S extends Signaturish

P​

P extends Proofish

B​

B extends Bindingish

Properties​

bindingRandomness​

readonly bindingRandomness: bigint;

이 트랜잭션에 연결된 바인딩 랜덤값입니다.


fallibleOffer​

fallibleOffer: undefined | Map<number, ZswapOffer<P>>;

fallible Zswap 오퍼입니다.

이 값에 쓰기를 하면 트랜잭션이 바인딩되지 않았고 또한 증명되지 않은 경우에만 바인딩 정보가 재계산됩니다. 그렇지 않으면 오퍼 구성 요소를 생성하거나 제거할 때 바인딩 오류가 발생할 수 있습니다.

Throws​

On writing if B is Binding or this is not a standard transaction


guaranteedOffer​

guaranteedOffer: undefined | ZswapOffer<P>;

guaranteed Zswap 오퍼입니다.

이 값에 쓰기를 하면 트랜잭션이 바인딩되지 않았고 또한 증명되지 않은 경우에만 바인딩 정보가 재계산됩니다. 그렇지 않으면 오퍼 구성 요소를 생성하거나 제거할 때 바인딩 오류가 발생할 수 있습니다.

Throws​

On writing if B is Binding or this is not a standard transaction


intents​

intents: undefined | Map<number, Intent<S, P, B>>;

이 트랜잭션에 포함된 인텐트입니다.

이 값에 쓰기를 하면 트랜잭션이 바인딩되지 않았고 또한 증명되지 않은 경우에만 바인딩 정보가 재계산됩니다. 그렇지 않으면 인텐트를 생성하거나 제거할 때 바인딩 오류가 발생할 수 있지만, 기존 인텐트를 수정하는 것은 성공합니다.

Throws​

On writing if B is Binding or this is not a standard transaction


rewards​

readonly rewards:
| undefined
| ClaimRewardsTransaction<S>;

이 트랜잭션이 나타내는 보상입니다 (해당하는 경우).

Methods​

addCalls()​

addCalls(
segment,
calls,
params,
ttl,
zswapInputs?,
zswapOutputs?,
zswapTransient?): Transaction<S, P, B>;

트랜잭션에 새 호출 집합을 추가합니다.

Intent.addCall과 달리, 트랜스크립트 분할(partitionTranscripts) 이전의 호출을 받아 필요한 곳에 대상 인텐트를 생성하고, 관련 Zswap 부분이 컨트랙트 상호작용과 같은 섹션에 배치되도록 합니다.

Parameters​

segment​

SegmentSpecifier

calls​

PrePartitionContractCall[]

params​

LedgerParameters

ttl​

Date

zswapInputs?​

ZswapInput<PreProof>[]

zswapOutputs?​

ZswapOutput<PreProof>[]

zswapTransient?​

ZswapTransient<PreProof>[]

Returns​

Transaction<S, P, B>

Throws​

바인딩된, 증명된, 또는 증명이 삭제된 트랜잭션에서 호출한 경우


bind()​

bind(): Transaction<S, P, Binding>;

이 트랜잭션에 바인딩을 강제합니다. 되돌릴 수 없습니다.

Returns​

Transaction<S, P, Binding>


cost()​

cost(params, enforceTimeToDismiss?): SyntheticCost;

이 트랜잭션의 기본 리소스 비용입니다.

Parameters​

params​

LedgerParameters

enforceTimeToDismiss?​

boolean

Returns​

SyntheticCost


eraseProofs()​

eraseProofs(): Transaction<S, NoProof, NoBinding>;

이 트랜잭션에 포함된 증명을 삭제합니다.

Returns​

Transaction<S, NoProof, NoBinding>


eraseSignatures()​

eraseSignatures(): Transaction<SignatureErased, P, B>;

이 트랜잭션에서 서명을 제거합니다.

Returns​

Transaction<SignatureErased, P, B>


fees()​

fees(params, enforceTimeToDismiss?): bigint;

이 트랜잭션의 비용(SPECK 단위)입니다.

증명된 트랜잭션에서 호출할 때만 정확합니다.

Parameters​

params​

LedgerParameters

enforceTimeToDismiss?​

boolean

Returns​

bigint


feesWithMargin()​

feesWithMargin(params, margin): bigint;

n 블록의 안전 마진이 적용된 이 트랜잭션의 비용(SPECK 단위)입니다.

fees와 마찬가지로, 증명된 트랜잭션에서만 정확합니다.

경고: n은 음이 아닌 정수여야 하며, 지수로 사용되므로 비합리적인 마진이 나오기 쉽습니다!

Parameters​

params​

LedgerParameters

margin​

number

Returns​

bigint


identifiers()​

identifiers(): string[];

이 트랜잭션에 포함된 식별자 집합을 반환합니다. 이 중 어느 것이든 특정 트랜잭션을 감시하는 데 사용할 수 있습니다.

Returns​

string[]


imbalances()​

imbalances(segment, fees?): Map<TokenType, bigint>;

주어진 수수료와 주어진 섹션(guaranteed/fallible)에서 이 트랜잭션의 각 토큰 유형별 초과분 또는 부족분입니다.

Parameters​

segment​

number

fees?​

bigint

Returns​

Map<TokenType, bigint>

Throws​

If segment is not a valid segment ID


merge()​

merge(other): Transaction<S, P, B>;

이 트랜잭션을 다른 트랜잭션과 병합합니다.

Parameters​

other​

Transaction<S, P, B>

Returns​

Transaction<S, P, B>

Throws​

두 트랜잭션 모두 컨트랙트 상호작용이 있거나 같은 코인을 소비하는 경우


mockProve()​

mockProve(): Transaction<S, Proof, Binding>;

증명을 모의 수행하여 검증되지는 않지만 수수료 계산 목적으로는 정확한 '증명된' 트랜잭션을 생성합니다.

증명 크기의 가변성으로 인해, 미증명 컨트랙트 호출을 포함하지 않는 트랜잭션에서만 작동합니다.

Returns​

Transaction<S, Proof, Binding>

Throws​

If called on bound, proven, or proof-erased transactions, or if the transaction contains unproven contract calls.


prove()​

prove(provider, cost_model): Promise<Transaction<S, Proof, B>>;

저수준 증명 제공자에 접근하여 트랜잭션을 증명합니다. P = PreProof인 경우에만 호출할 수 있습니다.

Parameters​

provider​

ProvingProvider

cost_model​

CostModel

Returns​

Promise<Transaction<S, Proof, B>>

Throws​

If called on bound, proven, or proof-erased transactions.


serialize()​

serialize(): Uint8Array;

Returns​

Uint8Array


toString()​

toString(compact?): string;

Parameters​

compact?​

boolean

Returns​

string


transactionHash()​

transactionHash(): string;

이 트랜잭션과 연결된 해시를 반환합니다. 트랜잭션 병합이 가능하므로, 특정 트랜잭션을 감시하는 데 사용해서는 안 됩니다.

Returns​

string


wellFormed()​

wellFormed(
ref_state,
strictness,
tblock): VerifiedTransaction;

올바른 형식 기준을 테스트하며, 선택적으로 트랜잭션 균형도 포함합니다.

Parameters​

ref_state​

LedgerState

strictness​

WellFormedStrictness

tblock​

Date

Returns​

VerifiedTransaction

Throws​

어떤 이유로든 트랜잭션이 올바른 형식이 아닌 경우


deserialize()​

static deserialize<S, P, B>(
markerS,
markerP,
markerB,
raw): Transaction<S, P, B>;

Type Parameters​

S​

S extends Signaturish

P​

P extends Proofish

B​

B extends Bindingish

Parameters​

markerS​

S["instance"]

markerP​

P["instance"]

markerB​

B["instance"]

raw​

Uint8Array

Returns​

Transaction<S, P, B>


fromParts()​

static fromParts(
network_id,
guaranteed?,
fallible?,
intent?): UnprovenTransaction;

구성 요소로부터 트랜잭션을 생성합니다.

Parameters​

network_id​

string

guaranteed?​

UnprovenOffer

fallible?​

UnprovenOffer

intent?​

UnprovenIntent

Returns​

UnprovenTransaction


fromPartsRandomized()​

static fromPartsRandomized(
network_id,
guaranteed?,
fallible?,
intent?): UnprovenTransaction;

구성 요소로부터 트랜잭션을 생성하며, 병합을 용이하게 하기 위해 세그먼트 ID를 무작위로 지정합니다.

Parameters​

network_id​

string

guaranteed?​

UnprovenOffer

fallible?​

UnprovenOffer

intent?​

UnprovenIntent

Returns​

UnprovenTransaction


fromRewards()​

static fromRewards<S>(rewards): Transaction<S, PreProof, Binding>;

보상 청구 트랜잭션을 생성합니다. 청구하는 자금은 이전에 정당하게 보상된 것이어야 합니다.

Type Parameters​

S​

S extends Signaturish

Parameters​

rewards​

ClaimRewardsTransaction<S>

Returns​

Transaction<S, PreProof, Binding>