Skip to main content
Obtain with client.market(address). The VoizMarket class is not root-exported from @voiz/markets-sdk. Prefer summary / display helpers for UI. Sole public seed write is seed. Primary LP path is addLiquidity.
Private helpers (load, summaryFromRpc, outcomePrices) power the public reads below — not part of the app-facing API.

Reads

summary

Detail MarketSummary DTO: ponder-first, then RPC. Canonical for FE.
rpcOnly: true skips Ponder and reads chain only. requireFactory (default true on the RPC path) returns null when the address is not in the live factory list.

priceHistory

Windowed price history from the indexer (from = unix seconds). Soft-fails to [].

prices

Display prices — indexer snapshots (~30s) with live slot0 fallback. Not for trade quotes (use pool.quoteTrade).
Optional params: outcomes, wrappedTokens, numOutcomes, resolved, winningOutcome — omit to load from the market snapshot.

metrics

Liquidity + volume per outcome — indexer outcome table with live collateral-reserve fallback.
Optional params: wrappedTokens, numOutcomes.

seedStatus

Real outcome tokens only (not Invalid). "none" | "partial" | "seeded".
Pass outcomeTokens to skip the snapshot load (real outcomes only).

canResolve

Whether user can resolve: admin → user === marketAdmin; committee → MultisigOracle.isVoter(user).

Writes

seed

Sole public seed write: split once, then one send per outcome batch. marketAddress comes from this instance.
splitResult / outcomeResults are opaque sender results. Also accepts forceApprovals?: boolean.

resolve

Resolve via the client sender. Admin markets auto-pass marketAdmin as requiredSigner unless overridden.
Opaque sender result. Optional requiredSigner?: Address.

merge

Merge complete sets back to collateral.
Opaque sender result. Optional forceApprovals?: boolean, wrappedTokens?: Address[].

addLiquidity

Primary LP path: mint shares once, then provide into each open outcome pool.
Also accepts outcomeTokens, outcomeLabels, forceApprovals, skipUninitialized, getSqrtPriceX96, setProgress, continueOnError, onOutcomeError. splitResult / per-outcome result stay opaque.

ResolveParams

MergeParams