import { z } from "zod";
class MyModelClass extends BaseModel {
@api()
@stream({
type: "sse",
events: z.object({
progress: z.object({ percent: z.number() }),
complete: z.object({ result: z.string() })
})
})
async processData(ctx: Context) {
const sse = ctx.createSSE({
progress: z.object({ percent: z.number() }),
complete: z.object({ result: z.string() })
});
// ์งํ๋ฅ ์ ์ก
await sse.send("progress", { percent: 50 });
// ์๋ฃ ์ด๋ฒคํธ ์ ์ก
await sse.send("complete", { result: "done" });
return sse.getResponse();
}
}