import * as Koa from 'koa'; import Result from '../core/Result'; import { IContext } from '../typings/IContext'; export interface IProceedJoinPoint { target: T; args: Array; proceed(...props: any[]): Promise; } export declare function middlewareToAround(middleware: (Koa.Middleware)): ({ target, proceed, args }: IProceedJoinPoint) => Promise; export declare function Around(around: (point: IProceedJoinPoint) => Promise): Function;