import { TelemetryOptions } from './telemetry-options'; /** * Telemetry record. */ export interface TelemetryRecord { /** * The view name. * ex) createVmForm, processList, eventRecordList, stopServiceConfirmationDialog... */ view: string; /** * The instance name for the telemetry target object. */ instance: string; /** * The name of part within the view. * ex) angular component name. */ part?: string; /** * The action name. * ex) createVm, refresh, stopService */ action: string; /** * A modifier for the action. */ actionModifier?: string; /** * The additional data. */ data?: any; /** * Whether or not this event should be considered optional. Default to false. */ optional?: boolean; /** * The partner telemetry event provider name. */ eventProvider?: string; /** * The partner telemetry event name. */ eventName?: string; /** * The partner telemetry options. */ telemetryOptions?: TelemetryOptions; } /** * Feedback specific fields for the feedback telemetry event. Most of these are populated by the feedback dialog itself. */ export interface FeedbackTelemetryData { /** * Location of the feedback dialog */ FeedbackDelivery: string; /** * The text of the feedback prompt */ QuestionText: string; /** * The user score */ RatingScore: number; /** * The region/language of the user */ UserLocale: string; /** * Whether the feedback was declined or not. */ FeedbackDeclined: boolean; /** * User comments, if specified */ UserComments: string; /** * User email, if added */ UserEmail: string; }