A timelock is a piece of code in a smart contract that can lock the functionality of an application for a certain amount of time. Timelocks are often used to support masterchef contracts. They are important because they offer high security against rug pulls.
Without a timelock, if the developers of a scam project want to change some parameters in the masterchef, they can do so directly. By implementing a timelock, the developer must first call a queue transaction containing the changes to the contract. Depending on how the timelock is set, let’s say a timelock period of 3 days, it takes 3 days before the modification of the contract made by the developer is executed by means of an execution transaction.
This protects investors from getting rug-pulled, if they are able to react in time before timelock reaches the predefined period of time that is.