Skip to content

@lelantos-org/sdk / advanced / ResolvedWalletConfig

Interface: ResolvedWalletConfig ​

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:141

WalletConfig with every default filled in. The resolved pluggables are required, so the wallet reads them without a cast.

Extends ​

Properties ​

acceptRelayerFee? ​

ts
optional acceptRelayerFee?: (quote) => boolean;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:65

Whether to pay a relayer fee quote. Asked for every quote the wallet is about to pay: spends, deposits, and the self-spends autoConsolidate and redenominate run. Returning false rejects the operation with FEE_ABOVE_LIMIT before anything is proven or signed.

Nothing else bounds the relayer's quote, so a wallet that runs unattended (an agent, an x402 payer) should set this. A single operation can also pass maxFee.

Default: every quote is paid.

Parameters ​

ParameterType
quoteRelayerFeeCheck

Returns ​

boolean

Inherited from ​

WalletConfig.acceptRelayerFee


chain ​

ts
chain: ChainReader;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:43

Inherited from ​

WalletConfig.chain


chainId ​

ts
chainId: bigint;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:29

Bound into the proof and the FMD query.

Inherited from ​

WalletConfig.chainId


denominations? ​

ts
optional denominations?: boolean;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:124

Whether this wallet uses withdrawal ladders. Defaults to true: each asset's ladder is derived from its scale and decimals; see protocol/denominations.

false disables ladders everywhere: change splits evenly, previewWithdraw reports no ladder, and redenominate is a no-op. Applied when an AssetInfo is resolved, so every path uses the same policy.

Inherited from ​

WalletConfig.denominations


feeBps? ​

ts
optional feeBps?: FeeOverride;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:54

Replaces the protocol fee rates the pool reports, for every asset. 1 bp = 0.01%.

A bigint sets both legs; { depositBps, withdrawBps } sets them separately. Applied when an AssetInfo is resolved, so deposit, withdraw, swap and previewWithdraw use the same rates.

Intended for pools whose rates the SDK cannot read: forks, fixtures, or chains without a deployed registry. Against a live pool, quotes become wrong as soon as the owner changes a rate.

Inherited from ​

WalletConfig.feeBps


fmdUrl? ​

ts
optional fmdUrl?: string;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:81

Required if noteSource is not provided.

Inherited from ​

WalletConfig.fmdUrl


genericCallWrapperAddress? ​

ts
optional genericCallWrapperAddress?: string;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:77

GenericCallWrapper address. Default: read from the relayer's /chains.

Inherited from ​

WalletConfig.genericCallWrapperAddress


http? ​

ts
optional http?: HttpOptions;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:71

Transport options for every default HTTP pluggable (the FMD client, the relayer submitter and the quoter): fetch, timeouts, retries, onRetry and extra headers. Ignored for pre-built pluggables.

Inherited from ​

WalletConfig.http


nameRegistrarAddress? ​

ts
optional nameRegistrarAddress?: string;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:79

LelantosNameRegistrar address. Without it capabilities.registerName is false.

Inherited from ​

WalletConfig.nameRegistrarAddress


noteSource ​

ts
noteSource: NoteSource;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:144

Defaults to fmd-webserver.

Overrides ​

WalletConfig.noteSource


noteStore ​

ts
noteStore: NoteStore;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:143

Defaults to in-memory.

Overrides ​

WalletConfig.noteStore


nullifierPersistence? ​

ts
optional nullifierPersistence?: NullifierPersistence;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:103

As treePersistence, for the spent set. Ignored when nullifierStore is set.

Inherited from ​

WalletConfig.nullifierPersistence


nullifierStore ​

ts
nullifierStore: NullifierStore;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:146

Defaults to a NullifierStore backed by fmd-webserver nullifier chunks.

Overrides ​

WalletConfig.nullifierStore


prover ​

ts
prover: Prover;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:148


quoterUrl? ​

ts
optional quoterUrl?: string;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:73

MetaQuoter base URL. Without it the wallet's capabilities.swap is false.

Inherited from ​

WalletConfig.quoterUrl


relayerAddress ​

ts
relayerAddress: string;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:42

SNARK-bound as pi.relayer (and a swap's pi_w.payer). Must be the submitter address the relayer publishes on /chains: its Bundler contract where it bundles, not its signing EOA. Any other value reverts on chain.

Inherited from ​

WalletConfig.relayerAddress


relayerUrl? ​

ts
optional relayerUrl?: string;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:83

Required if submitter is not provided.

Inherited from ​

WalletConfig.relayerUrl


scanner ​

ts
scanner: Scanner;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:150

Defaults to LocalScanner. WorkerPoolScanner scans in parallel off the main thread.

Overrides ​

WalletConfig.scanner


selector ​

ts
selector: CoinSelector;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:149

Defaults to SFRT.

Overrides ​

WalletConfig.selector


shape ​

ts
shape: CircuitShape;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:142

Input/output arity of the transact circuit. Defaults to DEFAULT_SHAPE (4×6), the only shape the circuits package publishes keys for; see protocol/shape.ts.

Overrides ​

WalletConfig.shape


submitter ​

ts
submitter: Submitter;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:147

Defaults to HTTP relayer.

Overrides ​

WalletConfig.submitter


submitTimeoutMs? ​

ts
optional submitTimeoutMs?: number;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:88

Per-attempt submit deadline, in ms, for the default relayer submitter on this chain. See NetworkPreset.submitTimeoutMs. Default 30 000. Ignored when submitter is provided.

Inherited from ​

WalletConfig.submitTimeoutMs


swapWrapperAddress? ​

ts
optional swapWrapperAddress?: string;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:75

SwapWrapper address. Default: read from the relayer's /chains.

Inherited from ​

WalletConfig.swapWrapperAddress


syncStrategy? ​

ts
optional syncStrategy?: SyncStrategy;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:105

Default { kind: "full" }.

Inherited from ​

WalletConfig.syncStrategy


treeDepth ​

ts
treeDepth: number;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:31

Must match the deployed contract and the circuit build.

Inherited from ​

WalletConfig.treeDepth


treePersistence? ​

ts
optional treePersistence?: TreePersistence;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:99

Persistence backend (e.g. IndexedDB) that resumes sync across page loads. Ignored when treeStore is provided.

Inherited from ​

WalletConfig.treePersistence


treeStore ​

ts
treeStore: TreeStore;

Defined in: @lelantos-org/sdk/dist/wallet/types/config.d.ts:145

Defaults to a TreeStore backed by fmd-webserver commitment chunks.

Overrides ​

WalletConfig.treeStore