import { InjectionToken } from "tsyringe";
import { Constructor } from "./keys";
export declare function combine<T extends (...args: any[]) => any>(...decorators: T[]): T;
export declare function noInject(): (target: any, propertyKey: string | symbol, parameterIndex: number) => any;
export declare function alias(token: InjectionToken): ClassDecorator;
export declare function initializer(): ClassDecorator;
export declare function env(variableName: string, defaultValue?: any): ParameterDecorator;
export declare function optionsOf(target: string | Constructor): ClassDecorator;
export declare function options(defaultValue?: any): ParameterDecorator;
export declare function optional(token: string | Constructor, defaultValue?: any): ParameterDecorator;
