3.0.1 • Published 3 years ago

ts-type v3.0.1

Weekly downloads
3,309
License
ISC
Repository
github
Last release
3 years 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-2979syosetu-apiwebpack-workspaces-supportws-pkg-listsplit-smartly2tic2value-from-record@demonovel/db-api@demonovel/local-or-rebuild-fileipfs-server-listipfs-zip-streamipfs-typeslazy-json-graphqllazy-cookieslazy-source-mapstring-source-map@bluelovers/tsdx@bluelovers/axios-extend@bluelovers/conventional-changelog-bluelovers@bluelovers/ipfs-http-client@bluelovers/jest-configynpxuse-ipfs@git-lazy/change-root-dir@git-lazy/git-rebase-todo-parser@git-lazy/subtree@git-lazy/tag-list@lazy-assert/jest-global-types-extra@lazy-cjk/japanese@lazy-cjk/jp-table-voice@lazy-cjk/zh-table-alias@lazy-spawn/stringify@lazy-glob/glob-rename@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-lib@lazy-mtg/color-type@lazy-random/seed-algorithm@lazy-random/shared-lib@node-novel/git-diff-log@node-novel/imagemin@node-novel/layout-reporter@node-novel/parse-txt-tag@node-novel/site-cache-util@regexp-cjk/regexpu-core-v5@regexp-cjk/regex-iterator@novel-segment/postag@novel-segment/pretty-diff@novel-segment/stringify@novel-segment/table-core-abstractmtg-base-landmtg-deck-shufflenpm-package-json-loaderpath-env2parrot-share-localhostregexp-parser-eventnetlify-env2novel-segmentnovel-segment-clinovel-opds-nownovel-downloader-clinovel-downloaderrestful-decoratorreact-use-localstorage2share-localhostglob-searchgitee-apiimgbbhttp-form-urlencodedlets-fetch-wrapperloop-colorsmasiro-me-apimaterial-ui-theme-state@ts-type/bluebird@ts-type/is-array@ts-type/object-freeze@ts-type/package-dts@ts-type/tsdx-extensions-by-format@ts-type/unpacked@yarn-tool/script-lifecycle@yarn-tool/semver-diff@yarn-tool/yarnlock-types@yarn-tool/yarnlock@yarn-tool/yarnlock-diff@yarn-tool/yarnlock-entries@yarn-tool/version-recommended@yarn-tool/workspaces-project@yarn-tool/changelog@yarn-tool/fix-all@yarn-tool/pkg-version-query@yarn-tool/ncu@yarn-tool/npa-to-deps-queryafryxicons-testanimated-number-react2
3.0.1

3 years ago

2.1.9

3 years ago

2.1.10

3 years ago

2.1.8

3 years ago

2.1.7

3 years ago

2.1.6

3 years ago

2.1.5

3 years ago

2.1.2

4 years ago

2.1.1

4 years ago

2.1.4

3 years ago

2.0.3

4 years ago

2.0.1

4 years ago

1.2.40

4 years ago

1.2.39

4 years ago

1.2.38

4 years ago

1.2.37

4 years ago

1.2.36

4 years ago

1.2.35

4 years ago

1.2.34

5 years ago

1.2.33

5 years ago

1.2.32

5 years ago

1.2.31

5 years ago

1.2.30

5 years ago

1.2.27

5 years ago

1.2.28

5 years ago

1.2.29

5 years ago

1.2.26

5 years ago

1.2.25

5 years ago

1.2.24

5 years ago

1.2.23

5 years ago

1.2.21

5 years ago

1.2.22

5 years ago

1.2.19

5 years ago

1.2.20

5 years ago

1.2.18

5 years ago

1.2.17

5 years ago

1.2.16

5 years ago

1.2.15

5 years ago

1.2.13

5 years ago

1.2.12

5 years ago

1.2.10

5 years ago

1.2.11

5 years ago

1.2.9

6 years ago

1.2.8

6 years ago

1.2.7

6 years ago

1.2.6

6 years ago

1.2.4

6 years ago

1.2.3

6 years ago

1.2.2

6 years ago

1.2.1

6 years ago

1.1.3

7 years ago

1.1.2

7 years ago

1.1.1

7 years ago

1.1.0

7 years ago

1.0.9

7 years ago

1.0.8

7 years ago

1.0.7

7 years ago

1.0.6

7 years ago

1.0.5

7 years ago

1.0.4

7 years ago

1.0.1

7 years ago

1.0.0

7 years ago