Under the hood, lawg uses pika-id to generate ID’s.

They look like this

prefix_xxxxxxxx

and secure ID’s look like this

prefix_s_xxxxxx

You can find more information about Pika IDs and how you can decode them to gain information about the ID here

You can define lawg ID’s like this

type PikaIds =
  | "user"
  | "project"
  | "feed"
  | "event"
  | "lawg"
  | "device"
  | "session"
  | "pm" // project member, used internally
  | "log"
  | "comment"
  | "activity";

type Id<T extends PikaIds> = `${T}_${string}`;