CREATE TYPE user_role AS ENUM ('regular', 'admin'); CREATE TYPE session_kind AS ENUM ('api', 'user'); CREATE TABLE IF NOT EXISTS users ( username VARCHAR(255) NOT NULL PRIMARY KEY, "password" text NOT NULL, user_role user_role NOT NULL DEFAULT 'regular' ); CREATE TABLE IF NOT EXISTS user_session ( id UUID NOT NULL PRIMARY KEY DEFAULT gen_random_uuid(), token text NOT NULL, "user" varchar(255) NOT NULL, "created" timestamptz NOT NULL DEFAULT NOW(), "csrf" UUID NOT NULL DEFAULT gen_random_uuid(), "name" varchar(255), kind session_kind NOT NULL DEFAULT 'user', FOREIGN KEY("user") REFERENCES users(username) ); CREATE TABLE IF NOT EXISTS user_profile_pic ( username VARCHAR(255) NOT NULL PRIMARY KEY, "image" bytea NOT NULL );