/** * @file Drizzle ORM类型定义 * @author hotok * @date 2025-06-29 * @lastEditor hotok * @lastEditTime 2025-06-29 * @description 定义Drizzle ORM相关的类型,包括数据库实例和表类型 */ import type { MySql2Database } from 'drizzle-orm/mysql2'; import type * as schema from '../src/plugins/drizzle/schema'; /** * Drizzle数据库实例类型 */ export type DrizzleDB = MySql2Database; /** * 数据库表Schema类型 */ export type DatabaseSchema = typeof schema; /** * 扩展Elysia Context,添加数据库实例 */ export interface DrizzleContext { /** Drizzle数据库实例 */ db: DrizzleDB; } /** * 数据库连接状态 */ export type ConnectionStatus = 'connecting' | 'connected' | 'error' | 'disconnected'; /** * 数据库连接信息 */ export interface DatabaseConnectionInfo { /** 连接状态 */ status: ConnectionStatus; /** 连接主机 */ host: string; /** 连接端口 */ port: number; /** 数据库名称 */ database: string; /** 连接时间 */ connectedAt?: Date; /** 错误信息 */ error?: string; }