FormulaMonks / kurt

A wrapper for AI SDKs, for building LLM-agnostic structured AI applications in Typescript
MIT License
2 stars 0 forks source link

refactor: Simplify type params of KurtStream (and refactor surrounding to match) #8

Closed jemc closed 2 months ago

jemc commented 2 months ago

Prior to this commit, the type argument of KurtStream needed to be the inner schema (i.e. something that extends KurtSchemaMaybe) and from this we derived what the result data type would be.

However, that was overly complicated, and nothing about the inner schema was actually being used within the class - only the derived result data type.

So, to simplify things, KurtStream's type argument is now the actual result data type itself, rather than the schema. This makes it easier for callers who want to use the KurtStream or KurtStreamEvent or KurtResult data types, as each of these now can take an easier-to-obtain type argument.

BREAKING CHANGE: Type argument of KurtStream has changed its meaning