mirror of https://github.com/vuejs/core.git
chore(types): removed the Awaited compatibility type tool (#11820)
This commit is contained in:
parent
1b6bc2374d
commit
c518517cb3
|
@ -1,5 +1,5 @@
|
||||||
import { ErrorCodes, callWithErrorHandling, handleError } from './errorHandling'
|
import { ErrorCodes, callWithErrorHandling, handleError } from './errorHandling'
|
||||||
import { type Awaited, NOOP, isArray } from '@vue/shared'
|
import { NOOP, isArray } from '@vue/shared'
|
||||||
import { type ComponentInternalInstance, getComponentName } from './component'
|
import { type ComponentInternalInstance, getComponentName } from './component'
|
||||||
|
|
||||||
export enum SchedulerJobFlags {
|
export enum SchedulerJobFlags {
|
||||||
|
|
|
@ -13,15 +13,6 @@ export type LooseRequired<T> = { [P in keyof (T & Required<T>)]: T[P] }
|
||||||
// https://stackoverflow.com/questions/49927523/disallow-call-with-any/49928360#49928360
|
// https://stackoverflow.com/questions/49927523/disallow-call-with-any/49928360#49928360
|
||||||
export type IfAny<T, Y, N> = 0 extends 1 & T ? Y : N
|
export type IfAny<T, Y, N> = 0 extends 1 & T ? Y : N
|
||||||
|
|
||||||
// To prevent users with TypeScript versions lower than 4.5 from encountering unsupported Awaited<T> type, a copy has been made here.
|
|
||||||
export type Awaited<T> = T extends null | undefined
|
|
||||||
? T // special case for `null | undefined` when not in `--strictNullChecks` mode
|
|
||||||
: T extends object & { then(onfulfilled: infer F, ...args: infer _): any } // `await` only unwraps object types with a callable `then`. Non-object types are not unwrapped
|
|
||||||
? F extends (value: infer V, ...args: infer _) => any // if the argument to `then` is callable, extracts the first argument
|
|
||||||
? Awaited<V> // recursively unwrap the value
|
|
||||||
: never // the argument to `then` was not callable
|
|
||||||
: T // non-object or non-thenable
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Utility for extracting the parameters from a function overload (for typed emits)
|
* Utility for extracting the parameters from a function overload (for typed emits)
|
||||||
* https://github.com/microsoft/TypeScript/issues/32164#issuecomment-1146737709
|
* https://github.com/microsoft/TypeScript/issues/32164#issuecomment-1146737709
|
||||||
|
|
Loading…
Reference in New Issue