Skip to content

@lelantos-org/sdk / index / ChainAdapter

Interface: ChainAdapter โ€‹

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:8

Adapters MUST be deterministic w.r.t. constructor inputs (no hidden global state).

Methods โ€‹

blockNumber()? โ€‹

ts
optional blockNumber(): Promise<number>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:159

Current chain tip. Feeds SelectOpts.tipBlock, without which the selector's spend cooldown is inert. Names no address and no topic. Optional.

Returns โ€‹

Promise<number>


cancelDelay()? โ€‹

ts
optional cancelDelay(): Promise<number>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:133

Blocks before cancelDeposit is allowed. Optional.

Returns โ€‹

Promise<number>


cancelDeposit()? โ€‹

ts
optional cancelDeposit(id, inputs): Promise<{
  txHash: Hex32;
}>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:119

MASP.cancelDeposit. On-chain digest check rejects tampered preimages. Optional.

Parameters โ€‹

ParameterType
idbigint
inputsCancelDepositInputs

Returns โ€‹

Promise<{ txHash: Hex32; }>


cancelDepositNative()? โ€‹

ts
optional cancelDepositNative(id, inputs): Promise<{
  txHash: Hex32;
}>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:127

NativeAdapter.cancelNative โ€” the only way to settle an adapter-owned escrow by refund, since the pool would return the coin to the adapter. No payer: the adapter supplies its own. Optional.

Parameters โ€‹

ParameterType
idbigint
inputsOmit<CancelDepositInputs, "payer">

Returns โ€‹

Promise<{ txHash: Hex32; }>


chainId() โ€‹

ts
chainId(): Promise<bigint>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:9

Returns โ€‹

Promise<bigint>


fetchAsset() โ€‹

ts
fetchAsset(id): Promise<AssetEntry>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:20

Parameters โ€‹

ParameterType
idAssetId

Returns โ€‹

Promise<AssetEntry>


fetchFeeBps() โ€‹

ts
fetchFeeBps(): Promise<bigint>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:22

0 disables fees.

Returns โ€‹

Promise<bigint>


getEscrowed()? โ€‹

ts
optional getEscrowed(id): Promise<EscrowedDepositView | null>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:131

MASP.escrowed(id) โ€” null if flushed/cancelled. Optional.

Parameters โ€‹

ParameterType
idbigint

Returns โ€‹

Promise<EscrowedDepositView | null>


maspAddress() โ€‹

ts
maspAddress(): Promise<EvmAddress>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:13

Used as the Permit2 spender.

Returns โ€‹

Promise<EvmAddress>


nativeAdapterAddress()? โ€‹

ts
optional nativeAdapterAddress(): EvmAddress | undefined;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:19

NativeAdapter address, or undefined where none is deployed. It is the payer a native deposit must name, so the deposit builder needs it before it builds the request. Optional.

Returns โ€‹

EvmAddress | undefined


nativeBalance()? โ€‹

ts
optional nativeBalance(account): Promise<bigint>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:143

Wei. Optional.

Parameters โ€‹

ParameterType
accountEvmAddress

Returns โ€‹

Promise<bigint>


payerAddress() โ€‹

ts
payerAddress(): Promise<EvmAddress>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:11

Signer's eth address (== pi.payer for deposit).

Returns โ€‹

Promise<EvmAddress>


permit2Address()? โ€‹

ts
optional permit2Address(): EvmAddress;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:149

Optional; adapters that don't use Permit2 omit.

Returns โ€‹

EvmAddress


permit2Allowance()? โ€‹

ts
optional permit2Allowance(
   token, 
   owner, 
   spender
): Promise<{
  amount: TokenAmount;
  expiration: number;
  nonce: number;
}>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:80

IAllowanceTransfer.allowance โ€” cap, expiry, nonce. Optional.

Parameters โ€‹

ParameterType
tokenEvmAddress
ownerEvmAddress
spenderEvmAddress

Returns โ€‹

Promise<{ amount: TokenAmount; expiration: number; nonce: number; }>


permit2Nonce()? โ€‹

ts
optional permit2Nonce(): Promise<bigint>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:138

Free slot in Permit2's unordered nonce bitmap. Optional; adapters returning a deterministic nonce can omit.

Returns โ€‹

Promise<bigint>


permit2PermitAllowance()? โ€‹

ts
optional permit2PermitAllowance(args, onTxHash?): Promise<{
  txHash: Hex32;
}>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:89

Submit pre-signed PermitSingle via IAllowanceTransfer.permit. Anyone can submit; relayer-gasless variants may override. Optional.

Parameters โ€‹

ParameterType
args{ owner: EvmAddress; permit: PermitSingle; signature: string; }
args.ownerEvmAddress
args.permit?PermitSingle
args.signature?string
onTxHash?(hash) => void

Returns โ€‹

Promise<{ txHash: Hex32; }>


permit2PermitAllowanceBatch()? โ€‹

ts
optional permit2PermitAllowanceBatch(args, onTxHash?): Promise<{
  txHash: Hex32;
}>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:104

Submit a pre-signed PermitBatch via the permit overload taking an array โ€” one tx establishes N token windows. Optional.

Parameters โ€‹

ParameterType
args{ owner: EvmAddress; permit: PermitBatch; signature: string; }
args.ownerEvmAddress
args.permit?PermitBatch
args.signature?string
onTxHash?(hash) => void

Returns โ€‹

Promise<{ txHash: Hex32; }>


signPermit2() โ€‹

ts
signPermit2(args): Promise<Permit2Sig>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:27

Sign Permit2 PermitWitnessTransferFrom witness-bound to piHash = keccak256(abi.encode(DepositRequest, aux)).

Parameters โ€‹

ParameterType
argsPermit2SignArgs

Returns โ€‹

Promise<Permit2Sig>


signPermit2Allowance()? โ€‹

ts
optional signPermit2Allowance(permit): Promise<{
  signature: string;
}>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:97

Sign PermitSingle for AllowanceTransfer-mode deposits. Optional.

Parameters โ€‹

ParameterType
permitPermitSingle

Returns โ€‹

Promise<{ signature: string; }>


signPermit2AllowanceBatch()? โ€‹

ts
optional signPermit2AllowanceBatch(permit): Promise<{
  signature: string;
}>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:112

Sign one PermitBatch covering N tokens. Optional.

Parameters โ€‹

ParameterType
permitPermitBatch

Returns โ€‹

Promise<{ signature: string; }>


submitDeposit()? โ€‹

ts
optional submitDeposit(args): Promise<{
  depositId: bigint;
  txHash: Hex32;
}>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:32

MASP.deposit(d, sig, aux). Returns tx hash + deposit id from the DepositEscrowed log. Optional: relayer-broadcast adapters omit.

Parameters โ€‹

ParameterTypeDescription
args{ aux: AuxOutput; deposit: DepositRequest; feeAux: AuxOutput; onSent?: (txHash) => void; permit2: Permit2Sig; }-
args.auxAuxOutput-
args.depositDepositRequest-
args.feeAuxAuxOutputThe relayer fee note payload; a deposit mints two leaves.
args.onSent?(txHash) => voidFired after the wallet signs and the tx hash is known, before receipt-wait.
args.permit2Permit2Sig-

Returns โ€‹

Promise<{ depositId: bigint; txHash: Hex32; }>


submitDepositAuthorized()? โ€‹

ts
optional submitDepositAuthorized(args): Promise<{
  depositId: bigint;
  txHash: Hex32;
}>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:69

MASP.depositAuthorized. Pulls via Permit2 AllowanceTransfer against a previously-signed window; no per-deposit sig. Optional.

Parameters โ€‹

ParameterTypeDescription
args{ aux: AuxOutput; deposit: DepositRequest; feeAux: AuxOutput; onSent?: (txHash) => void; }-
args.auxAuxOutput-
args.depositDepositRequest-
args.feeAuxAuxOutputThe relayer fee note payload; a deposit mints two leaves.
args.onSent?(txHash) => void-

Returns โ€‹

Promise<{ depositId: bigint; txHash: Hex32; }>


submitDepositNative()? โ€‹

ts
optional submitDepositNative(args): Promise<{
  depositId: bigint;
  txHash: Hex32;
}>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:54

NativeAdapter.depositNative with msg.value = value. The pool is ERC-20 only, so the adapter wraps the coin, escrows it under its own name and returns the excess โ€” deposit.payer must therefore be the adapter, not the sender. Asset id must be WETH-registered. Optional, and unavailable on a chain with no adapter deployed.

Parameters โ€‹

ParameterTypeDescription
args{ aux: AuxOutput; deposit: DepositRequest; feeAux: AuxOutput; onSent?: (txHash) => void; value: bigint; }-
args.auxAuxOutput-
args.depositDepositRequest-
args.feeAuxAuxOutputThe relayer fee note payload; a deposit mints two leaves.
args.onSent?(txHash) => void-
args.valuebigint-

Returns โ€‹

Promise<{ depositId: bigint; txHash: Hex32; }>


tokenAllowance()? โ€‹

ts
optional tokenAllowance(
   tokenAddr, 
   owner, 
   spender
): Promise<TokenAmount>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:144

Parameters โ€‹

ParameterType
tokenAddrEvmAddress
ownerEvmAddress
spenderEvmAddress

Returns โ€‹

Promise<TokenAmount>


tokenApprove()? โ€‹

ts
optional tokenApprove(
   tokenAddr, 
   spender, 
   amount, 
   onTxHash?
): Promise<{
  txHash: Hex32;
}>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:145

Parameters โ€‹

ParameterType
tokenAddrEvmAddress
spenderEvmAddress
amountTokenAmount
onTxHash?(hash) => void

Returns โ€‹

Promise<{ txHash: Hex32; }>


tokenBalanceOf()? โ€‹

ts
optional tokenBalanceOf(tokenAddr, account): Promise<TokenAmount>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:141

Parameters โ€‹

ParameterType
tokenAddrEvmAddress
accountEvmAddress

Returns โ€‹

Promise<TokenAmount>


tokenMeta()? โ€‹

ts
optional tokenMeta(tokenAddr): Promise<TokenMeta>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:140

Optional. CLIs/UIs feature-check before calling.

Parameters โ€‹

ParameterType
tokenAddrEvmAddress

Returns โ€‹

Promise<TokenMeta>


waitTxReceipt()? โ€‹

ts
optional waitTxReceipt(txHash, confirmations?): Promise<{
  blockNumber: number;
  status: number;
}>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:161

Returns block number + receipt status (1 = success, 0 = revert).

Parameters โ€‹

ParameterType
txHashHex32
confirmations?number

Returns โ€‹

Promise<{ blockNumber: number; status: number; }>


wrapNative()? โ€‹

ts
optional wrapNative(wethAddr, value): Promise<{
  txHash: Hex32;
}>;

Defined in: @lelantos-org/sdk/dist/chain/port.d.ts:151

WETH9.deposit{value}. Optional.

Parameters โ€‹

ParameterType
wethAddrEvmAddress
valuebigint

Returns โ€‹

Promise<{ txHash: Hex32; }>

Lelantosno cookies ๐Ÿช ยท no tracking ๐Ÿ‘๏ธ ยท no accounts ๐Ÿ‘คwalletexplorer4536080GitHub