{"version":3,"file":"common.js","sourceRoot":"","sources":["../src/factory/common.ts"],"names":[],"mappings":";;AACA,kCAA+C;AAmClC,QAAA,gBAAgB,GAAG,IAAI,2BAAmB,EAAqB,CAAC","sourcesContent":["import { Applicator } from '../applicators';\nimport { CompositeKeyWeakMap } from '../utils';\n\nexport type ApplicatorToken = { new(): Applicator };\nexport type LodashMethodDecorator = MethodDecorator;\nexport type LodashDecorator = MethodDecorator & PropertyDecorator;\nexport type ResolvableFunction = string|Function;\n\nexport type BiTypedMethodDecorator = (() => LodashMethodDecorator) & LodashMethodDecorator;\nexport type BiTypedMethodDecorator1<T> = ((arg?: T) => LodashMethodDecorator) & LodashMethodDecorator;\nexport type BiTypedMethodDecorator2<T, T2> = ((arg1?: T, arg2?: T2) => LodashMethodDecorator) & LodashMethodDecorator;\nexport type BiTypedMethodDecorator3<T, T2, T3> = ((arg1?: T, arg2?: T2, arg3?: T3) => LodashMethodDecorator) & LodashMethodDecorator;\nexport type BiTypedMethodDecoratorN = ((...args: any[]) => LodashMethodDecorator) & LodashMethodDecorator;\nexport type BiTypedDecorator = (() => LodashDecorator) & LodashDecorator;\nexport type BiTypedDecorator1<T> = ((arg?: T) => LodashDecorator) & LodashDecorator;\nexport type BiTypedDecorator2<T, T2> = ((arg1?: T, arg2?: T2) => LodashDecorator) & LodashDecorator;\nexport type BiTypedDecorator3<T, T2, T3> = ((arg1?: T, arg2?: T2, arg3?: T3) => LodashDecorator) & LodashDecorator;\nexport type BiTypedDecoratorN = ((...args: any[]) => LodashDecorator) & LodashDecorator;\n\nexport interface InstanceChainContext {\n  getter?: boolean;\n  setter?: boolean;\n  method?: boolean;\n  property?: boolean;\n  value: any;\n}\n\nexport interface InstanceChainData {\n  properties: string[];\n  fns: Function[];\n  isGetter: boolean;\n  isSetter: boolean;\n  isMethod: boolean;\n  isProperty: boolean;\n}\n\nexport const InstanceChainMap = new CompositeKeyWeakMap<InstanceChainData>();\n"]}