// Use DBML to define your database structure
// Docs: https://dbml.dbdiagram.io/docs

Table users {
  id integer [primary key]
  username varchar unique
  email varchar unique
  password varchar
  created_at timestamp
  is_active bool
  role integer
  personalgroup integer
}

Table groups {
  id integer [primary key]
  name varchar
  owner integer
}

Table groupMembership {
  membershipid integer [primary key]
  groupid integer
  userid integer
  moderator bool
}


Table roles {
  id integer [primary key]
  name varchar
  description varchar
  level integer
}

Table reciepts {
  id integer [primary key]
  groupid integer
  data nvarchar
  created_at timestamp
  updated_at timestamp
}

// Table imageOwnership {
//   ownershipid integer [primary key]
//   receiptid integer
//   imageid integer
// }

Table images {
  id integer [primary key]
  receiptid integer
  created_at timestamp
  path varchar
  added bool
}



Ref: "users"."personalgroup" > "groups"."id"

Ref: "groups"."owner" > "users"."id"

Ref: "groups"."id" < "groupMembership"."groupid"

Ref: "groupMembership"."userid" < "users"."id"

Ref: "roles"."id" < "users"."role"

// Ref: "reciepts"."id" < "imageOwnership"."receiptid"

// Ref: "images"."id" < "imageOwnership"."imageid"

Ref: "reciepts"."id" < "images"."receiptid"

Ref: "groups"."id" < "reciepts"."groupownerid"