A timelock allows a Bitcoin transaction to be created such that the recipient of the outputs cannot spend them for a specified time. The amount of time can be specified by either block height or Unix timestamp
The timelock is specified in a dedicated part of each transaction. However, most transactions simply leave the timelock blank to avoid using this functionality. Timelocks are useful for creating Hashed Timelock Contracts (HTLCs), which drive the Lightning Network.