Timelock
It locks any object with the store ability for a specific amount of time. We do not provide a function to read the data inside the {Timelock} to prevent capabilities from being used.
Structs
Timelock
  struct Timelock<T: store> has key, store {
    id: UID,
    unlock_time: u64,
    data: T,
  }- unlock_time - The unlock time in milliseconds. 
- data - Any object with the store ability. 
Interface
unlock_time
Returns the unlock time in milliseconds.
public fun unlock_time<T: store>(self: &Timelock<T>): u64- @param self: A {Timelock} 
- @return u64. The - self.unlock_time.
lock
Locks the data for unlock_time milliseconds.
public fun lock<T: store>(
    data: T, 
    c: &Clock,
    unlock_time: u64,
    ctx: &mut TxContext
): Timelock<T>- @param data: An object with the store ability. 
- @param c: The shared - sui::clock::Clockobject.
- @param unlock_time: The lock period in milliseconds. 
- @return {Timelock}. 
Aborts
- unlock_timeis in the past.
unlock
Unlocks a {Timelock} and returns the locked resource T.
public fun unlock<T: store>(self: Timelock<T>, c:&Clock): T- @param self: A {Timelock} 
- @param c: The shared - sui::clock::Clockobject.
- @return - T. An object with the store ability.
Aborts
- unlock_timehas not passed.
Last updated
Was this helpful?
