import { BeanDefinitionConfig, ConstructParamEach, ConstructParams } from '../definition'; import MetaHelper from './metaHelper'; declare type AutoInjectConstruct = { [id: string]: ({ index: number; value: string; type: 'byName'; } | { index: number; value: any; type: 'byType'; })[]; }; interface BeanMeta extends Omit { autoInjectConstuct: AutoInjectConstruct; constructParams: ConstructParams; } declare const helper: MetaHelper; declare const Resource: ({ type, parent, exposeProxy, auto, }?: Pick & { auto?: "byName" | "byType" | "no" | undefined; }) => ClassDecorator; declare const Inject: (value: any, isBean?: boolean) => (ctr: any, _name: string | undefined, index: number) => void; declare const InjectObj: (prop: { [propName: string]: ConstructParamEach; }) => (ctr: any, _name: string | undefined, index: number) => void; export { Resource, Inject, InjectObj, helper, AutoInjectConstruct };