diff --git a/src/module.ts b/src/module.ts
index 22446c7757e599b0a0e905d74c4fd863d0d88e9b..e8ec3335f1184de96ac4a678852fb9d1df2a837d 100644
--- a/src/module.ts
+++ b/src/module.ts
@@ -2,8 +2,9 @@ import { addImportsDir, addRouteMiddleware, addServerHandler, addServerImportsDi
 } from '@nuxt/kit'
 import { defu } from 'defu'
 
-export * from './runtime/types'
+import type { RoleType } from './runtime/types'
 
+export type { RoleType }
 export interface ModuleOptions {
   url: string
   apiKey: string
@@ -54,6 +55,11 @@ export default defineNuxtModule<ModuleOptions>({
   async setup(moduleOptions, nuxt) {
     // We create the `experimental` object if it doesn't exist yet
     const resolver = createResolver(import.meta.url)
+
+    // nuxt.options.alias['#galaxy'] = resolver.resolve(
+    //   './runtime/types/index',
+    // )
+
     // public runtime
     // nuxt.options.runtimeConfig.public.galaxy ||= {}
     const runtimeConfig = nuxt.options.runtimeConfig
diff --git a/src/runtime/types/index.ts b/src/runtime/types/index.ts
index 367f44b85005ad19600986d5ff277e5b14a2204d..9942a4024dc753062428c764e5260d8b798f9403 100644
--- a/src/runtime/types/index.ts
+++ b/src/runtime/types/index.ts
@@ -3,3 +3,4 @@ export type * from './db'
 export type * from './serverApi'
 export type * from './supabase'
 export type * from './galaxy/galaxyToolParameters'
+export type { RoleType } from '../server/db/schema/galaxy/roles'
diff --git a/src/runtime/types/supabase.ts b/src/runtime/types/supabase.ts
index c9d4ce870dc1e43285fe3da4f3e6562bd7382539..1eba40b8686b70d4260ce0d87ca272c5bdcaba26 100644
--- a/src/runtime/types/supabase.ts
+++ b/src/runtime/types/supabase.ts
@@ -109,6 +109,13 @@ export type Database = {
             referencedRelation: 'datasets'
             referencedColumns: ['id']
           },
+          {
+            foreignKeyName: 'analysis_inputs_dataset_id_datasets_id_fk'
+            columns: ['dataset_id']
+            isOneToOne: true
+            referencedRelation: 'datasets_with_storage_path'
+            referencedColumns: ['id']
+          },
         ]
       }
       analysis_ouputs: {
@@ -148,6 +155,13 @@ export type Database = {
             referencedRelation: 'datasets'
             referencedColumns: ['id']
           },
+          {
+            foreignKeyName: 'analysis_ouputs_dataset_id_datasets_id_fk'
+            columns: ['dataset_id']
+            isOneToOne: false
+            referencedRelation: 'datasets_with_storage_path'
+            referencedColumns: ['id']
+          },
           {
             foreignKeyName: 'analysis_ouputs_job_id_jobs_id_fk'
             columns: ['job_id']
@@ -162,12 +176,12 @@ export type Database = {
           annotation: string | null
           created_at: string
           data_lines: number | null
+          dataset_name: string
           extension: string
           file_size: number
           galaxy_id: string
           history_id: number
           id: number
-          name: string
           owner_id: string
           storage_object_id: string
           uuid: string
@@ -176,12 +190,12 @@ export type Database = {
           annotation?: string | null
           created_at?: string
           data_lines?: number | null
+          dataset_name: string
           extension: string
           file_size: number
           galaxy_id: string
           history_id: number
           id?: number
-          name: string
           owner_id: string
           storage_object_id: string
           uuid: string
@@ -190,12 +204,12 @@ export type Database = {
           annotation?: string | null
           created_at?: string
           data_lines?: number | null
+          dataset_name?: string
           extension?: string
           file_size?: number
           galaxy_id?: string
           history_id?: number
           id?: number
-          name?: string
           owner_id?: string
           storage_object_id?: string
           uuid?: string
@@ -231,6 +245,13 @@ export type Database = {
             referencedRelation: 'datasets'
             referencedColumns: ['id']
           },
+          {
+            foreignKeyName: 'datasets_to_tags_dataset_id_datasets_id_fk'
+            columns: ['dataset_id']
+            isOneToOne: false
+            referencedRelation: 'datasets_with_storage_path'
+            referencedColumns: ['id']
+          },
           {
             foreignKeyName: 'datasets_to_tags_tag_id_tags_id_fk'
             columns: ['tag_id']
@@ -358,6 +379,32 @@ export type Database = {
           },
         ]
       }
+      role_permissions: {
+        Row: {
+          id: number
+          permission: Database['galaxy']['Enums']['role_permissions_type']
+          role_id: number
+        }
+        Insert: {
+          id?: number
+          permission: Database['galaxy']['Enums']['role_permissions_type']
+          role_id: number
+        }
+        Update: {
+          id?: number
+          permission?: Database['galaxy']['Enums']['role_permissions_type']
+          role_id?: number
+        }
+        Relationships: [
+          {
+            foreignKeyName: 'role_permissions_role_id_roles_id_fk'
+            columns: ['role_id']
+            isOneToOne: false
+            referencedRelation: 'roles'
+            referencedColumns: ['id']
+          },
+        ]
+      }
       roles: {
         Row: {
           id: number
@@ -435,25 +482,25 @@ export type Database = {
           },
         ]
       }
-      user_profiles: {
+      user_roles: {
         Row: {
           id: number
-          owner_id: string
           role_id: number
+          user_id: string
         }
         Insert: {
           id?: number
-          owner_id: string
           role_id: number
+          user_id: string
         }
         Update: {
           id?: number
-          owner_id?: string
           role_id?: number
+          user_id?: string
         }
         Relationships: [
           {
-            foreignKeyName: 'user_profiles_role_id_roles_id_fk'
+            foreignKeyName: 'user_roles_role_id_roles_id_fk'
             columns: ['role_id']
             isOneToOne: false
             referencedRelation: 'roles'
@@ -531,10 +578,46 @@ export type Database = {
       }
     }
     Views: {
-      [_ in never]: never
+      datasets_with_storage_path: {
+        Row: {
+          annotation: string | null
+          created_at: string | null
+          data_lines: number | null
+          dataset_name: string | null
+          extension: string | null
+          file_size: number | null
+          galaxy_id: string | null
+          history_id: number | null
+          id: number | null
+          name: string | null
+          owner_id: string | null
+          storage_object_id: string | null
+          uuid: string | null
+        }
+        Relationships: [
+          {
+            foreignKeyName: 'datasets_history_id_histories_id_fk'
+            columns: ['history_id']
+            isOneToOne: false
+            referencedRelation: 'histories'
+            referencedColumns: ['id']
+          },
+        ]
+      }
     }
     Functions: {
-      [_ in never]: never
+      authorize: {
+        Args: {
+          requested_permission: Database['galaxy']['Enums']['role_permissions_type']
+        }
+        Returns: boolean
+      }
+      custom_access_token_hook: {
+        Args: {
+          event: Json
+        }
+        Returns: Json
+      }
     }
     Enums: {
       dataset_state:
@@ -586,6 +669,11 @@ export type Database = {
         | 'stop'
         | 'stopped'
         | 'skipped'
+      role_permissions_type:
+        | 'workflows.insert'
+        | 'workflows.delete'
+        | 'instances.insert'
+        | 'instances.delete'
       role_type: 'admin' | 'user'
     }
     CompositeTypes: {