import { HttpVerb } from './http-verbs'; import { MiddlewareParameter } from './state-util'; /** * Registers a path for this class method. * You can add more than one. * * @param path */ export declare function route(path: string): (target: any, name?: string | null, descriptor?: PropertyDescriptor | undefined) => void; /** * Adds one or more middleware before the method middleware. * Can be applied to classes and methods. Class-level `before` middleware * runs before method-level ones. * * @param middleware */ export declare function before(middleware: MiddlewareParameter): (target: any, name?: string | null, descriptor?: PropertyDescriptor | undefined) => void; /** * Adds one or more middleware after the method middleware. * Can be applied to classes and methods. Class-level `after` middleware * runs after method-level ones. * * @param middleware */ export declare function after(middleware: MiddlewareParameter): (target: any, name?: string | null, descriptor?: PropertyDescriptor | undefined) => void; /** * Assigns one or more HTTP verbs to class method. * * @param httpVerbs */ export declare function verbs(httpVerbs: Array): (target: any, name?: string | null) => void; /** * The same as `verbs([HttpVerbs.GET])` */ export declare const GET: () => (target: any, name?: string | null) => void; /** * The same as `verbs([HttpVerbs.HEAD])` */ export declare const HEAD: () => (target: any, name?: string | null) => void; /** * The same as `verbs([HttpVerbs.POST])` */ export declare const POST: () => (target: any, name?: string | null) => void; /** * The same as `verbs([HttpVerbs.PUT])` */ export declare const PUT: () => (target: any, name?: string | null) => void; /** * The same as `verbs([HttpVerbs.DELETE])` */ export declare const DELETE: () => (target: any, name?: string | null) => void; /** * The same as `verbs([HttpVerbs.CONNECT])` */ export declare const CONNECT: () => (target: any, name?: string | null) => void; /** * The same as `verbs([HttpVerbs.OPTIONS])` */ export declare const OPTIONS: () => (target: any, name?: string | null) => void; /** * The same as `verbs([HttpVerbs.PATCH])` */ export declare const PATCH: () => (target: any, name?: string | null) => void; /** * The same as `verbs([HttpVerbs.ALL])` */ export declare const ALL: () => (target: any, name?: string | null) => void;