import { Api } from "make-api"; import { Schema as S } from "@effect/schema"; import { UserId } from "common"; import { pipe } from "effect"; export const Login = pipe( Api.make("POST", "login"), Api.requestBodyJson(S.Struct({ username: S.NonEmptyString, password: S.NonEmptyString, })), Api.responseBodyJson(200, S.Struct({ userId: UserId, username: S.NonEmptyString, admin: S.Boolean, })), Api.responseBodyText(400, S.String), Api.responseBodyText(401, S.String), );