Endo
    Preparing search index...

    Type Alias TypeFromPattern<P>

    TypeFromPattern: P extends CopyTagged<`match:${infer K}`, infer Payload>
        ? TFDispatch<K, Payload>
        : P extends readonly [infer H, ...(infer T)]
            ? [TypeFromPattern<H>, ...TFTuple<T>]
            : P extends CopyRecord<any>
                ? Simplify<{ [K in keyof P]: TypeFromPattern<P[K]> }>
                : P

    Infer a static TypeScript type from a Pattern value. Works like Zod's z.infer<typeof schema>.

    Type Parameters

    • P
    const shape = M.splitRecord({ name: M.string(), age: M.nat() });
    type Person = TypeFromPattern<typeof shape>;
    // { name: string; age: bigint }