ecoledirecte.js
Version:
Good-looking client for EcoleDirecte's private API.
60 lines (59 loc) • 1.89 kB
TypeScript
import { role, mailboxResMessage } from "ecoledirecte-api-types/v3";
import { ExpandedBase64 } from "../classes";
import { Student } from "../accounts";
export declare class Message {
private _user?;
/** @description Unique ID */
id: number;
/** @description Direction of the message */
type: "received" | "sent";
/** @description Whether it is marked as read */
read: boolean;
/** @description Has it been transferred? */
transferred: boolean;
/** @description Has it been answered? */
answered: boolean;
/**
* @description Degree of implication
* @enum `to`: the message is directed to the user
* @enum `cc`: the message is not written for the user, but publicly adressed
* @enum `cci`: the message is not written for the user and is privately sent
* @enum ` `: the message isn't received
*/
to_cc_cci: "to" | "cc" | "cci" | "";
/** @description Subject, headline of the mail */
subject: string;
/** @description When has this message been sent? */
date: Date;
/** @description List of the addressees */
to: Array<{
id: number;
fullName: string;
lastName: string;
firstName: string;
particle: string;
civility: string;
role: role;
read: boolean;
to_cc_cci: "to" | "cc" | "cci";
}>;
/** @description Sender */
from: {
id: number;
fullName: string;
lastName: string;
firstName: string;
particle: string;
civility: string;
role: role;
read: boolean;
};
/** @description Raw document straight from EcoleDirecte */
_raw: mailboxResMessage;
constructor(o: mailboxResMessage, user?: Student);
/**
* @description Fetches the content of the mail
* NEEDS USER
*/
getContent(): Promise<ExpandedBase64>;
}