///|
pub fn wasi_thread_start_bind(tid : ThreadId, encoded_start_arg : Int) -> Unit {
  @backend.wasi_thread_start_bind(tid, encoded_start_arg)
}

///|
pub fn wasi_thread_start_decode_entry_id(encoded_start_arg : Int) -> Int {
  @backend.wasi_thread_start_decode_entry_id(encoded_start_arg)
}

///|
pub fn wasi_thread_start_decode_start_arg(encoded_start_arg : Int) -> Int {
  @backend.wasi_thread_start_decode_start_arg(encoded_start_arg)
}

///|
pub fn wasi_thread_start_dispatch_i32(
  tid : ThreadId,
  encoded_start_arg : Int,
  dispatch : (EntryId, StartArg) -> Int,
) -> Int {
  @backend.wasi_thread_start_dispatch_i32(tid, encoded_start_arg, dispatch)
}

///|
pub fn wasi_current_thread_id() -> Int {
  @backend.wasi_current_thread_id()
}

///|
pub fn wasi_thread_complete(encoded_start_arg : Int, result : Int) -> Unit {
  @backend.wasi_thread_complete(encoded_start_arg, result)
}