import { Injector } from '@angular/core';
import * as t from 'io-ts';
export declare type CustomInjectorFactory = (parentInjector: Injector) => Injector;
export interface FunctionMeta {
    args: string[];
    body: string;
}
export interface FunctionWithMeta extends Function, FunctionMeta {
}
export declare const CUSTOM_FUNCTION_ARGUMENT_PREFIX = "$";
export declare const FunctionFromMeta: t.Type<FunctionWithMeta, FunctionMeta, unknown>;
export declare const FunctionFromString: t.Type<FunctionWithMeta, string, unknown>;
export declare const FunctionWithMeta: t.Type<FunctionWithMeta, Function, unknown>;
export declare function OptionFunction(customInjector?: CustomInjectorFactory): PropertyDecorator;
