ff-admin-webapi-client/src/viewmodels/admin/protocol.models.ts

97 lines
1.8 KiB
TypeScript

/** Protocol Models */
export interface ProtocolViewModel {
id: number;
title: string;
date: Date;
starttime: Date;
endtime: Date;
summary: string;
}
export interface CreateProtocolViewModel {
title: string;
date: Date;
}
export interface SyncProtocolViewModel {
title: string;
date: Date;
starttime: Date;
endtime: Date;
summary: string;
}
/** Protocol Agenda Models */
export interface ProtocolAgendaViewModel {
id: number;
topic: string;
context: string;
sort: number;
protocolId: number;
}
export interface SyncProtocolAgendaViewModel {
id: number;
topic: string;
context: string;
sort: number;
}
/** Protocol Decision Models */
export interface ProtocolDecisionViewModel {
id: number;
topic: string;
context: string;
sort: number;
protocolId: number;
}
export interface SyncProtocolDecisionViewModel {
id: number;
topic: string;
context: string;
sort: number;
}
/** Protocol Presence Models */
export interface ProtocolPresenceViewModel {
memberId: string;
absent: boolean;
excused: boolean;
sort: number;
protocolId: number;
}
export interface SyncProtocolPresenceViewModel {
presence: Array<{
memberId: string;
absent: boolean;
excused: boolean;
sort: number;
}>;
}
/** Protocol Voting Models */
export interface ProtocolVotingViewModel {
id: number;
topic: string;
context: string;
favour: number;
abstain: number;
against: number;
sort: number;
protocolId: number;
}
export interface SyncProtocolVotingViewModel {
id: number;
topic: string;
context: string;
favour: number;
abstain: number;
against: number;
sort: number;
}
/** Protocol Printout Models */
export interface ProtocolPrintoutViewModel {
id: number;
title: string;
iteration: number;
createdAt: Date;
protocolId: number;
}