44 lines
1.3 KiB
TypeScript
44 lines
1.3 KiB
TypeScript
import {
|
|
ReceiveSubmissionApproveAction,
|
|
ReceiveSubmissionDeclineAction,
|
|
ReceiveSubmissionUpdateAction,
|
|
SaveSubmissionAction,
|
|
SendSubmissionAction
|
|
} from "@/state/actions/submission";
|
|
|
|
import { InternshipDocument, SubmissionState } from "@/api/dto/internship-registration";
|
|
|
|
export enum InternshipPlanActions {
|
|
Send = "SEND_PLAN",
|
|
Save = "SAVE_PLAN",
|
|
Approve = "RECEIVE_PLAN_APPROVE",
|
|
Decline = "RECEIVE_PLAN_DECLINE",
|
|
Receive = "RECEIVE_PLAN_STATE",
|
|
}
|
|
|
|
export interface SendPlanAction extends SendSubmissionAction<InternshipPlanActions.Send> {
|
|
document: InternshipDocument;
|
|
}
|
|
|
|
export interface ReceivePlanApproveAction extends ReceiveSubmissionApproveAction<InternshipPlanActions.Approve> {
|
|
}
|
|
|
|
export interface ReceivePlanDeclineAction extends ReceiveSubmissionDeclineAction<InternshipPlanActions.Decline> {
|
|
}
|
|
|
|
export interface ReceivePlanUpdateAction extends ReceiveSubmissionUpdateAction<InternshipPlanActions.Receive> {
|
|
document: InternshipDocument;
|
|
state: SubmissionState;
|
|
}
|
|
|
|
export interface SavePlanAction extends SaveSubmissionAction<InternshipPlanActions.Save> {
|
|
document: InternshipDocument;
|
|
}
|
|
|
|
export type InternshipPlanAction
|
|
= SendPlanAction
|
|
| SavePlanAction
|
|
| ReceivePlanApproveAction
|
|
| ReceivePlanDeclineAction
|
|
| ReceivePlanUpdateAction;
|