export interface JSendSuccess { status: 'success'; data: T; } export interface JSendError { status: 'error'; message: string; code?: number; data?: any; } export interface JSendFail { status: 'fail'; data: any; } export type JSendResponse = JSendSuccess | JSendError | JSendFail; export class JSendResponseUtil { static success(data: T): JSendSuccess { return { status: 'success', data, }; } static error(message: string, code?: number, data?: any): JSendError { return { status: 'error', message, code, data, }; } static fail(data: any): JSendFail { return { status: 'fail', data, }; } }