{
  "version": 3,
  "sources": ["../../../src/resolveable/utils.ts"],
  "sourcesContent": ["import { isBinding } from '../binding-utils/type-utils.mjs';\nimport type { TypeOrBindingType, TypeOrDeferredType, TypeOrDeferredTypeOrBindingType, TypeOrDeferredTypeWithArgs } from './types';\n\n/** Resolves the value out of a TypeOrBindingType */\nexport const resolveTypeOrBindingType = <T>(value: TypeOrBindingType<T>) => (isBinding(value) ? value.get() : value);\n\n/** Resolves the value out of a TypeOrDeferredType */\nexport const resolveTypeOrDeferredType = <T>(value: TypeOrDeferredType<T>): T =>\n  typeof value === 'function' ? (value as () => T)() : (value as T);\n\n/** Resolves the value out of a TypeOrDeferredTypeOrBindingType */\nexport const resolveTypeOrDeferredTypeOrBindingType = <T>(value: TypeOrDeferredTypeOrBindingType<T>) =>\n  isBinding(value) ? value.get() : typeof value === 'function' ? (value as () => T)() : (value as T);\n\n/** Resolves the value out of a TypeOrDeferredType */\nexport const resolveTypeOrDeferredTypeWithArgs = <T, ArgsT extends any[]>(value: TypeOrDeferredTypeWithArgs<T, ArgsT>, args: ArgsT): T =>\n  typeof value === 'function' ? (value as (...args: ArgsT) => T)(...args) : (value as T);\n"],
  "mappings": "AAAA,SAAS,iBAAiB;AAInB,MAAM,2BAA2B,CAAI,UAAiC,UAAU,KAAK,IAAI,MAAM,IAAI,IAAI;AAGvG,MAAM,4BAA4B,CAAI,UAC3C,OAAO,UAAU,aAAc,MAAkB,IAAK;AAGjD,MAAM,yCAAyC,CAAI,UACxD,UAAU,KAAK,IAAI,MAAM,IAAI,IAAI,OAAO,UAAU,aAAc,MAAkB,IAAK;AAGlF,MAAM,oCAAoC,CAAyB,OAA6C,SACrH,OAAO,UAAU,aAAc,MAAgC,GAAG,IAAI,IAAK;",
  "names": []
}
