@tellescope/types-models 1.223.0 → 1.225.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/src/index.ts CHANGED
@@ -308,6 +308,11 @@ export type StripeKeyDetail = {
308
308
  title: string,
309
309
  }
310
310
 
311
+ export type MetriportIntegrationDetail = {
312
+ title: string,
313
+ environment?: string,
314
+ }
315
+
311
316
  // for setting holiday/out of office hours with custom reply
312
317
  export type OutOfOfficeBlock = {
313
318
  from: Date,
@@ -375,6 +380,7 @@ export interface Organization extends Organization_readonly, Organization_requir
375
380
  externalCalendarEventPlaceholderDescription?: string,
376
381
  customZoomEmailTemplate?: string,
377
382
  customZoomEmailSubject?: string,
383
+ customZoomSMSTemplate?: string,
378
384
  customVoicemailText?: string,
379
385
  hasConnectedOpenAI?: boolean,
380
386
  hasConnectedHealthie?: boolean,
@@ -443,6 +449,7 @@ export interface Organization extends Organization_readonly, Organization_requir
443
449
  }[],
444
450
  stripePublicKeys?: string[],
445
451
  stripeKeyDetails?: StripeKeyDetail[],
452
+ metriportIntegrationDetails?: MetriportIntegrationDetail[],
446
453
  additionalIterableKeys?: string[],
447
454
  defaultDoseSpotPharmacies?: { id: string, name: string }[]
448
455
  groups?: string[],
@@ -1636,6 +1643,7 @@ export type FormFieldOptions = FormFieldValidation & {
1636
1643
  subFields?: FormSubField[],
1637
1644
  validFileTypes?: string[], // should be human readable files where the lower-case version is included in a filetype, e.g. Image, Video, PDF
1638
1645
  maxFileSize?: number, // in bytes
1646
+ hideFromPortal?: boolean, // hide uploaded files from patient portal
1639
1647
  signatureUrl?: string,
1640
1648
  productIds?: string[],
1641
1649
  chargeImmediately?: boolean,
@@ -1798,6 +1806,7 @@ export interface Form extends Form_readonly, Form_required, Form_updatesDisabled
1798
1806
  htmlThanksMessage?: string,
1799
1807
  type?: FormType,
1800
1808
  scoring?: FormScoring[]
1809
+ realTimeScoring?: boolean,
1801
1810
  externalId?: string,
1802
1811
  ga4measurementId?: string,
1803
1812
  backgroundColor?: string,
@@ -2661,6 +2670,8 @@ export interface AppointmentBookingPage extends AppointmentBookingPage_readonly,
2661
2670
  archivedAt?: Date | '',
2662
2671
  gtmTag?: string,
2663
2672
  dontRestrictRescheduleToOriginalHost?: boolean,
2673
+ calendarTitleText?: string, // Custom text for "Pick a date and time for your visit" - can be empty to hide
2674
+ emailFieldBehavior?: "required" | "optional" | "hidden",
2664
2675
  // productIds?: string[], // defer to specific template
2665
2676
  }
2666
2677
 
@@ -2698,7 +2709,7 @@ export interface WebhookCall {
2698
2709
  description?: string,
2699
2710
  }
2700
2711
 
2701
- export type AutomationEventType =
2712
+ export type AutomationEventType =
2702
2713
  'onJourneyStart'
2703
2714
  | 'afterAction'
2704
2715
  | "formResponse"
@@ -2709,6 +2720,7 @@ export type AutomationEventType =
2709
2720
  | 'waitForTrigger'
2710
2721
  | "onCallOutcome"
2711
2722
  | "onAIDecision"
2723
+ | "onError"
2712
2724
 
2713
2725
  interface AutomationEventBuilder <T extends AutomationEventType, V extends object> {
2714
2726
  type: T,
@@ -2813,11 +2825,16 @@ export type OnJourneyStartAutomationEvent = AutomationEventBuilder<'onJourneySta
2813
2825
  export type TicketCompletedAutomationEvent = AutomationEventBuilder<'ticketCompleted', TicketCompletedEventInfo>
2814
2826
  export type WaitForTriggerAutomationEvent = AutomationEventBuilder<'waitForTrigger', { automationStepId: string, triggerId: string }>
2815
2827
  export type OnCallOutcomeAutomationEvent = AutomationEventBuilder<'onCallOutcome', { automationStepId: string, outcome: string }>
2816
- export type OnAIDecisionAutomationEvent = AutomationEventBuilder<'onAIDecision', { automationStepId: string, outcomes: string[] }>
2828
+ export type OnAIDecisionAutomationEvent = AutomationEventBuilder<'onAIDecision', { automationStepId: string, outcomes: string[] }>
2829
+
2830
+ export type OnErrorEventInfo = {
2831
+ automationStepId: string,
2832
+ }
2833
+ export type OnErrorAutomationEvent = AutomationEventBuilder<'onError', OnErrorEventInfo>
2817
2834
 
2818
2835
  export type AutomationEventForType = {
2819
2836
  'onJourneyStart': OnJourneyStartAutomationEvent
2820
- 'afterAction': AfterActionAutomationEvent
2837
+ 'afterAction': AfterActionAutomationEvent
2821
2838
  "formResponse": FormResponseAutomationEvent
2822
2839
  "formResponses": FormResponsesAutomationEvent
2823
2840
  'formUnsubmitted': FormUnsubmittedEvent
@@ -2826,6 +2843,7 @@ export type AutomationEventForType = {
2826
2843
  'waitForTrigger': WaitForTriggerAutomationEvent
2827
2844
  'onCallOutcome': OnCallOutcomeAutomationEvent,
2828
2845
  'onAIDecision': OnAIDecisionAutomationEvent
2846
+ 'onError': OnErrorAutomationEvent
2829
2847
  }
2830
2848
  export type AutomationEvent = AutomationEventForType[keyof AutomationEventForType]
2831
2849
 
@@ -2941,7 +2959,7 @@ export type CreateCarePlanAutomationAction = AutomationActionBuilder<'createCare
2941
2959
  export type CompleteCarePlanAutomationAction = AutomationActionBuilder<'completeCarePlan', {}>
2942
2960
  export type ZusSyncAutomationAction = AutomationActionBuilder<'zusSync', {}>
2943
2961
  export type ZusPullAutomationAction = AutomationActionBuilder<'zusPull', {}>
2944
- export type MetriportSyncAutomationAction = AutomationActionBuilder<'metriportSync', { facilityId: string }>
2962
+ export type MetriportSyncAutomationAction = AutomationActionBuilder<'metriportSync', { facilityId: string, integrationTitle?: string }>
2945
2963
  export type ZusSubscribeAutomationAction = AutomationActionBuilder<'zusSubscribe', { practitionerId: string, packageIds: string[] }>
2946
2964
  export type PagerDutyCreateIncidentAutomationAction = AutomationActionBuilder<'pagerDutyCreateIncident', { type: string, title: string, serviceId: string }>
2947
2965
  export type SmartMeterOrderLineItem = { quantity: number, sku: string }
@@ -3040,6 +3058,7 @@ export type CallUserAutomationAction = AutomationActionBuilder<
3040
3058
  export type StripeChargeCardOnFileAutomationAction = AutomationActionBuilder<'stripeChargeCardOnFile', {
3041
3059
  stripeKey?: string, // indicating custom vs. stripe connect
3042
3060
  priceIds: string[], // Stripe price ids to charge
3061
+ productIds?: string[], // Tellescope product IDs to extract price IDs from
3043
3062
  subscriptionPriceId?: string
3044
3063
  }>
3045
3064
 
@@ -3194,15 +3213,27 @@ export interface EnduserObservation extends EnduserObservation_readonly, Enduser
3194
3213
  }
3195
3214
 
3196
3215
  export type BlockType = 'h1' | 'h2' | 'html' | 'image' | 'youtube' | 'pdf' | 'iframe' | 'content-link'
3216
+
3217
+ export type BlockStyle = {
3218
+ width?: number,
3219
+ height?: number,
3220
+ backgroundColor?: string,
3221
+ borderColor?: string,
3222
+ borderWidth?: number,
3223
+ textColor?: string,
3224
+ }
3225
+
3197
3226
  export type ContentBlockBuilder <BLOCK extends BlockType, INFO extends object> = {
3198
3227
  type: BLOCK,
3199
3228
  info: INFO,
3229
+ style?: BlockStyle,
3200
3230
  }
3201
3231
 
3202
3232
  export type BlockContentText = { text: string }
3203
3233
  export type BlockContentMedia = {
3204
3234
  link: string,
3205
3235
  name?: string,
3236
+ alt?: string,
3206
3237
  height?: number,
3207
3238
  maxHeight?: number,
3208
3239
  width?: number,
@@ -3287,7 +3318,7 @@ export type CareTeamMemberPortalCustomizationInfo = {
3287
3318
  role?: string, // for matching to care team role for a specific team member
3288
3319
  }
3289
3320
  export type PortalBlockForType = {
3290
- careTeam: BuildPortalBlockInfo<'careTeam', {
3321
+ careTeam: BuildPortalBlockInfo<'careTeam', {
3291
3322
  title: string,
3292
3323
  roles?: string[],
3293
3324
  showAll?: boolean,
@@ -3301,6 +3332,10 @@ export type PortalBlockForType = {
3301
3332
  "Orders": BuildPortalBlockInfo<'Orders', { }>
3302
3333
  "Manage Subscription Button": BuildPortalBlockInfo<'Manage Subscription Button', { }>
3303
3334
  HTML: BuildPortalBlockInfo<'HTML', { html: string }>
3335
+ pinnedForms: BuildPortalBlockInfo<'pinnedForms', {
3336
+ title?: string,
3337
+ formIds?: string[],
3338
+ }>
3304
3339
  }
3305
3340
  export type PortalBlockType = keyof PortalBlockForType
3306
3341
  export type PortalBlock = PortalBlockForType[PortalBlockType]
@@ -3549,7 +3584,8 @@ export interface PhoneCall extends PhoneCall_readonly, PhoneCall_required, Phone
3549
3584
  externalConferenceId?: string,
3550
3585
  conferenceAttendees?: (string[]) | (string[][]), // old code caused multiple lists to be pushed by mistake
3551
3586
  unread?: boolean,
3552
- transcription?: string,
3587
+ transcription?: string, // Twilio voicemail transcription
3588
+ recordingTranscriptionData?: string, // Full AWS Transcribe JSON response (stringified) with metadata
3553
3589
  note?: string,
3554
3590
  userId?: string,
3555
3591
  pinnedAt?: Date | '',
@@ -4052,6 +4088,20 @@ export type AutomationTriggerActions = {
4052
4088
  "Reply to Chat": AutomationTriggerActionBuilder<'Reply to Chat', {
4053
4089
  message: string,
4054
4090
  }>,
4091
+ "Create User Notifications": AutomationTriggerActionBuilder<'Create User Notifications', {
4092
+ message: string,
4093
+ notificationType: string,
4094
+ careTeamOnly?: boolean,
4095
+ tags?: ListOfStringsWithQualifier,
4096
+ maxUsers?: number,
4097
+ }>,
4098
+ "Assign to Incoming Message": AutomationTriggerActionBuilder<'Assign to Incoming Message', {
4099
+ careTeamOnly?: boolean,
4100
+ tags?: ListOfStringsWithQualifier,
4101
+ maxUsers?: number,
4102
+ }>,
4103
+ "Zendesk: Update Ticket Assignee": AutomationTriggerActionBuilder<'Zendesk: Update Ticket Assignee', {
4104
+ }>,
4055
4105
  }
4056
4106
  export type AutomationTriggerActionType = keyof AutomationTriggerActions
4057
4107
  export type AutomationTriggerAction = AutomationTriggerActions[AutomationTriggerActionType]
@@ -5302,6 +5352,8 @@ export type JourneyContext = {
5302
5352
  fileId?: string,
5303
5353
  chatRoomId?: string,
5304
5354
  twilioNumber?: string,
5355
+ ticketThreadId?: string,
5356
+ ticketThreadCommentId?: string,
5305
5357
  }
5306
5358
 
5307
5359
  // https://gist.github.com/aviflax/a4093965be1cd008f172/