{ "version": "6", "dialect": "sqlite", "id": "7e42f601-84d5-4cd1-87aa-353c414bf93b", "prevId": "283103be-1a26-40c1-9919-1e5cfa2a9984", "tables": { "api_keys": { "name": "api_keys", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "token_hash": { "name": "token_hash", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "token_prefix": { "name": "token_prefix", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" }, "expires_at": { "name": "expires_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "last_used_at": { "name": "last_used_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "is_active": { "name": "is_active", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": true } }, "indexes": { "idx_api_keys_user_id": { "name": "idx_api_keys_user_id", "columns": [ "user_id" ], "isUnique": false } }, "foreignKeys": { "api_keys_user_id_users_id_fk": { "name": "api_keys_user_id_users_id_fk", "tableFrom": "api_keys", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "audit_logs": { "name": "audit_logs", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "username": { "name": "username", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "action": { "name": "action", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "resource_type": { "name": "resource_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "resource_id": { "name": "resource_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "resource_name": { "name": "resource_name", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "details": { "name": "details", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "ip_address": { "name": "ip_address", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "user_agent": { "name": "user_agent", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "success": { "name": "success", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "error_message": { "name": "error_message", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "timestamp": { "name": "timestamp", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_audit_logs_timestamp": { "name": "idx_audit_logs_timestamp", "columns": [ "timestamp" ], "isUnique": false }, "idx_audit_logs_user_ts": { "name": "idx_audit_logs_user_ts", "columns": [ "user_id", "timestamp" ], "isUnique": false }, "idx_audit_logs_action_ts": { "name": "idx_audit_logs_action_ts", "columns": [ "action", "timestamp" ], "isUnique": false }, "idx_audit_logs_resource_ts": { "name": "idx_audit_logs_resource_ts", "columns": [ "resource_type", "timestamp" ], "isUnique": false } }, "foreignKeys": { "audit_logs_user_id_users_id_fk": { "name": "audit_logs_user_id_users_id_fk", "tableFrom": "audit_logs", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "credential_access": { "name": "credential_access", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "credential_id": { "name": "credential_id", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "role_id": { "name": "role_id", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "granted_by": { "name": "granted_by", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "permission_level": { "name": "permission_level", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'use'" }, "expires_at": { "name": "expires_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_credential_access_user_id": { "name": "idx_credential_access_user_id", "columns": [ "user_id" ], "isUnique": false }, "idx_credential_access_role_id": { "name": "idx_credential_access_role_id", "columns": [ "role_id" ], "isUnique": false }, "idx_credential_access_credential_id": { "name": "idx_credential_access_credential_id", "columns": [ "credential_id" ], "isUnique": false } }, "foreignKeys": { "credential_access_credential_id_ssh_credentials_id_fk": { "name": "credential_access_credential_id_ssh_credentials_id_fk", "tableFrom": "credential_access", "tableTo": "ssh_credentials", "columnsFrom": [ "credential_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "credential_access_user_id_users_id_fk": { "name": "credential_access_user_id_users_id_fk", "tableFrom": "credential_access", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "credential_access_role_id_roles_id_fk": { "name": "credential_access_role_id_roles_id_fk", "tableFrom": "credential_access", "tableTo": "roles", "columnsFrom": [ "role_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "credential_access_granted_by_users_id_fk": { "name": "credential_access_granted_by_users_id_fk", "tableFrom": "credential_access", "tableTo": "users", "columnsFrom": [ "granted_by" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "credential_sidebar_preferences": { "name": "credential_sidebar_preferences", "columns": { "user_id": { "name": "user_id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "data": { "name": "data", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": {}, "foreignKeys": { "credential_sidebar_preferences_user_id_users_id_fk": { "name": "credential_sidebar_preferences_user_id_users_id_fk", "tableFrom": "credential_sidebar_preferences", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "dismissed_alerts": { "name": "dismissed_alerts", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "alert_id": { "name": "alert_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "dismissed_at": { "name": "dismissed_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_dismissed_alerts_user_id": { "name": "idx_dismissed_alerts_user_id", "columns": [ "user_id" ], "isUnique": false } }, "foreignKeys": { "dismissed_alerts_user_id_users_id_fk": { "name": "dismissed_alerts_user_id_users_id_fk", "tableFrom": "dismissed_alerts", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "folder_access": { "name": "folder_access", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "owner_user_id": { "name": "owner_user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "folder": { "name": "folder", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "role_id": { "name": "role_id", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "granted_by": { "name": "granted_by", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "permission_level": { "name": "permission_level", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'connect'" }, "expires_at": { "name": "expires_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_folder_access_owner_folder": { "name": "idx_folder_access_owner_folder", "columns": [ "owner_user_id", "folder" ], "isUnique": false } }, "foreignKeys": { "folder_access_owner_user_id_users_id_fk": { "name": "folder_access_owner_user_id_users_id_fk", "tableFrom": "folder_access", "tableTo": "users", "columnsFrom": [ "owner_user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "folder_access_user_id_users_id_fk": { "name": "folder_access_user_id_users_id_fk", "tableFrom": "folder_access", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "folder_access_role_id_roles_id_fk": { "name": "folder_access_role_id_roles_id_fk", "tableFrom": "folder_access", "tableTo": "roles", "columnsFrom": [ "role_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "folder_access_granted_by_users_id_fk": { "name": "folder_access_granted_by_users_id_fk", "tableFrom": "folder_access", "tableTo": "users", "columnsFrom": [ "granted_by" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "host_access": { "name": "host_access", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "host_id": { "name": "host_id", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "role_id": { "name": "role_id", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "granted_by": { "name": "granted_by", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "permission_level": { "name": "permission_level", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'connect'" }, "expires_at": { "name": "expires_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" }, "last_accessed_at": { "name": "last_accessed_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "access_count": { "name": "access_count", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 } }, "indexes": { "idx_host_access_user_id": { "name": "idx_host_access_user_id", "columns": [ "user_id" ], "isUnique": false }, "idx_host_access_role_id": { "name": "idx_host_access_role_id", "columns": [ "role_id" ], "isUnique": false }, "idx_host_access_host_id": { "name": "idx_host_access_host_id", "columns": [ "host_id" ], "isUnique": false }, "idx_host_access_expires_at": { "name": "idx_host_access_expires_at", "columns": [ "expires_at" ], "isUnique": false } }, "foreignKeys": { "host_access_host_id_ssh_data_id_fk": { "name": "host_access_host_id_ssh_data_id_fk", "tableFrom": "host_access", "tableTo": "ssh_data", "columnsFrom": [ "host_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "host_access_user_id_users_id_fk": { "name": "host_access_user_id_users_id_fk", "tableFrom": "host_access", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "host_access_role_id_roles_id_fk": { "name": "host_access_role_id_roles_id_fk", "tableFrom": "host_access", "tableTo": "roles", "columnsFrom": [ "role_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "host_access_granted_by_users_id_fk": { "name": "host_access_granted_by_users_id_fk", "tableFrom": "host_access", "tableTo": "users", "columnsFrom": [ "granted_by" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "host_sidebar_preferences": { "name": "host_sidebar_preferences", "columns": { "user_id": { "name": "user_id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "data": { "name": "data", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": {}, "foreignKeys": { "host_sidebar_preferences_user_id_users_id_fk": { "name": "host_sidebar_preferences_user_id_users_id_fk", "tableFrom": "host_sidebar_preferences", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "ssh_data": { "name": "ssh_data", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "connection_type": { "name": "connection_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'ssh'" }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "ip": { "name": "ip", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "port": { "name": "port", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "username": { "name": "username", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "folder": { "name": "folder", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "parent_host_id": { "name": "parent_host_id", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "tags": { "name": "tags", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "pin": { "name": "pin", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "sort_order": { "name": "sort_order", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "auth_type": { "name": "auth_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "share_ssh_auth": { "name": "share_ssh_auth", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "force_keyboard_interactive": { "name": "force_keyboard_interactive", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "password": { "name": "password", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "key": { "name": "key", "type": "text(8192)", "primaryKey": false, "notNull": false, "autoincrement": false }, "key_password": { "name": "key_password", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "key_type": { "name": "key_type", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "sudo_password": { "name": "sudo_password", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "autostart_password": { "name": "autostart_password", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "autostart_key": { "name": "autostart_key", "type": "text(8192)", "primaryKey": false, "notNull": false, "autoincrement": false }, "autostart_key_password": { "name": "autostart_key_password", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "credential_id": { "name": "credential_id", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "override_credential_username": { "name": "override_credential_username", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "jump_hosts": { "name": "jump_hosts", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "status_check_enabled": { "name": "status_check_enabled", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": true }, "status_check_interval": { "name": "status_check_interval", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "terminal_config": { "name": "terminal_config", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "quick_actions": { "name": "quick_actions", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "notes": { "name": "notes", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "enable_ssh": { "name": "enable_ssh", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": true }, "ssh_port": { "name": "ssh_port", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false, "default": 22 }, "rdp_credential_id": { "name": "rdp_credential_id", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "rdp_user": { "name": "rdp_user", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "rdp_password": { "name": "rdp_password", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "rdp_domain": { "name": "rdp_domain", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "vnc_credential_id": { "name": "vnc_credential_id", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "vnc_password": { "name": "vnc_password", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "vnc_user": { "name": "vnc_user", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "telnet_user": { "name": "telnet_user", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "telnet_password": { "name": "telnet_password", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "telnet_credential_id": { "name": "telnet_credential_id", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "rdp_auth_type": { "name": "rdp_auth_type", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "vnc_auth_type": { "name": "vnc_auth_type", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "telnet_auth_type": { "name": "telnet_auth_type", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "domain": { "name": "domain", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "use_socks5": { "name": "use_socks5", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "socks5_host": { "name": "socks5_host", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "socks5_port": { "name": "socks5_port", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "socks5_username": { "name": "socks5_username", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "socks5_password": { "name": "socks5_password", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "socks5_proxy_chain": { "name": "socks5_proxy_chain", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "connection_origin": { "name": "connection_origin", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "port_knock_sequence": { "name": "port_knock_sequence", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "host_key_fingerprint": { "name": "host_key_fingerprint", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "host_key_type": { "name": "host_key_type", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "host_key_algorithm": { "name": "host_key_algorithm", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false, "default": "'sha256'" }, "host_key_first_seen": { "name": "host_key_first_seen", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "host_key_last_verified": { "name": "host_key_last_verified", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "host_key_changed_count": { "name": "host_key_changed_count", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false, "default": 0 }, "sync_id": { "name": "sync_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "ssh_data_sync_id_unique": { "name": "ssh_data_sync_id_unique", "columns": [ "sync_id" ], "isUnique": true }, "idx_ssh_data_user_id": { "name": "idx_ssh_data_user_id", "columns": [ "user_id" ], "isUnique": false }, "idx_ssh_data_parent_host": { "name": "idx_ssh_data_parent_host", "columns": [ "parent_host_id" ], "isUnique": false }, "idx_ssh_data_credential": { "name": "idx_ssh_data_credential", "columns": [ "credential_id" ], "isUnique": false } }, "foreignKeys": { "ssh_data_user_id_users_id_fk": { "name": "ssh_data_user_id_users_id_fk", "tableFrom": "ssh_data", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "ssh_data_parent_host_id_ssh_data_id_fk": { "name": "ssh_data_parent_host_id_ssh_data_id_fk", "tableFrom": "ssh_data", "tableTo": "ssh_data", "columnsFrom": [ "parent_host_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" }, "ssh_data_credential_id_ssh_credentials_id_fk": { "name": "ssh_data_credential_id_ssh_credentials_id_fk", "tableFrom": "ssh_data", "tableTo": "ssh_credentials", "columnsFrom": [ "credential_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" }, "ssh_data_rdp_credential_id_ssh_credentials_id_fk": { "name": "ssh_data_rdp_credential_id_ssh_credentials_id_fk", "tableFrom": "ssh_data", "tableTo": "ssh_credentials", "columnsFrom": [ "rdp_credential_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" }, "ssh_data_vnc_credential_id_ssh_credentials_id_fk": { "name": "ssh_data_vnc_credential_id_ssh_credentials_id_fk", "tableFrom": "ssh_data", "tableTo": "ssh_credentials", "columnsFrom": [ "vnc_credential_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" }, "ssh_data_telnet_credential_id_ssh_credentials_id_fk": { "name": "ssh_data_telnet_credential_id_ssh_credentials_id_fk", "tableFrom": "ssh_data", "tableTo": "ssh_credentials", "columnsFrom": [ "telnet_credential_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "notification_channels": { "name": "notification_channels", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "type": { "name": "type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "config": { "name": "config", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "enabled": { "name": "enabled", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": true }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": {}, "foreignKeys": { "notification_channels_user_id_users_id_fk": { "name": "notification_channels_user_id_users_id_fk", "tableFrom": "notification_channels", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "plugin_install_counts": { "name": "plugin_install_counts", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "plugin_id": { "name": "plugin_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "registry_id": { "name": "registry_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "count": { "name": "count", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "source": { "name": "source", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'aggregate-telemetry'" }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_plugin_install_counts_plugin_registry": { "name": "idx_plugin_install_counts_plugin_registry", "columns": [ "plugin_id", "registry_id" ], "isUnique": true } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "plugin_migrations": { "name": "plugin_migrations", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "plugin_id": { "name": "plugin_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "migration_id": { "name": "migration_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "checksum": { "name": "checksum", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "applied_at": { "name": "applied_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_plugin_migrations_plugin_migration": { "name": "idx_plugin_migrations_plugin_migration", "columns": [ "plugin_id", "migration_id" ], "isUnique": true } }, "foreignKeys": { "plugin_migrations_plugin_id_plugins_id_fk": { "name": "plugin_migrations_plugin_id_plugins_id_fk", "tableFrom": "plugin_migrations", "tableTo": "plugins", "columnsFrom": [ "plugin_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "plugin_permission_grants": { "name": "plugin_permission_grants", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "plugin_id": { "name": "plugin_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "capability": { "name": "capability", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "granted_at": { "name": "granted_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" }, "granted_by": { "name": "granted_by", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "source": { "name": "source", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'admin'" } }, "indexes": { "idx_plugin_permission_grants_plugin_capability": { "name": "idx_plugin_permission_grants_plugin_capability", "columns": [ "plugin_id", "capability" ], "isUnique": true } }, "foreignKeys": { "plugin_permission_grants_plugin_id_plugins_id_fk": { "name": "plugin_permission_grants_plugin_id_plugins_id_fk", "tableFrom": "plugin_permission_grants", "tableTo": "plugins", "columnsFrom": [ "plugin_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "plugin_permission_grants_granted_by_users_id_fk": { "name": "plugin_permission_grants_granted_by_users_id_fk", "tableFrom": "plugin_permission_grants", "tableTo": "users", "columnsFrom": [ "granted_by" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "plugin_registries": { "name": "plugin_registries", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "url": { "name": "url", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "kind": { "name": "kind", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'community'" }, "enabled": { "name": "enabled", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": true }, "signing_key": { "name": "signing_key", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "last_checked_at": { "name": "last_checked_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "last_index_hash": { "name": "last_index_hash", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "plugin_settings": { "name": "plugin_settings", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "plugin_id": { "name": "plugin_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "scope": { "name": "scope", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "scope_id": { "name": "scope_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "key": { "name": "key", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "value": { "name": "value", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "encrypted": { "name": "encrypted", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_plugin_settings_scope_key": { "name": "idx_plugin_settings_scope_key", "columns": [ "plugin_id", "scope", "scope_id", "key" ], "isUnique": true }, "idx_plugin_settings_plugin_scope": { "name": "idx_plugin_settings_plugin_scope", "columns": [ "plugin_id", "scope" ], "isUnique": false } }, "foreignKeys": { "plugin_settings_plugin_id_plugins_id_fk": { "name": "plugin_settings_plugin_id_plugins_id_fk", "tableFrom": "plugin_settings", "tableTo": "plugins", "columnsFrom": [ "plugin_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "plugin_storage": { "name": "plugin_storage", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "plugin_id": { "name": "plugin_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "key": { "name": "key", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "value": { "name": "value", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_plugin_storage_plugin_key": { "name": "idx_plugin_storage_plugin_key", "columns": [ "plugin_id", "key" ], "isUnique": true } }, "foreignKeys": { "plugin_storage_plugin_id_plugins_id_fk": { "name": "plugin_storage_plugin_id_plugins_id_fk", "tableFrom": "plugin_storage", "tableTo": "plugins", "columnsFrom": [ "plugin_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "plugins": { "name": "plugins", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "version": { "name": "version", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "tier": { "name": "tier", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'available'" }, "source": { "name": "source", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'community'" }, "registry_id": { "name": "registry_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "state": { "name": "state", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'disabled'" }, "last_error": { "name": "last_error", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "installed_at": { "name": "installed_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" }, "auto_update": { "name": "auto_update", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "manifest_json": { "name": "manifest_json", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": { "idx_plugins_registry_id": { "name": "idx_plugins_registry_id", "columns": [ "registry_id" ], "isUnique": false } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "rbac_applied_defaults": { "name": "rbac_applied_defaults", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "role_name": { "name": "role_name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "permission": { "name": "permission", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "applied_at": { "name": "applied_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_rbac_applied_defaults_role_permission": { "name": "idx_rbac_applied_defaults_role_permission", "columns": [ "role_name", "permission" ], "isUnique": true } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "rbac_known_permissions": { "name": "rbac_known_permissions", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "permission": { "name": "permission", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "plugin_id": { "name": "plugin_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "first_seen_at": { "name": "first_seen_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_rbac_known_permissions_permission": { "name": "idx_rbac_known_permissions_permission", "columns": [ "permission" ], "isUnique": true } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "recent_activity": { "name": "recent_activity", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "type": { "name": "type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "host_id": { "name": "host_id", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "host_name": { "name": "host_name", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "timestamp": { "name": "timestamp", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_recent_activity_user_ts": { "name": "idx_recent_activity_user_ts", "columns": [ "user_id", "timestamp" ], "isUnique": false } }, "foreignKeys": { "recent_activity_user_id_users_id_fk": { "name": "recent_activity_user_id_users_id_fk", "tableFrom": "recent_activity", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "recent_activity_host_id_ssh_data_id_fk": { "name": "recent_activity_host_id_ssh_data_id_fk", "tableFrom": "recent_activity", "tableTo": "ssh_data", "columnsFrom": [ "host_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "roles": { "name": "roles", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "display_name": { "name": "display_name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "is_system": { "name": "is_system", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "permissions": { "name": "permissions", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "roles_name_unique": { "name": "roles_name_unique", "columns": [ "name" ], "isUnique": true } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "sessions": { "name": "sessions", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "jwt_token": { "name": "jwt_token", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "device_type": { "name": "device_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "device_info": { "name": "device_info", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "oidc_sub": { "name": "oidc_sub", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "oidc_sid": { "name": "oidc_sid", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "sso_provider_id": { "name": "sso_provider_id", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" }, "expires_at": { "name": "expires_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "last_active_at": { "name": "last_active_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_sessions_user_id": { "name": "idx_sessions_user_id", "columns": [ "user_id" ], "isUnique": false }, "idx_sessions_expires_at": { "name": "idx_sessions_expires_at", "columns": [ "expires_at" ], "isUnique": false } }, "foreignKeys": { "sessions_user_id_users_id_fk": { "name": "sessions_user_id_users_id_fk", "tableFrom": "sessions", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "settings": { "name": "settings", "columns": { "key": { "name": "key", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "value": { "name": "value", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "shared_credential_secrets": { "name": "shared_credential_secrets", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "credential_access_id": { "name": "credential_access_id", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "target_user_id": { "name": "target_user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "credential_id": { "name": "credential_id", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "encrypted_username": { "name": "encrypted_username", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "auth_type": { "name": "auth_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'password'" }, "encrypted_password": { "name": "encrypted_password", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "encrypted_key": { "name": "encrypted_key", "type": "text(16384)", "primaryKey": false, "notNull": false, "autoincrement": false }, "encrypted_key_password": { "name": "encrypted_key_password", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "key_type": { "name": "key_type", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "public_key": { "name": "public_key", "type": "text(4096)", "primaryKey": false, "notNull": false, "autoincrement": false }, "cert_public_key": { "name": "cert_public_key", "type": "text(8192)", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_shared_credential_secrets_scope": { "name": "idx_shared_credential_secrets_scope", "columns": [ "credential_access_id", "target_user_id" ], "isUnique": true }, "idx_shared_credential_secrets_target": { "name": "idx_shared_credential_secrets_target", "columns": [ "target_user_id", "credential_id" ], "isUnique": false } }, "foreignKeys": { "shared_credential_secrets_target_user_id_users_id_fk": { "name": "shared_credential_secrets_target_user_id_users_id_fk", "tableFrom": "shared_credential_secrets", "tableTo": "users", "columnsFrom": [ "target_user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "shared_credential_secrets_credential_id_ssh_credentials_id_fk": { "name": "shared_credential_secrets_credential_id_ssh_credentials_id_fk", "tableFrom": "shared_credential_secrets", "tableTo": "ssh_credentials", "columnsFrom": [ "credential_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "shared_cred_secrets_access_id_fk": { "name": "shared_cred_secrets_access_id_fk", "tableFrom": "shared_credential_secrets", "tableTo": "credential_access", "columnsFrom": [ "credential_access_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "shared_host_auth_overrides": { "name": "shared_host_auth_overrides", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "host_id": { "name": "host_id", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "protocol": { "name": "protocol", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'ssh'" }, "credential_id": { "name": "credential_id", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "shared_host_auth_overrides_host_user_protocol_unique": { "name": "shared_host_auth_overrides_host_user_protocol_unique", "columns": [ "host_id", "user_id", "protocol" ], "isUnique": true } }, "foreignKeys": { "shared_host_auth_overrides_host_id_ssh_data_id_fk": { "name": "shared_host_auth_overrides_host_id_ssh_data_id_fk", "tableFrom": "shared_host_auth_overrides", "tableTo": "ssh_data", "columnsFrom": [ "host_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "shared_host_auth_overrides_user_id_users_id_fk": { "name": "shared_host_auth_overrides_user_id_users_id_fk", "tableFrom": "shared_host_auth_overrides", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "shared_host_auth_overrides_credential_id_ssh_credentials_id_fk": { "name": "shared_host_auth_overrides_credential_id_ssh_credentials_id_fk", "tableFrom": "shared_host_auth_overrides", "tableTo": "ssh_credentials", "columnsFrom": [ "credential_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "shared_host_secrets": { "name": "shared_host_secrets", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "host_access_id": { "name": "host_access_id", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "target_user_id": { "name": "target_user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "protocol": { "name": "protocol", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'ssh'" }, "source_type": { "name": "source_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'credential'" }, "original_credential_id": { "name": "original_credential_id", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "encrypted_username": { "name": "encrypted_username", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "encrypted_auth_type": { "name": "encrypted_auth_type", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "encrypted_password": { "name": "encrypted_password", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "encrypted_key": { "name": "encrypted_key", "type": "text(16384)", "primaryKey": false, "notNull": false, "autoincrement": false }, "encrypted_key_password": { "name": "encrypted_key_password", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "encrypted_key_type": { "name": "encrypted_key_type", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "encrypted_domain": { "name": "encrypted_domain", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_shared_host_secrets_scope": { "name": "idx_shared_host_secrets_scope", "columns": [ "host_access_id", "target_user_id", "protocol" ], "isUnique": true } }, "foreignKeys": { "shared_host_secrets_host_access_id_host_access_id_fk": { "name": "shared_host_secrets_host_access_id_host_access_id_fk", "tableFrom": "shared_host_secrets", "tableTo": "host_access", "columnsFrom": [ "host_access_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "shared_host_secrets_target_user_id_users_id_fk": { "name": "shared_host_secrets_target_user_id_users_id_fk", "tableFrom": "shared_host_secrets", "tableTo": "users", "columnsFrom": [ "target_user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "shared_host_secrets_original_credential_id_ssh_credentials_id_fk": { "name": "shared_host_secrets_original_credential_id_ssh_credentials_id_fk", "tableFrom": "shared_host_secrets", "tableTo": "ssh_credentials", "columnsFrom": [ "original_credential_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "ssh_credential_usage": { "name": "ssh_credential_usage", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "credential_id": { "name": "credential_id", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "host_id": { "name": "host_id", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "used_at": { "name": "used_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_ssh_credential_usage_credential": { "name": "idx_ssh_credential_usage_credential", "columns": [ "credential_id" ], "isUnique": false }, "idx_ssh_credential_usage_user": { "name": "idx_ssh_credential_usage_user", "columns": [ "user_id" ], "isUnique": false } }, "foreignKeys": { "ssh_credential_usage_credential_id_ssh_credentials_id_fk": { "name": "ssh_credential_usage_credential_id_ssh_credentials_id_fk", "tableFrom": "ssh_credential_usage", "tableTo": "ssh_credentials", "columnsFrom": [ "credential_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "ssh_credential_usage_host_id_ssh_data_id_fk": { "name": "ssh_credential_usage_host_id_ssh_data_id_fk", "tableFrom": "ssh_credential_usage", "tableTo": "ssh_data", "columnsFrom": [ "host_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "ssh_credential_usage_user_id_users_id_fk": { "name": "ssh_credential_usage_user_id_users_id_fk", "tableFrom": "ssh_credential_usage", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "ssh_credentials": { "name": "ssh_credentials", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "folder": { "name": "folder", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "tags": { "name": "tags", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "pin": { "name": "pin", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "sort_order": { "name": "sort_order", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "auth_type": { "name": "auth_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "username": { "name": "username", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "password": { "name": "password", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "key": { "name": "key", "type": "text(16384)", "primaryKey": false, "notNull": false, "autoincrement": false }, "private_key": { "name": "private_key", "type": "text(16384)", "primaryKey": false, "notNull": false, "autoincrement": false }, "public_key": { "name": "public_key", "type": "text(4096)", "primaryKey": false, "notNull": false, "autoincrement": false }, "key_password": { "name": "key_password", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "key_type": { "name": "key_type", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "detected_key_type": { "name": "detected_key_type", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "cert_public_key": { "name": "cert_public_key", "type": "text(8192)", "primaryKey": false, "notNull": false, "autoincrement": false }, "usage_count": { "name": "usage_count", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "last_used": { "name": "last_used", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "sync_id": { "name": "sync_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "ssh_credentials_sync_id_unique": { "name": "ssh_credentials_sync_id_unique", "columns": [ "sync_id" ], "isUnique": true }, "idx_ssh_credentials_user_id": { "name": "idx_ssh_credentials_user_id", "columns": [ "user_id" ], "isUnique": false } }, "foreignKeys": { "ssh_credentials_user_id_users_id_fk": { "name": "ssh_credentials_user_id_users_id_fk", "tableFrom": "ssh_credentials", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "ssh_folders": { "name": "ssh_folders", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "color": { "name": "color", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "icon": { "name": "icon", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "credential_id": { "name": "credential_id", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "sort_order": { "name": "sort_order", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "sync_id": { "name": "sync_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "ssh_folders_sync_id_unique": { "name": "ssh_folders_sync_id_unique", "columns": [ "sync_id" ], "isUnique": true }, "idx_ssh_folders_user_id": { "name": "idx_ssh_folders_user_id", "columns": [ "user_id" ], "isUnique": false } }, "foreignKeys": { "ssh_folders_user_id_users_id_fk": { "name": "ssh_folders_user_id_users_id_fk", "tableFrom": "ssh_folders", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "ssh_folders_credential_id_ssh_credentials_id_fk": { "name": "ssh_folders_credential_id_ssh_credentials_id_fk", "tableFrom": "ssh_folders", "tableTo": "ssh_credentials", "columnsFrom": [ "credential_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "sync_tombstones": { "name": "sync_tombstones", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "entity_type": { "name": "entity_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "sync_id": { "name": "sync_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "deleted_at": { "name": "deleted_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": {}, "foreignKeys": { "sync_tombstones_user_id_users_id_fk": { "name": "sync_tombstones_user_id_users_id_fk", "tableFrom": "sync_tombstones", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "trusted_devices": { "name": "trusted_devices", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "device_fingerprint": { "name": "device_fingerprint", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "device_type": { "name": "device_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "device_info": { "name": "device_info", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" }, "expires_at": { "name": "expires_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "last_used_at": { "name": "last_used_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_trusted_devices_user_id": { "name": "idx_trusted_devices_user_id", "columns": [ "user_id" ], "isUnique": false } }, "foreignKeys": { "trusted_devices_user_id_users_id_fk": { "name": "trusted_devices_user_id_users_id_fk", "tableFrom": "trusted_devices", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "ui_preferences": { "name": "ui_preferences", "columns": { "user_id": { "name": "user_id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "data": { "name": "data", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": {}, "foreignKeys": { "ui_preferences_user_id_users_id_fk": { "name": "ui_preferences_user_id_users_id_fk", "tableFrom": "ui_preferences", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "user_external_identities": { "name": "user_external_identities", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "provider_id": { "name": "provider_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "subject": { "name": "subject", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "email": { "name": "email", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_user_external_identities_provider_subject": { "name": "idx_user_external_identities_provider_subject", "columns": [ "provider_id", "subject" ], "isUnique": true }, "idx_user_external_identities_user": { "name": "idx_user_external_identities_user", "columns": [ "user_id" ], "isUnique": false } }, "foreignKeys": { "user_external_identities_user_id_users_id_fk": { "name": "user_external_identities_user_id_users_id_fk", "tableFrom": "user_external_identities", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "user_open_tabs": { "name": "user_open_tabs", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "tab_type": { "name": "tab_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "host_id": { "name": "host_id", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "label": { "name": "label", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "tab_order": { "name": "tab_order", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "backend_session_id": { "name": "backend_session_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_user_open_tabs_user_id": { "name": "idx_user_open_tabs_user_id", "columns": [ "user_id" ], "isUnique": false } }, "foreignKeys": { "user_open_tabs_user_id_users_id_fk": { "name": "user_open_tabs_user_id_users_id_fk", "tableFrom": "user_open_tabs", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "user_open_tabs_host_id_ssh_data_id_fk": { "name": "user_open_tabs_host_id_ssh_data_id_fk", "tableFrom": "user_open_tabs", "tableTo": "ssh_data", "columnsFrom": [ "host_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "user_preferences": { "name": "user_preferences", "columns": { "user_id": { "name": "user_id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "reopen_tabs_on_login": { "name": "reopen_tabs_on_login", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "theme": { "name": "theme", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "font_size": { "name": "font_size", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "accent_color": { "name": "accent_color", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "language": { "name": "language", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "storage_mode": { "name": "storage_mode", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "command_autocomplete": { "name": "command_autocomplete", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "command_palette_enabled": { "name": "command_palette_enabled", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "show_host_tags": { "name": "show_host_tags", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "host_tray_on_click": { "name": "host_tray_on_click", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "pin_app_rail": { "name": "pin_app_rail", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "expand_app_rail_on_hover": { "name": "expand_app_rail_on_hover", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "show_pin_app_rail_button": { "name": "show_pin_app_rail_button", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "folders_collapsed": { "name": "folders_collapsed", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "confirm_snippet_execution": { "name": "confirm_snippet_execution", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "disable_update_check": { "name": "disable_update_check", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "confirm_tab_close": { "name": "confirm_tab_close", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "hidden_rail_tabs": { "name": "hidden_rail_tabs", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "compact_host_view": { "name": "compact_host_view", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "status_color_scheme": { "name": "status_color_scheme", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "custom_themes": { "name": "custom_themes", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "custom_keybindings": { "name": "custom_keybindings", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "terminal_defaults": { "name": "terminal_defaults", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "terminal_macros": { "name": "terminal_macros", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": {}, "foreignKeys": { "user_preferences_user_id_users_id_fk": { "name": "user_preferences_user_id_users_id_fk", "tableFrom": "user_preferences", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "user_roles": { "name": "user_roles", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "role_id": { "name": "role_id", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "granted_by": { "name": "granted_by", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "granted_at": { "name": "granted_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_user_roles_user_role": { "name": "idx_user_roles_user_role", "columns": [ "user_id", "role_id" ], "isUnique": true }, "idx_user_roles_role_id": { "name": "idx_user_roles_role_id", "columns": [ "role_id" ], "isUnique": false } }, "foreignKeys": { "user_roles_user_id_users_id_fk": { "name": "user_roles_user_id_users_id_fk", "tableFrom": "user_roles", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "user_roles_role_id_roles_id_fk": { "name": "user_roles_role_id_roles_id_fk", "tableFrom": "user_roles", "tableTo": "roles", "columnsFrom": [ "role_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "user_roles_granted_by_users_id_fk": { "name": "user_roles_granted_by_users_id_fk", "tableFrom": "user_roles", "tableTo": "users", "columnsFrom": [ "granted_by" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "user_second_factors": { "name": "user_second_factors", "columns": { "id": { "name": "id", "type": "integer", "primaryKey": true, "notNull": true, "autoincrement": true }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "plugin_id": { "name": "plugin_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "factor_id": { "name": "factor_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "enrolled_at": { "name": "enrolled_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "idx_user_second_factors_user_factor": { "name": "idx_user_second_factors_user_factor", "columns": [ "user_id", "plugin_id", "factor_id" ], "isUnique": true } }, "foreignKeys": { "user_second_factors_user_id_users_id_fk": { "name": "user_second_factors_user_id_users_id_fk", "tableFrom": "user_second_factors", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "users": { "name": "users", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "username": { "name": "username", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "password_hash": { "name": "password_hash", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "is_admin": { "name": "is_admin", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "is_oidc": { "name": "is_oidc", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "oidc_identifier": { "name": "oidc_identifier", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "sso_provider_id": { "name": "sso_provider_id", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "client_id": { "name": "client_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "client_secret": { "name": "client_secret", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "issuer_url": { "name": "issuer_url", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "authorization_url": { "name": "authorization_url", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "token_url": { "name": "token_url", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "identifier_path": { "name": "identifier_path", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "name_path": { "name": "name_path", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "scopes": { "name": "scopes", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false, "default": "'openid email profile'" }, "registered_at": { "name": "registered_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "CURRENT_TIMESTAMP" }, "donation_modal_dismissed": { "name": "donation_modal_dismissed", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} } }, "views": {}, "enums": {}, "_meta": { "schemas": {}, "tables": {}, "columns": {} }, "internal": { "indexes": {} } }