# 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.
