import { Schema } from "mongoose"; import { EnumMap, IJson, IDocument, IObject, IInstance, IModel, IAction, IActionTypes } from "@onebro/oba-common"; import { FinavigatorUserProfile, FinavigatorUserProfilePreview } from "./profiles"; import { FinavigatorMessage, FinavigatorMessageJson } from "./messages"; export declare enum FinavigatorServiceChatStatuses { N = "New", S = "Saved", Y = "Sent", Z = "Seen/Read", A = "Accepted", D = "Declined", R = "Revised", E = "Expired", C = "Cancelled" } export declare type FinavigatorServiceChatStatus = keyof typeof FinavigatorServiceChatStatuses; export declare type FinavigatorServiceChatConfig = { agent: string; client: string; }; export declare type FinavigatorServiceChatType = IObject & { agent: FinavigatorUserProfile; client: FinavigatorUserProfile; msgs: FinavigatorMessage[]; notes: FinavigatorMessage[]; }; export interface FinavigatorServiceChatDocument extends IDocument, FinavigatorServiceChatType { } export interface FinavigatorServiceChat extends IInstance, FinavigatorServiceChatDocument { } export interface FinavigatorServiceChatModel extends IModel { } export declare type FinavigatorServiceChatPublicKeys = "created"; export declare type FinavigatorServiceChatPublicData = Pick; export declare type FinavigatorServiceChatJson = IJson & { agent: FinavigatorUserProfilePreview; client: FinavigatorUserProfilePreview; msgs: FinavigatorMessageJson[]; notes: FinavigatorMessageJson[]; }; export declare type FinavigatorServiceChatModelMap = { FinavigatorServiceChat: FinavigatorServiceChatModel; }; export declare type FinavigatorServiceChatInstanceMap = { chat: FinavigatorServiceChat; }; export declare type FinavigatorServiceChatSchemaMap = { chat: Schema; }; export declare type FinavigatorServiceChatActionTypes = IActionTypes; export declare type FinavigatorServiceChatActions = EnumMap;