import { Schema } from "effect" export class InvalidRequestError extends Schema.TaggedErrorClass()( "InvalidRequestError", { message: Schema.String, kind: Schema.optional(Schema.String), field: Schema.optional(Schema.String), }, { httpApiStatus: 400 }, ) {} export class UnauthorizedError extends Schema.TaggedErrorClass()( "UnauthorizedError", { message: Schema.String }, { httpApiStatus: 401 }, ) {} export class ConflictError extends Schema.TaggedErrorClass()( "ConflictError", { message: Schema.String, resource: Schema.optional(Schema.String), }, { httpApiStatus: 409 }, ) {} export class ServiceUnavailableError extends Schema.TaggedErrorClass()( "ServiceUnavailableError", { message: Schema.String, service: Schema.optional(Schema.String), }, { httpApiStatus: 503 }, ) {} export class UnknownError extends Schema.TaggedErrorClass()( "UnknownError", { message: Schema.String, ref: Schema.optional(Schema.String), }, { httpApiStatus: 500 }, ) {} export class ProviderNotFoundError extends Schema.TaggedErrorClass()( "ProviderNotFoundError", { providerID: Schema.String, message: Schema.String, }, { httpApiStatus: 404 }, ) {} export class SessionNotFoundError extends Schema.TaggedErrorClass()( "SessionNotFoundError", { sessionID: Schema.String, message: Schema.String, }, { httpApiStatus: 404 }, ) {} export class InvalidCursorError extends Schema.TaggedErrorClass()( "InvalidCursorError", { message: Schema.String }, { httpApiStatus: 400 }, ) {} export class PermissionNotFoundError extends Schema.TaggedErrorClass()( "PermissionNotFoundError", { requestID: Schema.String, message: Schema.String, }, { httpApiStatus: 404 }, ) {} export class QuestionNotFoundError extends Schema.TaggedErrorClass()( "QuestionNotFoundError", { requestID: Schema.String, message: Schema.String, }, { httpApiStatus: 404 }, ) {}