cr-database/models/Proclamation.ts

38 lines
918 B
TypeScript

import { Document, model, Schema } from 'mongoose';
export interface ProclamationInterface extends Document {
issuer: string;
subject: string;
body: string;
at: number;
oID: string;
results?: {
yea: number;
nay: number;
present: number;
absent: number;
};
msg: string;
processed?: boolean;
votedDirectors: string[];
}
const Proclamation = new Schema({
issuer: { type: String, required: true },
subject: { type: String, required: true },
body: { type: String, required: true },
at: { type: Number, required: true },
oID: { type: String, required: true, unique: true },
results: {
yea: Number,
nay: Number,
present: Number,
absent: Number,
},
msg: { type: String, required: true, unique: true },
processed: Boolean,
votedDirectors: { type: Array, required: true },
});
export default model<ProclamationInterface>('Proclamations', Proclamation);