Function: withConcurrency()
withConcurrency<
T>(schema):ZodObject<{ [k in string | number | symbol]: ((keyof T & ("maxRetries" | "concurrency" | "delayMs")) extends never ? T & { concurrency: ZodDefault<ZodNumber>; delayMs: ZodDefault<ZodNumber>; maxRetries: ZodDefault<ZodNumber> } : { [K in string | number | symbol as K extends "maxRetries" | "concurrency" | "delayMs" ? never : K]: T[K] } & { concurrency: ZodDefault<ZodNumber>; delayMs: ZodDefault<ZodNumber>; maxRetries: ZodDefault<ZodNumber> })[k] },$strip>
Defined in: packages/workflow-engine/src/core/config-presets.ts:134
Add concurrency configuration to any schema
Type Parameters
T
T extends Readonly<{[k: string]: $ZodType<unknown, unknown, $ZodTypeInternals<unknown, unknown>>; }>
Parameters
schema
ZodObject<T>
Returns
ZodObject<{ [k in string | number | symbol]: ((keyof T & ("maxRetries" | "concurrency" | "delayMs")) extends never ? T & { concurrency: ZodDefault<ZodNumber>; delayMs: ZodDefault<ZodNumber>; maxRetries: ZodDefault<ZodNumber> } : { [K in string | number | symbol as K extends "maxRetries" | "concurrency" | "delayMs" ? never : K]: T[K] } & { concurrency: ZodDefault<ZodNumber>; delayMs: ZodDefault<ZodNumber>; maxRetries: ZodDefault<ZodNumber> })[k] }, $strip>
Example
const myConfig = withConcurrency(z.object({
items: z.array(z.string()),
}));
// Result has: concurrency, delayMs, maxRetries, items