session-fork.ts 740 B

12345678910111213141516
  1. export * as SessionFork from "./session-fork.js"
  2. import { Schema } from "effect"
  3. import { SessionMessage } from "./session-message.js"
  4. export const Boundary = Schema.Union([
  5. Schema.Struct({ type: Schema.Literal("before"), messageID: SessionMessage.ID }),
  6. Schema.Struct({ type: Schema.Literal("through"), messageID: SessionMessage.ID }),
  7. ]).annotate({ identifier: "Session.ForkBoundary" })
  8. export type Boundary = typeof Boundary.Type
  9. export const RequestBoundary = Schema.Union([
  10. Schema.Struct({ type: Schema.Literal("before"), messageID: SessionMessage.ID }),
  11. Schema.Struct({ type: Schema.Literal("through") }),
  12. ]).annotate({ identifier: "Session.ForkRequestBoundary" })
  13. export type RequestBoundary = typeof RequestBoundary.Type