{
  "version": "5",
  "dialect": "mysql",
  "id": "0ed02997-0c4f-4fa3-b656-02bbf3766103",
  "prevId": "d04d8daf-6c30-444c-aaa7-e5a5b1f2cb89",
  "tables": {
    "chats": {
      "name": "chats",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "email": {
          "name": "email",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "name": {
          "name": "name",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "subject": {
          "name": "subject",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "message": {
          "name": "message",
          "type": "text",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "is_read": {
          "name": "is_read",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "is_replied": {
          "name": "is_replied",
          "type": "boolean",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": false
        },
        "created_at": {
          "name": "created_at",
          "type": "datetime",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(CURRENT_TIMESTAMP)"
        }
      },
      "indexes": {},
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "chats_id": {
          "name": "chats_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "reply": {
      "name": "reply",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "chat_id": {
          "name": "chat_id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "reply": {
          "name": "reply",
          "type": "text",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "replied_by": {
          "name": "replied_by",
          "type": "int",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "replied_at": {
          "name": "replied_at",
          "type": "datetime",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(CURRENT_TIMESTAMP)"
        }
      },
      "indexes": {
        "chat_id": {
          "name": "chat_id",
          "columns": [
            "chat_id"
          ],
          "isUnique": false
        },
        "replied_by": {
          "name": "replied_by",
          "columns": [
            "replied_by"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {
        "reply_chat_id_chats_id_fk": {
          "name": "reply_chat_id_chats_id_fk",
          "tableFrom": "reply",
          "tableTo": "chats",
          "columnsFrom": [
            "chat_id"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "cascade"
        },
        "reply_replied_by_chats_id_fk": {
          "name": "reply_replied_by_chats_id_fk",
          "tableFrom": "reply",
          "tableTo": "chats",
          "columnsFrom": [
            "replied_by"
          ],
          "columnsTo": [
            "id"
          ],
          "onDelete": "cascade",
          "onUpdate": "cascade"
        }
      },
      "compositePrimaryKeys": {
        "reply_id": {
          "name": "reply_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "tokens": {
      "name": "tokens",
      "columns": {
        "token_id": {
          "name": "token_id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "email": {
          "name": "email",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "token": {
          "name": "token",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "expired_at": {
          "name": "expired_at",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "generated_at": {
          "name": "generated_at",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        }
      },
      "indexes": {
        "email": {
          "name": "email",
          "columns": [
            "email"
          ],
          "isUnique": false
        }
      },
      "foreignKeys": {
        "tokens_email_users_email_fk": {
          "name": "tokens_email_users_email_fk",
          "tableFrom": "tokens",
          "tableTo": "users",
          "columnsFrom": [
            "email"
          ],
          "columnsTo": [
            "email"
          ],
          "onDelete": "cascade",
          "onUpdate": "cascade"
        }
      },
      "compositePrimaryKeys": {
        "tokens_token_id": {
          "name": "tokens_token_id",
          "columns": [
            "token_id"
          ]
        }
      },
      "uniqueConstraints": {},
      "checkConstraint": {}
    },
    "users": {
      "name": "users",
      "columns": {
        "id": {
          "name": "id",
          "type": "int",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": true
        },
        "username": {
          "name": "username",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "email": {
          "name": "email",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "phone": {
          "name": "phone",
          "type": "varchar(15)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "address": {
          "name": "address",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "position": {
          "name": "position",
          "type": "varchar(50)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "'staff'"
        },
        "password": {
          "name": "password",
          "type": "varchar(500)",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false
        },
        "first_name": {
          "name": "first_name",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "last_name": {
          "name": "last_name",
          "type": "varchar(255)",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "is_admin": {
          "name": "is_admin",
          "type": "boolean",
          "primaryKey": false,
          "notNull": false,
          "autoincrement": false
        },
        "created_at": {
          "name": "created_at",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "default": "(now())"
        },
        "updated_at": {
          "name": "updated_at",
          "type": "timestamp",
          "primaryKey": false,
          "notNull": true,
          "autoincrement": false,
          "onUpdate": true,
          "default": "(now())"
        }
      },
      "indexes": {},
      "foreignKeys": {},
      "compositePrimaryKeys": {
        "users_id": {
          "name": "users_id",
          "columns": [
            "id"
          ]
        }
      },
      "uniqueConstraints": {
        "email": {
          "name": "email",
          "columns": [
            "email"
          ]
        },
        "phone": {
          "name": "phone",
          "columns": [
            "phone"
          ]
        },
        "username": {
          "name": "username",
          "columns": [
            "username"
          ]
        }
      },
      "checkConstraint": {}
    }
  },
  "views": {},
  "_meta": {
    "schemas": {},
    "tables": {},
    "columns": {}
  },
  "internal": {
    "tables": {},
    "indexes": {}
  }
}