UNPKG

errsole-sequelize

Version:

Sequelize storage plugin for Errsole

55 lines (45 loc) 1.73 kB
declare module 'errsole-sequelize' { import { Options } from 'sequelize'; interface Log { id?: number; hostname: string; pid: number; source: string; timestamp: Date; level: string; message: string; meta?: string; errsole_id?: number | null; } interface Config { id: number; key: string; value: string; } interface User { id: number; name: string; email: string; role: string; } class ErrsoleSequelize { constructor(options: Options); getConfig(key: string): Promise<{ item: Config }>; setConfig(key: string, value: string): Promise<{ item: Config }>; deleteConfig(key: string): Promise<{}>; postLogs(logEntries: Log[]): Promise<{}>; getHostnames(): Promise<{ items: string[] }>; getLogs(filters?: any): Promise<{ items: Log[] }>; searchLogs(searchTerms: string[], filters?: any): Promise<{ items: Log[] }>; getMeta(id: number): Promise<{ item: { id: number; meta: string } }>; createUser(user: { name: string; email: string; password: string; role: string }): Promise<{ item: User }>; verifyUser(email: string, password: string): Promise<{ item: User }>; getUserCount(): Promise<{ count: number }>; getAllUsers(): Promise<{ items: User[] }>; getUserByEmail(email: string): Promise<{ item: User }>; updateUserByEmail(email: string, updates: Partial<User>): Promise<{ item: User }>; updatePassword(email: string, currentPassword: string, newPassword: string): Promise<{ item: User }>; deleteUser(userId: number): Promise<{}>; } export default ErrsoleSequelize; }