0.46.0 • Published 6 months ago

@arktype/schema v0.46.0

Weekly downloads
-
License
MIT
Repository
github
Last release
6 months ago

@ark/schema

Underlying schema language parsed from arktype syntax.

The parts of ArkType's type system that exist in TS (i.e. not runtime-only constraints like bounds, divisors, custom predicates, morphs etc.) are structured like this:

  • Union: a set of intersections
  • Intersection: a set of a basis and constraints
  • Basis: this is the base type to which refinements like props are applied. It is one of three things, getting narrower as you move down the list:
    • Domain: "string" | "number" | "bigint" | "object" | "symbol" parallels built-in TS keywords for non-enumerable value sets
    • Proto: Must be an instanceof some class (implies domain "object")
    • Unit: Must === some value (can be intersected with any other constraint and reduced to itself or a disjoint)
  • Constraint: an individual condition that must be satisfied:
    • Required: must have a specified literal string or symbol key and a value that conforms to a specified union or intersection
    • Optional: Required conditions met or the specified key is not present
    • Index: all keys that satisfy an index type must have values satisfying the corresponding value type

In this system, L extends/subtypes/is assignable to R if and only if the intersection L & R is equal to L.

0.43.0

8 months ago

0.45.10

6 months ago

0.36.0

9 months ago

0.32.0

10 months ago

0.29.0

10 months ago

0.44.4

7 months ago

0.44.5

7 months ago

0.44.2

8 months ago

0.25.0

11 months ago

0.44.3

7 months ago

0.44.0

8 months ago

0.44.1

8 months ago

0.40.0

8 months ago

0.37.0

9 months ago

0.33.0

9 months ago

0.45.5

7 months ago

0.45.6

7 months ago

0.45.3

7 months ago

0.45.4

7 months ago

0.26.0

11 months ago

0.45.1

7 months ago

0.45.2

7 months ago

0.45.0

7 months ago

0.22.0

11 months ago

0.45.9

6 months ago

0.45.7

7 months ago

0.45.8

6 months ago

0.38.0

9 months ago

0.34.0

9 months ago

0.30.0

10 months ago

0.27.0

10 months ago

0.46.0

6 months ago

0.23.0

11 months ago

0.42.0

8 months ago

0.39.0

9 months ago

0.35.0

9 months ago

0.31.0

10 months ago

0.28.0

10 months ago

0.43.3

8 months ago

0.43.4

8 months ago

0.24.0

11 months ago

0.43.1

8 months ago

0.43.2

8 months ago

0.21.0

12 months ago

0.20.0

12 months ago

0.19.0

1 year ago

0.18.0

1 year ago

0.15.0

1 year ago

0.17.0

1 year ago

0.16.0

1 year ago

0.11.0

1 year ago

0.13.0

1 year ago

0.9.0

1 year ago

0.5.0

1 year ago

0.7.0

1 year ago

0.12.0

1 year ago

0.14.0

1 year ago

0.10.0

1 year ago

0.8.0

1 year ago

0.6.0

1 year ago

0.1.10

1 year ago

0.1.11

1 year ago

0.1.12

1 year ago

0.1.13

1 year ago

0.1.14

1 year ago

0.1.15

1 year ago

0.1.20

1 year ago

0.1.21

1 year ago

0.1.22

1 year ago

0.2.1

1 year ago

0.2.0

1 year ago

0.1.16

1 year ago

0.1.8

1 year ago

0.1.17

1 year ago

0.1.7

1 year ago

0.1.18

1 year ago

0.1.19

1 year ago

0.1.9

1 year ago

0.3.2

1 year ago

0.4.0

1 year ago

0.3.1

1 year ago

0.2.2

1 year ago

0.1.6

1 year ago

0.3.3

1 year ago

0.1.5

1 year ago

0.1.4-cjs

1 year ago

0.1.4

1 year ago

0.1.2

1 year ago

0.1.0

1 year ago

0.1.1

1 year ago

0.0.8

1 year ago

0.0.7

1 year ago

0.0.5

2 years ago

0.0.6

2 years ago

0.0.4

2 years ago

0.0.3

2 years ago

0.0.2

2 years ago

0.0.1

2 years ago