issue: deepkit doesn't reflect types imported via import type
This commit is contained in:
parent
58f0250ab4
commit
9abea5c484
@ -1,5 +1,22 @@
|
||||
import type {Dependencies, Signature} from '../interfaces/type.js'
|
||||
import {ReflectionFunction, stringifyType, typeOf} from '@deepkit/type'
|
||||
import type {Dependencies, Signature, Signatures, OneType} from '../interfaces/type.js'
|
||||
|
||||
interface LocalSignatures<T> {
|
||||
one: (a: T) => OneType<T>
|
||||
}
|
||||
|
||||
export const square =
|
||||
<T>(dep: Dependencies<'multiply', T>): Signature<'square', T> =>
|
||||
z => dep.multiply(z, z)
|
||||
|
||||
const sqRefl = ReflectionFunction.from(square)
|
||||
console.log(
|
||||
' For generic square I know that:',
|
||||
sqRefl,
|
||||
sqRefl.getParameterNames(),
|
||||
sqRefl.getParameterType('dep'),
|
||||
"\n final dep type:",
|
||||
stringifyType(sqRefl.getParameterType('dep')))
|
||||
|
||||
console.log(' because', typeOf<LocalSignatures<number>['one']>())
|
||||
console.log(' readable:', stringifyType(typeOf<LocalSignatures<number>['one']>()))
|
||||
|
10
src/local.ts
Normal file
10
src/local.ts
Normal file
@ -0,0 +1,10 @@
|
||||
import type {ImportedInterface} from './remote.js'
|
||||
|
||||
interface LocalInterface {
|
||||
item: (a: number) => string
|
||||
}
|
||||
|
||||
import {stringifyType, typeOf} from '@deepkit/type'
|
||||
|
||||
console.log('Locally:', stringifyType(typeOf<LocalInterface['item']>()))
|
||||
console.log('Remotely:', stringifyType(typeOf<ImportedInterface['item']>()))
|
3
src/remote.ts
Normal file
3
src/remote.ts
Normal file
@ -0,0 +1,3 @@
|
||||
export interface ImportedInterface {
|
||||
item: (a: number) => string
|
||||
}
|
Loading…
Reference in New Issue
Block a user