3.0.1 • Published 1 year ago

ts-type v3.0.1

Weekly downloads
3,309
License
ISC
Repository
github
Last release
1 year ago

README

add some typescript type and re-export some build-in typescript type

see index.d.ts

install

npm install ts-type

demo

ITSOverwrite

export interface A1
{
	s: string
}

export type A2 = ITSOverwrite<A1, {
	s: number,
}>
export declare let a2: A2;
// a2.s is number

ITSOverwriteReturnType

import { ITSOverwriteReturnType } from '..';

declare function f(a: number): number

declare let c: ITSOverwriteReturnType<typeof f, string>;
// c is (a: number) => string
// c(1).toUpperCase()

Promise / Bluebird / PromiseLike

npm install @types/bluebird ts-type
export declare function p1(a: number): Promise<number>

export declare let p1_v: ITSUnpackedReturnType<typeof p1>;

p1_v.toFixed()

export declare let p2: ITSWrapFunctionPromise<typeof p1>;
export declare let p3: ITSWrapFunctionBluebird<typeof p2>;
export declare let p4: ITSWrapFunctionBluebird<typeof p1>;

p2(1).then(v => v.toFixed())
p3(1).then(v => v.toFixed())
p4(1).then(v => v.toFixed())

this

export declare function t1(this: string, a: number): Promise<number>

export declare let t1_this: ITSUnpackedThisFunction<typeof t1>;

// => t1_this is string
export declare function t2(this: string, a: number): number

export declare let t3: ITSOverwriteThisFunction<number, typeof t2>;

t3 = function ()
{
	this.toFixed() // => this is number

	return 1
}
interface Function2 extends Function
{
	bind<T extends any, F extends (...args: any[]) => any>(this: F, thisArg: T, ...argArray: any[]): ITSOverwriteThisFunction<T, F>;
}

export interface t4 extends Function2
{
	(): string
}

export declare let t5: t4

export let t6 = t5.bind([] as string[])

t6 = function ()
{
	this.includes('') // => this is string[]

	return ''
}

other

docs

links

afryxicons@infinitebrahmanuniverse/nolb-ts-t@everything-registry/sub-chunk-2979lets-fetch-wrapperlazy-json-graphqllazy-source-maplazy-cookiesloop-colorsmtg-base-landmtg-deck-shufflenetlify-env2novel-downloadernovel-downloader-clinovel-segmentnovel-segment-clinovel-opds-nownpm-package-json-loadermasiro-me-apimaterial-ui-theme-state@ts-type/unpacked@ts-type/bluebird@ts-type/is-array@ts-type/object-freeze@ts-type/package-dts@ts-type/tsdx-extensions-by-format@yarn-tool/changelog@yarn-tool/fix-all@yarn-tool/yarnlock@yarn-tool/yarnlock-diff@yarn-tool/yarnlock-types@yarn-tool/ncu@yarn-tool/npa-to-deps-query@yarn-tool/pkg-version-query@yarn-tool/script-lifecycle@yarn-tool/semver-diff@yarn-tool/version-recommended@yarn-tool/workspaces-projectafryxicons-testaxios-cache-adapter-utilbluebird-allsettledbom-encoding@demonovel/db-api@demonovel/local-or-rebuild-filecalibre-dbcalibre-opdscalibre-server@bluelovers/jest-config@bluelovers/tsdx@bluelovers/axios-extend@bluelovers/conventional-changelog-bluelovers@bluelovers/ipfs-http-client@git-lazy/tag-list@git-lazy/change-root-dir@git-lazy/git-rebase-todo-parser@git-lazy/subtree@yarn-tool/yarnlock-entriesparrot-share-localhostpath-env2restful-decoratorwebpack-workspaces-supportws-pkg-listynpxuse-ipfstic2value-from-recordshare-localhostsyosetu-apistring-source-mapsplit-smartly2regexp-parser-eventreact-use-localstorage2chai-asserttype-extradebug-color2arc4-libarray-chunk-splitanimated-number-react2epub-iconverror-stack2dmzj-apidiscuz-apidot-properties-loaderdot-values2crlf-normalizeextrastat2@lazy-glob/glob-rename@lazy-assert/jest-global-types-extra@lazy-cjk/jp-table-voice@lazy-cjk/zh-table-alias@lazy-mtg/color-type@lazy-mtg/img-source@lazy-mtg/link-source@lazy-mtg/sort-colors@lazy-node/semver-ampersand@lazy-node/semver-simple-parse@lazy-ipfs/compatible-files@lazy-ipfs/detect-cid-libfetch-ipfs@lazy-spawn/stringify@lazy-random/seed-algorithm@lazy-random/shared-lib
3.0.1

1 year ago

2.1.9

2 years ago

2.1.10

2 years ago

2.1.8

2 years ago

2.1.7

2 years ago

2.1.6

2 years ago

2.1.5

2 years ago

2.1.2

2 years ago

2.1.1

2 years ago

2.1.4

2 years ago

2.0.3

2 years ago

2.0.1

2 years ago

1.2.40

3 years ago

1.2.39

3 years ago

1.2.38

3 years ago

1.2.37

3 years ago

1.2.36

3 years ago

1.2.35

3 years ago

1.2.34

4 years ago

1.2.33

4 years ago

1.2.32

4 years ago

1.2.31

4 years ago

1.2.30

4 years ago

1.2.27

4 years ago

1.2.28

4 years ago

1.2.29

4 years ago

1.2.26

4 years ago

1.2.25

4 years ago

1.2.24

4 years ago

1.2.23

4 years ago

1.2.21

4 years ago

1.2.22

4 years ago

1.2.19

4 years ago

1.2.20

4 years ago

1.2.18

4 years ago

1.2.17

4 years ago

1.2.16

4 years ago

1.2.15

4 years ago

1.2.13

4 years ago

1.2.12

4 years ago

1.2.10

4 years ago

1.2.11

4 years ago

1.2.9

5 years ago

1.2.8

5 years ago

1.2.7

5 years ago

1.2.6

5 years ago

1.2.4

5 years ago

1.2.3

5 years ago

1.2.2

5 years ago

1.2.1

5 years ago

1.1.3

5 years ago

1.1.2

5 years ago

1.1.1

5 years ago

1.1.0

5 years ago

1.0.9

5 years ago

1.0.8

5 years ago

1.0.7

5 years ago

1.0.6

5 years ago

1.0.5

5 years ago

1.0.4

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago