<S extends ConstraintDecoder<unknown>>(
schema: S,
options?: SchemaAST.ParseOptions
): (
input: S["Encoded"],
options?: SchemaAST.ParseOptions
) => Promise<S["Type"]>Decodes a typed input (the schema's Encoded type) against a schema,
returning a Promise that resolves with the decoded value or rejects with a
SchemaError for schema mismatches.
When to use
Use when you already have input typed as the schema's Encoded type and
need decoding to return a JavaScript Promise that rejects with
SchemaError for schema mismatches.
Details
For unknown input use decodeUnknownPromise.
Options may be provided either when creating the decoder or when applying it;
application options override creation options.
Gotchas
Non-schema failures may reject with a runtime failure instead of
SchemaError.
export const const decodePromise: <
S extends ConstraintDecoder<unknown>
>(
schema: S,
options?: SchemaAST.ParseOptions
) => (
input: S["Encoded"],
options?: SchemaAST.ParseOptions
) => Promise<S["Type"]>
Decodes a typed input (the schema's Encoded type) against a schema,
returning a Promise that resolves with the decoded value or rejects with a
SchemaError
for schema mismatches.
When to use
Use when you already have input typed as the schema's Encoded type and
need decoding to return a JavaScript Promise that rejects with
SchemaError for schema mismatches.
Details
For unknown input use decodeUnknownPromise.
Options may be provided either when creating the decoder or when applying it;
application options override creation options.
Gotchas
Non-schema failures may reject with a runtime failure instead of
SchemaError.
decodePromise: <function (type parameter) S in <S extends ConstraintDecoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions): (input: S["Encoded"], options?: SchemaAST.ParseOptions) => Promise<S["Type"]>S extends interface ConstraintDecoder<out T, out RD = never>Lightweight structural constraint for APIs that need decoder type views but
do not need the full schema protocol.
When to use
Use when you need to preserve a schema's decoded type and decoding services,
but the API does not constrain the encoded type, encoding services, or call
schema methods such as annotate, check, rebuild, make, or
makeEffect.
ConstraintDecoder<unknown>>(
schema: S extends ConstraintDecoder<unknown>schema: function (type parameter) S in <S extends ConstraintDecoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions): (input: S["Encoded"], options?: SchemaAST.ParseOptions) => Promise<S["Type"]>S,
options: SchemaAST.ParseOptionsoptions?: import SchemaASTSchemaAST.ParseOptions
) => (input: S["Encoded"]input: function (type parameter) S in <S extends ConstraintDecoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions): (input: S["Encoded"], options?: SchemaAST.ParseOptions) => Promise<S["Type"]>S["Encoded"], options: SchemaAST.ParseOptionsoptions?: import SchemaASTSchemaAST.ParseOptions) => interface Promise<T>Represents the completion of an asynchronous operation
Promise<function (type parameter) S in <S extends ConstraintDecoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions): (input: S["Encoded"], options?: SchemaAST.ParseOptions) => Promise<S["Type"]>S["Type"]> = function decodeUnknownPromise<
S extends ConstraintDecoder<unknown>
>(
schema: S,
options?: SchemaAST.ParseOptions
): (
input: unknown,
options?: SchemaAST.ParseOptions
) => Promise<S["Type"]>
Decodes an unknown input against a schema, returning a Promise that
resolves with the decoded value or rejects with a
SchemaError
for
schema mismatches.
When to use
Use when you need decoding of unknown input to return a JavaScript Promise
that rejects with SchemaError for schema mismatches.
Details
For input already typed as the schema's Encoded type use
decodePromise
.
Options may be provided either when creating the decoder or when applying it;
application options override creation options.
Gotchas
Non-schema failures may reject with a runtime failure instead of
SchemaError.
decodeUnknownPromise