element-plus/packages/utils/typescript.ts
C.Y.Kun 13ffea1114
refactor(components): refactor upload (#6014)
* refactor(components): refactor ElUpload

* refactor(components): refactor upload

* test: use jsx

* refactor: resolve review comments

* fix: ts error

* refactor: re-order imports

* refactor: rename

* fix: infinity watch

* refactor: rename

* refactor: address PR comments

Co-authored-by: Kevin <sxzz@sxzz.moe>
2022-03-05 23:09:31 +08:00

16 lines
455 B
TypeScript

export const mutable = <T extends readonly any[] | Record<string, unknown>>(
val: T
) => val as Mutable<typeof val>
export type Mutable<T> = { -readonly [P in keyof T]: T[P] }
export type HTMLElementCustomized<T> = HTMLElement & T
/**
* @deprecated stop to use null
* @see {@link https://github.com/sindresorhus/meta/discussions/7}
*/
export type Nullable<T> = T | null
export type Arrayable<T> = T | T[]
export type Awaitable<T> = Promise<T> | T