import { HttpCallAccess, HttpCServerMiddleware } from "@httpc/server";
type Decorator = (target: object, property?: string | symbol, descriptor?: any) => void;
export declare function decoratorMiddleware<T extends (...any: any[]) => HttpCServerMiddleware>(factory: T): (...args: Parameters<T>) => Decorator;
export declare function decoratorMetadata(key: string, value: any): () => Decorator;
export declare function decoratorMetadata<T extends (...any: any[]) => {
    key: string;
    value: any;
}>(factory: T): (...args: Parameters<T>) => Decorator;
export declare const call: (access?: HttpCallAccess | undefined) => Decorator;
export declare const noCall: () => Decorator;
export declare const authenticated: (permissions?: string | ((...args: any[]) => string) | undefined) => Decorator;
export {};
