His contract runs until the end of the 2023 season, and then he has a year of arbitration. In baseball arbitration means the team and the player negotiate a 1-year contract by comparing his performance to other players and the contracts those guys got at the same stage in their career. If the two sides don't come to an agreement then they submit a figure of what they think he's worth and a mediator/arbitrator decides which of the two figures - the one submitted by the team and the other by the player - is fairer value.
TL;DR: he's a free agent at the 2025 season.