Disperse · Types · 8@tokenops/sdk/fhe-disperse
Disperse type surface.
Singleton-shaped surface. Per-recipient ACL grants happen atomically inside disperse(); preflight gates the obvious failure modes.
Args· 3
DisperseArgs{ token, mode, recipients, amounts, gasFeeOverride?, account? }Batched payout. mode picks the entry point: 'wallet', 'wallet-token-fee', or 'direct'. The SDK encrypts the plaintext amounts.
DiscloseHandleArgs{ handle, party, account? }Grant persistent ACL on one ciphertext handle to a third party.
Concept primer →BatchDiscloseHandlesArgs{ handles, party, account? }Same disclosure, many handles in one tx.
Result / Preflight· 3
RegisterResult{ hash, wallets }Returned by register(). wallets is the [wallet0, wallet1] pair parsed from the UserRegistered event.
PreflightResult{ ready, blockers: TokenOpsSdkError[] }Shared preflight contract re-exported from core. Branch on each blocker's error.code to render UI.
Concept primer →DisperseResult{ hash, distributions }Tx hash + DisperseDistribution rows parsed from the receipt's distribution events.
Config· 2
ConfidentialDisperseClientConfig{ publicClient, walletClient?, address?, chainId?, encryptor?, aclAddress?, telemetry? }Singleton client constructor.
FeeConfig{ gasFeeEnabled, tokenFeeEnabled, defaultGasFee, defaultTokenFee }Global fee config. Round-trips between getFeeConfig() and setFeeConfig().