SpecBuilder
Defined in: extract/spec.ts:205
Builder for navigating and extracting from JSON structures. Records path and produces extraction specs.
Accessors
Section titled “Accessors”Get Signature
Section titled “Get Signature”get path():
JsonPath
Defined in: extract/spec.ts:214
Current path
Returns
Section titled “Returns”Methods
Section titled “Methods”array()
Section titled “array()”array<
T>(itemMapper):ArraySpec<T>
Defined in: extract/spec.ts:269
Mark current path as array and map over items. The mapper receives a SpecBuilder rooted at each item.
Type Parameters
Section titled “Type Parameters”T extends Spec
Parameters
Section titled “Parameters”itemMapper
Section titled “itemMapper”(item) => T
Returns
Section titled “Returns”ArraySpec<T>
at(
index):SpecBuilder
Defined in: extract/spec.ts:228
Navigate to array index
Parameters
Section titled “Parameters”number
Returns
Section titled “Returns”SpecBuilder
boolean()
Section titled “boolean()”boolean():
BooleanSpec
Defined in: extract/spec.ts:252
Extract as boolean
Returns
Section titled “Returns”get(
key):SpecBuilder
Defined in: extract/spec.ts:223
Navigate to object property
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”SpecBuilder
match()
Section titled “match()”Defined in: extract/spec.ts:312
Conditional extraction based on the value at current path. Each case has a predicate function and a spec to use when matched.
Parameters
Section titled “Parameters”…(MatchCase<Spec> | MatchDefault<Spec>)[]
Returns
Section titled “Returns”Example
Section titled “Example”$.get('env').match( when(eq('production'), $.get('prodConfig').string()), when(startsWith('dev'), $.get('devConfig').string()), otherwise(literal('default')))null()
Section titled “null()”null():
NullSpec
Defined in: extract/spec.ts:257
Extract as null
Returns
Section titled “Returns”number()
Section titled “number()”number():
NumberSpec
Defined in: extract/spec.ts:247
Extract as number
Returns
Section titled “Returns”numbers()
Section titled “numbers()”numbers():
ArraySpec<NumberSpec>
Defined in: extract/spec.ts:291
Extract array of numbers. Shorthand for .array(item => item.number())
Returns
Section titled “Returns”string()
Section titled “string()”string():
StringSpec
Defined in: extract/spec.ts:242
Extract as string
Returns
Section titled “Returns”strings()
Section titled “strings()”strings():
ArraySpec<StringSpec>
Defined in: extract/spec.ts:283
Extract array of strings. Shorthand for .array(item => item.string())
Returns
Section titled “Returns”to(…
keys):SpecBuilder
Defined in: extract/spec.ts:233
Navigate multiple levels at once
Parameters
Section titled “Parameters”…(string | number)[]
Returns
Section titled “Returns”SpecBuilder
root()
Section titled “root()”
staticroot():SpecBuilder
Defined in: extract/spec.ts:209
Start building from root
Returns
Section titled “Returns”SpecBuilder