{ "version": "6", "dialect": "sqlite", "id": "5e7b8e52-00cf-4515-91e1-c6afdc990797", "prevId": "32259727-b523-472c-96c8-bf1260f7ac56", "tables": { "customers": { "name": "customers", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "display_name": { "name": "display_name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "email": { "name": "email", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "telegram_chat_id": { "name": "telegram_chat_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "portal_token": { "name": "portal_token", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(unixepoch('subsec') * 1000)" } }, "indexes": { "customers_telegram_chat_id_unique": { "name": "customers_telegram_chat_id_unique", "columns": [ "telegram_chat_id" ], "isUnique": true }, "customers_portal_token_unique": { "name": "customers_portal_token_unique", "columns": [ "portal_token" ], "isUnique": true } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "mailbox_config": { "name": "mailbox_config", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "imap_host": { "name": "imap_host", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "imap_port": { "name": "imap_port", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 993 }, "smtp_host": { "name": "smtp_host", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "smtp_port": { "name": "smtp_port", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 587 }, "user": { "name": "user", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "password_enc": { "name": "password_enc", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "allow_insecure_tls": { "name": "allow_insecure_tls", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "enabled": { "name": "enabled", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "verified_at": { "name": "verified_at", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(unixepoch('subsec') * 1000)" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "messages": { "name": "messages", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "ticket_id": { "name": "ticket_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "author_type": { "name": "author_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "author_id": { "name": "author_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "author_name": { "name": "author_name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "body": { "name": "body", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "direction": { "name": "direction", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "email_message_id": { "name": "email_message_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(unixepoch('subsec') * 1000)" } }, "indexes": {}, "foreignKeys": { "messages_ticket_id_tickets_id_fk": { "name": "messages_ticket_id_tickets_id_fk", "tableFrom": "messages", "tableTo": "tickets", "columnsFrom": [ "ticket_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "sessions": { "name": "sessions", "columns": { "token_hash": { "name": "token_hash", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "expires_at": { "name": "expires_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(unixepoch('subsec') * 1000)" } }, "indexes": {}, "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": {} }, "telegram_config": { "name": "telegram_config", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "bot_token_enc": { "name": "bot_token_enc", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "bot_username": { "name": "bot_username", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "enabled": { "name": "enabled", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "verified_at": { "name": "verified_at", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(unixepoch('subsec') * 1000)" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "tickets": { "name": "tickets", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "subject": { "name": "subject", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'new'" }, "priority": { "name": "priority", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'normal'" }, "channel": { "name": "channel", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "customer_id": { "name": "customer_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "assignee_id": { "name": "assignee_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "last_message_at": { "name": "last_message_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(unixepoch('subsec') * 1000)" }, "created_at": { "name": "created_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(unixepoch('subsec') * 1000)" }, "updated_at": { "name": "updated_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(unixepoch('subsec') * 1000)" } }, "indexes": {}, "foreignKeys": { "tickets_customer_id_customers_id_fk": { "name": "tickets_customer_id_customers_id_fk", "tableFrom": "tickets", "tableTo": "customers", "columnsFrom": [ "customer_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "tickets_assignee_id_users_id_fk": { "name": "tickets_assignee_id_users_id_fk", "tableFrom": "tickets", "tableTo": "users", "columnsFrom": [ "assignee_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "users": { "name": "users", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "email": { "name": "email", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "password_hash": { "name": "password_hash", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "role": { "name": "role", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'agent'" }, "created_at": { "name": "created_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "(unixepoch('subsec') * 1000)" } }, "indexes": { "users_email_unique": { "name": "users_email_unique", "columns": [ "email" ], "isUnique": true } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} } }, "views": {}, "enums": {}, "_meta": { "schemas": {}, "tables": {}, "columns": {} }, "internal": { "indexes": {} } }