mirror of https://github.com/vuejs/core.git
chore: fix types
This commit is contained in:
parent
927ab17cfc
commit
c95ab62936
|
@ -99,23 +99,23 @@ export type Data = Record<string, unknown>
|
||||||
export type ComponentInstance<T> = T extends { new (): ComponentPublicInstance }
|
export type ComponentInstance<T> = T extends { new (): ComponentPublicInstance }
|
||||||
? InstanceType<T>
|
? InstanceType<T>
|
||||||
: T extends FunctionalComponent<infer Props, infer Emits>
|
: T extends FunctionalComponent<infer Props, infer Emits>
|
||||||
? ComponentPublicInstance<Props, {}, {}, {}, {}, Emits>
|
? ComponentPublicInstance<Props, {}, {}, {}, {}, ShortEmitsToObject<Emits>>
|
||||||
: T extends Component<
|
: T extends Component<
|
||||||
infer Props,
|
infer Props,
|
||||||
infer RawBindings,
|
infer RawBindings,
|
||||||
infer D,
|
infer D,
|
||||||
infer C,
|
infer C,
|
||||||
infer M
|
infer M
|
||||||
>
|
>
|
||||||
? // NOTE we override Props/RawBindings/D to make sure is not `unknown`
|
? // NOTE we override Props/RawBindings/D to make sure is not `unknown`
|
||||||
ComponentPublicInstance<
|
ComponentPublicInstance<
|
||||||
unknown extends Props ? {} : Props,
|
unknown extends Props ? {} : Props,
|
||||||
unknown extends RawBindings ? {} : RawBindings,
|
unknown extends RawBindings ? {} : RawBindings,
|
||||||
unknown extends D ? {} : D,
|
unknown extends D ? {} : D,
|
||||||
C,
|
C,
|
||||||
M
|
M
|
||||||
>
|
>
|
||||||
: never // not a vue Component
|
: never // not a vue Component
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* For extending allowed non-declared props on components in TSX
|
* For extending allowed non-declared props on components in TSX
|
||||||
|
|
Loading…
Reference in New Issue