> ## Documentation Index
> Fetch the complete documentation index at: https://docs.voiz.digital/llms.txt
> Use this file to discover all available pages before exploring further.

# Resolve a market

> Publish the winning outcome. Trading stops on purpose.

Call `canResolve` first, then `resolve`. Admin markets: you must be `marketAdmin`. The SDK passes that as `requiredSigner` so an AA app can route to the admin key. A plain wallet ignores that hint and signs with whoever is connected. Committee markets: you vote; `threshold` votes finish it.

```ts theme={null}
if (!(await market.canResolve(yourAddress))) {
  throw new Error('Not allowed to resolve')
}

await market.resolve({ outcomeIndex: 0 }) // or numOutcomes for Invalid
```

After resolve, [`market.prices()`](/market/prices) shows the winner at 100%. `buy` / `sell` revert `Resolved`. Outcome shares: [`market.redeem`](/market/redeem). LP shares: [`market.redeemLp`](/market/redeem-lp).

## Next

[Pause trading](/market/pause-trading)
