> For the complete documentation index, see [llms.txt](https://docs.interestprotocol.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.interestprotocol.com/overview/deprecated/sui-tears/defi/vesting.md).

# Vesting

A utility module to provide virtual implementations of vesting schedules.

## Interface

### <mark style="color:blue;">new</mark>

**Calculates the amount that has already vested.**

```rust
public fun linear_vested_amount(start: u64, duration: u64, balance: u64, already_released: u64, timestamp: u64): u64
```

* **@param start:** The beginning of the vesting schedule.
* **@param duration:** The duration of the schedule.
* **@param balance:** The current amount of tokens in the wallet.
* **@param already\_released:** The total amount of tokens released.
* **@param timestamp:** The current time in milliseconds.
* **@return u64**. The vested amount.
