@arkade-os/sdk Documentation - v0.4.21
    Preparing search index...

    Interface WalletConfig

    Configuration options for full wallet initialization.

    This config provides full wallet capabilities including sending transactions, settling virtual outputs, and all readonly operations.

    • ReadonlyWalletConfig
    • IWallet
    // URL-based configuration
    const wallet = await Wallet.create({
    identity: MnemonicIdentity.fromMnemonic('abandon abandon...'),
    arkServerUrl: 'https://arkade.computer',
    esploraUrl: 'https://mempool.space/api'
    });

    // Provider-based configuration (e.g., for Expo/React Native)
    const wallet = await Wallet.create({
    identity: MnemonicIdentity.fromMnemonic('abandon abandon...'),
    arkProvider: new ExpoArkProvider('https://arkade.computer'),
    indexerProvider: new ExpoIndexerProvider('https://arkade.computer'),
    onchainProvider: new EsploraProvider('https://mempool.space/api')
    });

    // With settlement configuration
    const wallet = await Wallet.create({
    identity: MnemonicIdentity.fromMnemonic('abandon abandon...'),
    arkServerUrl: 'https://arkade.computer',
    settlementConfig: {
    vtxoThreshold: 60 * 60 * 24, // 24 hours in seconds
    boardingUtxoSweep: true,
    },
    });
    interface WalletConfig {
        arkProvider?: ArkProvider;
        arkServerPublicKey?: string;
        arkServerUrl?: string;
        boardingTimelock?: RelativeTimelock;
        delegatorProvider?: DelegatorProvider;
        esploraUrl?: string;
        exitTimelock?: RelativeTimelock;
        identity: Identity;
        indexerProvider?: IndexerProvider;
        indexerUrl?: string;
        onchainProvider?: OnchainProvider;
        renewalConfig?: RenewalConfig;
        settlementConfig?: false | SettlementConfig;
        storage?: StorageConfig;
        watcherConfig?: Partial<Omit<ContractWatcherConfig, "indexerProvider">>;
    }

    Hierarchy (View Summary)

    Index

    Properties

    arkProvider?: ArkProvider

    Optional Arkade provider instance.

    arkServerPublicKey?: string

    Optional Arkade server public key used to construct and validate Arkade addresses.

    arkServerUrl?: string

    Base URL of the Arkade server.

    boardingTimelock?: RelativeTimelock

    Relative timelock applied to boarding scripts.

    delegatorProvider?: DelegatorProvider

    Optional delegation service instance.

    esploraUrl?: string

    Optional override for the Esplora API URL.

    exitTimelock?: RelativeTimelock

    Relative timelock applied to unilateral exit paths.

    identity: Identity

    Signing identity used to authorize transactions.

    indexerProvider?: IndexerProvider

    Optional indexer provider instance.

    indexerUrl?: string

    Optional override for the indexer URL.

    onchainProvider?: OnchainProvider

    Optional onchain provider instance.

    renewalConfig?: RenewalConfig

    Legacy renewal configuration.

    This field is still accepted for backwards compatibility, but settlementConfig is the source of truth for new code.

    Use settlementConfig instead.

    settlementConfig?: false | SettlementConfig

    Configuration for automatic settlement and renewal. false = explicitly disabled, undefined or {} = enabled with defaults.

    undefined (enabled with defaults)

    SettlementConfig

    storage?: StorageConfig

    Repository-backed storage configuration overrides. Defaults to IndexedDB if unset.

    watcherConfig?: Partial<Omit<ContractWatcherConfig, "indexerProvider">>

    Configuration for the ContractManager's watcher. Controls reconnection behavior and failsafe polling.

    ContractWatcherConfig