> For the complete documentation index, see [llms.txt](https://city-protocol.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://city-protocol.gitbook.io/docs/software-development-kit/vault/preview-and-limit-methods.md).

# Preview and Limit Methods

Preview methods are ideal for quoting expected returns in your UI before a user submits a transaction.

```tsx
const expectedShares = await client.previewDeposit({ vault, assets });
const requiredAssets = await client.previewMint({ vault, shares });
const expectedAssets = await client.previewRedeem({ vault, shares });
```

Limit methods help the frontend determine whether a user has sufficient balance and whether direct withdraw/redeem flows are available.

```tsx
const maxAssetsToDeposit = await client.maxDeposit({ vault, receiver });
const maxAssetsToWithdraw = await client.maxWithdraw({ vault, owner });
```
