import { Schema } from "effect" import { SessionMessage } from "./message" import { SessionSchema } from "./schema" export class MessageDecodeError extends Schema.TaggedErrorClass()("Session.MessageDecodeError", { sessionID: SessionSchema.ID, messageID: SessionMessage.ID, }) {} export class ContextSnapshotDecodeError extends Schema.TaggedErrorClass()( "Session.ContextSnapshotDecodeError", { sessionID: SessionSchema.ID, details: Schema.String, }, ) { override get message() { return `Failed to decode context snapshot for session ${this.sessionID}: ${this.details}` } }