export type HttpMethod = "get" | "post" | "put" | "patch" | "delete"; interface RouteDefinition { method: HttpMethod; path: string; handlerName: string; produces?: string[]; consumes?: string[]; version?: string; } interface ControllerRegistration { target: new (...args: any[]) => any; prefix: string; version?: string; } export declare function SetApiVersionPrefix(prefix: string): void; export declare function GetApiVersionPrefix(): string; export declare function ApiVersion(version: string): any>(target: T) => T; export declare function RestController(prefix?: string): any>(target: T) => T; export interface MappingOptions { path?: string; produces?: string[]; consumes?: string[]; version?: string; } export declare const Get: (pathOrOptions?: string | MappingOptions) => (target: any, propertyKey: string, _descriptor?: PropertyDescriptor) => void; export declare const Post: (pathOrOptions?: string | MappingOptions) => (target: any, propertyKey: string, _descriptor?: PropertyDescriptor) => void; export declare const Put: (pathOrOptions?: string | MappingOptions) => (target: any, propertyKey: string, _descriptor?: PropertyDescriptor) => void; export declare const Patch: (pathOrOptions?: string | MappingOptions) => (target: any, propertyKey: string, _descriptor?: PropertyDescriptor) => void; export declare const Delete: (pathOrOptions?: string | MappingOptions) => (target: any, propertyKey: string, _descriptor?: PropertyDescriptor) => void; export declare function getRoutesMetadata(target: Function): RouteDefinition[]; export declare function getRegisteredControllers(): ControllerRegistration[]; export {}; //# sourceMappingURL=route.decorator.d.ts.map