session-api-shema.ts 765 B

123456789101112131415161718192021222324252627282930313233
  1. import { z } from "zod";
  2. import { DbShema } from "../db-shema.js";
  3. class sessionApiShema {
  4. // /session/add-user
  5. public ZAddUser = {
  6. req: z.object({
  7. username: DbShema.ZUsers.shape.username,
  8. password: DbShema.ZUsers.shape.password,
  9. }),
  10. };
  11. // /session/login
  12. public ZLogin = {
  13. req: z.object({
  14. username: DbShema.ZUsers.shape.username,
  15. password: DbShema.ZUsers.shape.password,
  16. }),
  17. res: z.object({
  18. accessToken: z.string(),
  19. refreshToken: z.string(),
  20. userData: z.object({
  21. username: DbShema.ZUsers.shape.username,
  22. userId: DbShema.ZUsers.shape.user_id,
  23. }),
  24. }),
  25. };
  26. // /session/refresh
  27. public ZRefresh = { res: this.ZLogin.res };
  28. }
  29. export default new sessionApiShema();