All files / shared/types/api assignment.ts

100% Statements 1/1
100% Branches 0/0
100% Functions 0/0
100% Lines 1/1

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24            39x                                  
import { z } from "zod";
import { UserAssignmentResult } from "shared/types/models/result";
import { ApiError, ApiResult } from "shared/types/api/errors";
 
// POST assignment
 
export const PostAssignmentRequestSchema = z.object({
  assignmentTime: z.string().min(1),
});
 
export type PostAssignmentRequest = z.infer<typeof PostAssignmentRequestSchema>;
 
interface PostAssignmentResult extends ApiResult {
  resultMessage: string;
  results: readonly UserAssignmentResult[];
  assignmentTime: string;
}
 
export interface PostAssignmentError extends ApiError {
  errorId: "unknown" | "assignmentInProgress";
}
 
export type PostAssignmentResponse = PostAssignmentResult | PostAssignmentError;