Skip to content

ChainGraph API Documentation / @badaitech/chaingraph-trpc / server / zAsyncIterable

Function: zAsyncIterable() ​

zAsyncIterable<TYieldIn, TYieldOut, TReturnIn, TReturnOut, Tracked>(opts): ZodType<AsyncIterable<Tracked extends true ? TrackedEnvelope<TYieldIn> : TYieldIn, TReturnIn, unknown>, any, AsyncIterable<Tracked extends true ? TrackedEnvelope<TYieldOut> : TYieldOut, TReturnOut, unknown>>

Defined in: packages/chaingraph-trpc/server/procedures/subscriptions/utils/zAsyncIterable.ts:26

A Zod schema helper designed specifically for validating async iterables. This schema ensures that:

  1. The value being validated is an async iterable.
  2. Each item yielded by the async iterable conforms to a specified type.
  3. The return value of the async iterable, if any, also conforms to a specified type.

Type Parameters ​

TYieldIn ​

TYieldIn

TYieldOut ​

TYieldOut

TReturnIn ​

TReturnIn = void

TReturnOut ​

TReturnOut = void

Tracked ​

Tracked extends boolean = false

Parameters ​

opts ​

return? ​

ZodType<TReturnIn, any, TReturnOut>

Validate the return value of the async generator

Remark

not applicable for subscriptions

tracked? ​

Tracked

Whether if the yielded values are tracked

Remark

only applicable for subscriptions

yield ​

ZodType<TYieldIn, any, TYieldOut>

Validate the value yielded by the async generator

Returns ​

ZodType<AsyncIterable<Tracked extends true ? TrackedEnvelope<TYieldIn> : TYieldIn, TReturnIn, unknown>, any, AsyncIterable<Tracked extends true ? TrackedEnvelope<TYieldOut> : TYieldOut, TReturnOut, unknown>>

Licensed under BUSL-1.1