import { ResourceId, Session, SessionStream, User } from '../models'; export interface SessionReport { archiveUrl: string; attendances: SessionReportParticipants; callScore: number; avgCallScore: number; edmScore?: number; editable: boolean; flashReportEmailed: boolean; flashReportLastSent: number; flashReportUrl: string; highlightsApproved: boolean; highlightsReviewToken: string; id: ResourceId; isComplete: boolean; lsmScore?: number; mph: SessionReportMPH; sessionId: ResourceId; session: Session; strongestSignals: string[]; talkFlow: SessionReportTalkFlow; talkGrades: SessionReportTalkGrades; talkTimeSeconds: number; talkWords: number; talkWpm: number; talkSentiment: number; transcriptGenerated: boolean; } export interface SessionReportTalkGrades { ari: { age: string; grade: string; score: number; }; cli: { grade: number; }; } export interface SessionReportTalkFlow { interjections: SessionReportTalkFlowValue; interruptions: SessionReportTalkFlowValue; profanities: SessionReportTalkFlowValue; turnovers: SessionReportTalkFlowValue; } export interface SessionReportTalkFlowValue { count: number; cutoff: number; rate: number; } export interface SessionReportMPH { smile: { count: number; mph: number; }; } export interface SessionReportParticipants { [key: string]: SessionReportParticipant; } export interface SessionReportParticipant extends User { avgEmotions: any; badges: string[]; moodMap: MoodMapItem[]; sharedScreen: boolean; streams: SessionStream[]; talkAnalysis: any; talkMap: Array<[number, number]>; talkTimePercent: number; talkTimeSeconds: number; talkWords: number; talkWordsShare: number; talkWpm: number; } export interface MoodMapItem { bounds: [number, number]; value: number; }