├── .editorconfig ├── .eslintrc ├── .gitattributes ├── .github └── workflows │ ├── rollingversions-canary.yml │ ├── rollingversions.yml │ └── test.yml ├── .gitignore ├── .prettierignore ├── .prettierrc.yml ├── LICENSE ├── README.md ├── SECURITY.md ├── api-extractor.json ├── package.json ├── readonly └── package.json ├── rollup.config.js ├── scripts ├── finalize-build.js ├── format.js └── test-import.js ├── src ├── assertType.spec.ts ├── assertType.ts ├── asynccontract.spec.ts ├── asynccontract.ts ├── contract.ts ├── errors.ts ├── index.spec.ts ├── index.ts ├── result.ts ├── runtype.spec.ts ├── runtype.ts ├── show.spec.ts ├── show.ts ├── showValue.ts ├── types │ ├── Enum.spec.ts │ ├── Enum.ts │ ├── KeyOf.spec.ts │ ├── KeyOf.ts │ ├── Mutable.spec.ts │ ├── Mutable.ts │ ├── Named.spec.ts │ ├── Named.ts │ ├── Object.spec.ts │ ├── Object.ts │ ├── ParsedValue.spec.ts │ ├── ParsedValue.ts │ ├── Readonly.spec.ts │ ├── Readonly.ts │ ├── Record.spec.ts │ ├── Record.ts │ ├── Sealed.spec.ts │ ├── Sealed.ts │ ├── array.spec.ts │ ├── array.ts │ ├── brand.ts │ ├── constraint.spec.ts │ ├── constraint.ts │ ├── instanceof.ts │ ├── intersect.spec.ts │ ├── intersect.ts │ ├── lazy.ts │ ├── literal.ts │ ├── never.ts │ ├── primative.spec.ts │ ├── primative.ts │ ├── tuple.ts │ ├── union.spec.ts │ ├── union.ts │ └── unknown.ts └── util.ts ├── tsconfig.json └── yarn.lock /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/.editorconfig -------------------------------------------------------------------------------- /.eslintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/.eslintrc -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/.gitattributes -------------------------------------------------------------------------------- /.github/workflows/rollingversions-canary.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/.github/workflows/rollingversions-canary.yml -------------------------------------------------------------------------------- /.github/workflows/rollingversions.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/.github/workflows/rollingversions.yml -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/.gitignore -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | lib 2 | coverage 3 | README.md 4 | package.json 5 | examples/src/**/* -------------------------------------------------------------------------------- /.prettierrc.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/.prettierrc.yml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/README.md -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/SECURITY.md -------------------------------------------------------------------------------- /api-extractor.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/api-extractor.json -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/package.json -------------------------------------------------------------------------------- /readonly/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/readonly/package.json -------------------------------------------------------------------------------- /rollup.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/rollup.config.js -------------------------------------------------------------------------------- /scripts/finalize-build.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/scripts/finalize-build.js -------------------------------------------------------------------------------- /scripts/format.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/scripts/format.js -------------------------------------------------------------------------------- /scripts/test-import.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/scripts/test-import.js -------------------------------------------------------------------------------- /src/assertType.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/assertType.spec.ts -------------------------------------------------------------------------------- /src/assertType.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/assertType.ts -------------------------------------------------------------------------------- /src/asynccontract.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/asynccontract.spec.ts -------------------------------------------------------------------------------- /src/asynccontract.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/asynccontract.ts -------------------------------------------------------------------------------- /src/contract.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/contract.ts -------------------------------------------------------------------------------- /src/errors.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/errors.ts -------------------------------------------------------------------------------- /src/index.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/index.spec.ts -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/index.ts -------------------------------------------------------------------------------- /src/result.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/result.ts -------------------------------------------------------------------------------- /src/runtype.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/runtype.spec.ts -------------------------------------------------------------------------------- /src/runtype.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/runtype.ts -------------------------------------------------------------------------------- /src/show.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/show.spec.ts -------------------------------------------------------------------------------- /src/show.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/show.ts -------------------------------------------------------------------------------- /src/showValue.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/showValue.ts -------------------------------------------------------------------------------- /src/types/Enum.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/Enum.spec.ts -------------------------------------------------------------------------------- /src/types/Enum.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/Enum.ts -------------------------------------------------------------------------------- /src/types/KeyOf.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/KeyOf.spec.ts -------------------------------------------------------------------------------- /src/types/KeyOf.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/KeyOf.ts -------------------------------------------------------------------------------- /src/types/Mutable.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/Mutable.spec.ts -------------------------------------------------------------------------------- /src/types/Mutable.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/Mutable.ts -------------------------------------------------------------------------------- /src/types/Named.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/Named.spec.ts -------------------------------------------------------------------------------- /src/types/Named.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/Named.ts -------------------------------------------------------------------------------- /src/types/Object.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/Object.spec.ts -------------------------------------------------------------------------------- /src/types/Object.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/Object.ts -------------------------------------------------------------------------------- /src/types/ParsedValue.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/ParsedValue.spec.ts -------------------------------------------------------------------------------- /src/types/ParsedValue.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/ParsedValue.ts -------------------------------------------------------------------------------- /src/types/Readonly.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/Readonly.spec.ts -------------------------------------------------------------------------------- /src/types/Readonly.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/Readonly.ts -------------------------------------------------------------------------------- /src/types/Record.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/Record.spec.ts -------------------------------------------------------------------------------- /src/types/Record.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/Record.ts -------------------------------------------------------------------------------- /src/types/Sealed.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/Sealed.spec.ts -------------------------------------------------------------------------------- /src/types/Sealed.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/Sealed.ts -------------------------------------------------------------------------------- /src/types/array.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/array.spec.ts -------------------------------------------------------------------------------- /src/types/array.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/array.ts -------------------------------------------------------------------------------- /src/types/brand.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/brand.ts -------------------------------------------------------------------------------- /src/types/constraint.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/constraint.spec.ts -------------------------------------------------------------------------------- /src/types/constraint.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/constraint.ts -------------------------------------------------------------------------------- /src/types/instanceof.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/instanceof.ts -------------------------------------------------------------------------------- /src/types/intersect.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/intersect.spec.ts -------------------------------------------------------------------------------- /src/types/intersect.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/intersect.ts -------------------------------------------------------------------------------- /src/types/lazy.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/lazy.ts -------------------------------------------------------------------------------- /src/types/literal.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/literal.ts -------------------------------------------------------------------------------- /src/types/never.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/never.ts -------------------------------------------------------------------------------- /src/types/primative.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/primative.spec.ts -------------------------------------------------------------------------------- /src/types/primative.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/primative.ts -------------------------------------------------------------------------------- /src/types/tuple.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/tuple.ts -------------------------------------------------------------------------------- /src/types/union.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/union.spec.ts -------------------------------------------------------------------------------- /src/types/union.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/union.ts -------------------------------------------------------------------------------- /src/types/unknown.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/types/unknown.ts -------------------------------------------------------------------------------- /src/util.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/src/util.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/tsconfig.json -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ForbesLindesay/funtypes/HEAD/yarn.lock --------------------------------------------------------------------------------