import { RestHttpMethod, RestMethod, RestMethodMiddlewares, RestParameters } from '../interfaces';
import type { RESTClientBase } from '../misc/classes/restClientBase';
/**
 * GET method
 * @param url - resource url of the method
 */
export declare const GET: (url: string) => <TDecorated>(target: RESTClientBase & RestParameters, propertyKey: string, descriptor: (RestMethod & RestHttpMethod & RestMethodMiddlewares) | TDecorated) => TDecorated;
/**
 * POST method
 * @param url - resource url of the method
 */
export declare const POST: (url: string) => <TDecorated>(target: RESTClientBase & RestParameters, propertyKey: string, descriptor: (RestMethod & RestHttpMethod & RestMethodMiddlewares) | TDecorated) => TDecorated;
/**
 * PUT method
 * @param url - resource url of the method
 */
export declare const PUT: (url: string) => <TDecorated>(target: RESTClientBase & RestParameters, propertyKey: string, descriptor: (RestMethod & RestHttpMethod & RestMethodMiddlewares) | TDecorated) => TDecorated;
/**
 * DELETE method
 * @param url - resource url of the method
 */
export declare const DELETE: (url: string) => <TDecorated>(target: RESTClientBase & RestParameters, propertyKey: string, descriptor: (RestMethod & RestHttpMethod & RestMethodMiddlewares) | TDecorated) => TDecorated;
/**
 * HEAD method
 * @param url - resource url of the method
 */
export declare const HEAD: (url: string) => <TDecorated>(target: RESTClientBase & RestParameters, propertyKey: string, descriptor: (RestMethod & RestHttpMethod & RestMethodMiddlewares) | TDecorated) => TDecorated;
/**
 * PATCH method
 * @param url - resource url of the method
 */
export declare const PATCH: (url: string) => <TDecorated>(target: RESTClientBase & RestParameters, propertyKey: string, descriptor: (RestMethod & RestHttpMethod & RestMethodMiddlewares) | TDecorated) => TDecorated;
//# sourceMappingURL=method.decorator.d.ts.map