import { SetupFunction } from '@zenweb/core'; import { RenderManager } from './manager'; import { JSONRender } from './json'; import { ResultFailDetail, ResultOption } from './types'; export * from './types'; export { RenderManager, JSONRender }; /** * 输出错误信息并终止代码执行 * @param message 错误消息 * @param code 消息代码 * @param detail 错误细节 * @param data 附加数据 */ export declare function fail(): never; export declare function fail(detail: ResultFailDetail): never; export declare function fail(message: string): never; export declare function fail(code: number, message?: string): never; export declare function fail(code: number, message?: string, data?: unknown): never; /** * 安装 */ export default function setup(opt?: ResultOption): SetupFunction; declare module '@zenweb/core' { interface Context { /** * 取得 `ctx.success()` 的原始数据 */ successData?: unknown; /** * 调用 `ctx.success()` 方法设置数据时的 `Promise` */ successDataOutput?: Promise; /** * 设置成功结果并处理到 `ctx.body` 中 * - 如使用 `await` 方法等待结果处理完成 * - 如不使用 `await` 将会在所有中间件执行完后等待处理完成 */ success(data?: unknown): Promise; /** * 输出结果是否为 fail 类型 */ isFail?: true; } }