import { Schema } from "mongoose"; import { EnumMap, IJson, IDocument, IObject, IInstance, IModel, IAction, IActionTypes } from "@onebro/oba-common"; import { FinavigatorUserProfile, FinavigatorUserProfilePreview } from "./profiles"; export declare enum FinavigatorMessageStatuses { N = "New", S = "Saved", Y = "Sent", Z = "Seen/Read", A = "Accepted", D = "Declined", R = "Revised", E = "Expired", C = "Cancelled" } export declare type FinavigatorMessageStatus = keyof typeof FinavigatorMessageStatuses; export declare type FinavigatorMessageConfig = { type: "contactus" | "note" | "chat"; author: string; body: string; }; export declare type FinavigatorMessageType = IObject & Pick & { author: FinavigatorUserProfile; }; export interface FinavigatorMessageDocument extends IDocument, FinavigatorMessageType { } export interface FinavigatorMessage extends IInstance, FinavigatorMessageDocument { } export interface FinavigatorMessageModel extends IModel { } export declare type FinavigatorMessagePublicKeys = "type" | "body"; export declare type FinavigatorMessagePublicData = Pick; export declare type FinavigatorMessageJson = IJson & FinavigatorMessagePublicData & { published: Date; author: FinavigatorUserProfilePreview; }; export declare type FinavigatorMessageModelMap = { FinavigatorMessage: FinavigatorMessageModel; }; export declare type FinavigatorMessageInstanceMap = { msg: FinavigatorMessage; }; export declare type FinavigatorMessageSchemaMap = { msg: Schema; }; export declare type FinavigatorMessageActionTypes = IActionTypes; export declare type FinavigatorMessageActions = EnumMap;