@robylon/web-react-sdk 1.1.41-staging.2 → 1.1.41-staging.21

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.
Files changed (60) hide show
  1. package/README.md +136 -19
  2. package/dist/cjs/index.js +3 -1
  3. package/dist/cjs/index.js.map +1 -1
  4. package/dist/cjs/types/components/ChatbotFloatingButton.d.ts +3 -0
  5. package/dist/cjs/types/components/ChatbotIframe.d.ts +4 -0
  6. package/dist/cjs/types/components/RobylonChatbot.d.ts +16 -3
  7. package/dist/cjs/types/core/config.d.ts +7 -0
  8. package/dist/cjs/types/index.d.ts +1 -0
  9. package/dist/cjs/types/types/events.d.ts +8 -1
  10. package/dist/cjs/types/types.d.ts +50 -0
  11. package/dist/cjs/types/utils/fetchData.d.ts +7 -1
  12. package/dist/cjs/types/utils/launcherInfo.d.ts +9 -0
  13. package/dist/cjs/types/utils/mockProactive.d.ts +2 -0
  14. package/dist/cjs/types/utils/proactive.d.ts +19 -0
  15. package/dist/cjs/types/utils/sanitize.d.ts +4 -0
  16. package/dist/cjs/types/utils/url.d.ts +8 -0
  17. package/dist/cjs/types/vanilla/components/ChatbotContainer.d.ts +1 -1
  18. package/dist/cjs/types/vanilla/components/ChatbotFloatingButton.d.ts +10 -0
  19. package/dist/cjs/types/vanilla/components/ChatbotIframe.d.ts +13 -0
  20. package/dist/cjs/types/vanilla/index.d.ts +9 -0
  21. package/dist/esm/index.js +3 -1
  22. package/dist/esm/index.js.map +1 -1
  23. package/dist/esm/types/components/ChatbotFloatingButton.d.ts +3 -0
  24. package/dist/esm/types/components/ChatbotIframe.d.ts +4 -0
  25. package/dist/esm/types/components/RobylonChatbot.d.ts +16 -3
  26. package/dist/esm/types/core/config.d.ts +7 -0
  27. package/dist/esm/types/index.d.ts +1 -0
  28. package/dist/esm/types/types/events.d.ts +8 -1
  29. package/dist/esm/types/types.d.ts +50 -0
  30. package/dist/esm/types/utils/fetchData.d.ts +7 -1
  31. package/dist/esm/types/utils/launcherInfo.d.ts +9 -0
  32. package/dist/esm/types/utils/mockProactive.d.ts +2 -0
  33. package/dist/esm/types/utils/proactive.d.ts +19 -0
  34. package/dist/esm/types/utils/sanitize.d.ts +4 -0
  35. package/dist/esm/types/utils/url.d.ts +8 -0
  36. package/dist/esm/types/vanilla/components/ChatbotContainer.d.ts +1 -1
  37. package/dist/esm/types/vanilla/components/ChatbotFloatingButton.d.ts +10 -0
  38. package/dist/esm/types/vanilla/components/ChatbotIframe.d.ts +13 -0
  39. package/dist/esm/types/vanilla/index.d.ts +9 -0
  40. package/dist/index.d.ts +82 -3
  41. package/dist/umd/robylon-chatbot.js +1 -1
  42. package/dist/umd/robylon-chatbot.js.map +1 -1
  43. package/dist/umd/types/components/ChatbotFloatingButton.d.ts +3 -0
  44. package/dist/umd/types/components/ChatbotIframe.d.ts +4 -0
  45. package/dist/umd/types/components/RobylonChatbot.d.ts +16 -3
  46. package/dist/umd/types/core/config.d.ts +7 -0
  47. package/dist/umd/types/index.d.ts +1 -0
  48. package/dist/umd/types/types/events.d.ts +8 -1
  49. package/dist/umd/types/types.d.ts +50 -0
  50. package/dist/umd/types/utils/fetchData.d.ts +7 -1
  51. package/dist/umd/types/utils/launcherInfo.d.ts +9 -0
  52. package/dist/umd/types/utils/mockProactive.d.ts +2 -0
  53. package/dist/umd/types/utils/proactive.d.ts +19 -0
  54. package/dist/umd/types/utils/sanitize.d.ts +4 -0
  55. package/dist/umd/types/utils/url.d.ts +8 -0
  56. package/dist/umd/types/vanilla/components/ChatbotContainer.d.ts +1 -1
  57. package/dist/umd/types/vanilla/components/ChatbotFloatingButton.d.ts +10 -0
  58. package/dist/umd/types/vanilla/components/ChatbotIframe.d.ts +13 -0
  59. package/dist/umd/types/vanilla/index.d.ts +9 -0
  60. package/package.json +7 -5
@@ -10,6 +10,9 @@ interface ChatbotFloatingButtonProps {
10
10
  position?: "Left" | "Right";
11
11
  sideSpacing?: number;
12
12
  bottomSpacing?: number;
13
+ launcher_type?: "TEXT" | "IMAGE" | "TEXTUAL_IMAGE";
14
+ launcher_properties_text?: string;
15
+ shouldFadeIn?: boolean;
13
16
  }
14
17
  declare const _default: React.NamedExoticComponent<ChatbotFloatingButtonProps>;
15
18
  export default _default;
@@ -1,12 +1,16 @@
1
1
  import React from "react";
2
2
  import { ChatbotConfig } from "../types";
3
3
  import { ChatbotEventHandler, AllEventTypes } from "../types/events";
4
+ import { Overrides } from "src/components/RobylonChatbot";
4
5
  interface ChatbotIframeProps {
5
6
  config: ChatbotConfig;
6
7
  isVisible: boolean;
7
8
  onClose: () => void;
8
9
  onEvent?: ChatbotEventHandler;
9
10
  onInternalEvent: (eventType: AllEventTypes, additionalData?: Record<string, any>) => void;
11
+ position?: "Left" | "Right";
12
+ bottomSpacing?: number;
13
+ overrides?: Overrides;
10
14
  }
11
15
  declare const _default: React.NamedExoticComponent<ChatbotIframeProps>;
12
16
  export default _default;
@@ -1,5 +1,14 @@
1
1
  import React from "react";
2
- import { ChatbotEventHandler } from "../types/events";
2
+ import { ChatbotEventHandler, ChatbotRef } from "../types/events";
3
+ export interface Overrides {
4
+ header_avatar?: string | null;
5
+ agent_avatar?: string | null;
6
+ header_title?: string | null;
7
+ header_subtitle?: string | null;
8
+ header_title_text_color?: string | null;
9
+ header_subtitle_text_color?: string | null;
10
+ header_bg?: string | null;
11
+ }
3
12
  interface ChatbotProps {
4
13
  api_key: string;
5
14
  user_id?: string | null | number;
@@ -9,6 +18,10 @@ interface ChatbotProps {
9
18
  position?: "Left" | "Right";
10
19
  sideSpacing?: number;
11
20
  bottomSpacing?: number;
21
+ show_launcher?: boolean | null;
22
+ launcher_type?: "TEXT" | "IMAGE" | "TEXTUAL_IMAGE";
23
+ launcher_properties_text?: string;
24
+ overrides?: Overrides;
12
25
  }
13
- declare const RobylonChatbot: React.FC<ChatbotProps>;
14
- export { RobylonChatbot as Chatbot };
26
+ declare const MemoizedRobylonChatbot: React.MemoExoticComponent<React.ForwardRefExoticComponent<ChatbotProps & React.RefAttributes<ChatbotRef>>>;
27
+ export { MemoizedRobylonChatbot as Chatbot };
@@ -1,4 +1,5 @@
1
1
  import { ChatbotConfig } from "../types";
2
+ import { ProactiveMessage } from "src/types";
2
3
  /**
3
4
  * Normalizes the configuration properties
4
5
  * @param props The configuration properties
@@ -32,3 +33,9 @@ export declare const initializeChatbotConfig: (props: {
32
33
  user_token?: string;
33
34
  user_profile?: Record<string, any>;
34
35
  }) => Promise<ChatbotConfig>;
36
+ /**
37
+ * Normalizes proactive messages from backend to an array form, preserving order.
38
+ * - Accepts undefined, single object, or array of objects
39
+ * - Migrates legacy `content` to `content_multiple`
40
+ */
41
+ export declare const normalizeProactiveMessages: (input: any) => ProactiveMessage[] | undefined;
@@ -1,5 +1,6 @@
1
1
  export { Chatbot } from "./components/RobylonChatbot";
2
2
  export * from "./types";
3
3
  export * from "./hooks/useChatbot";
4
+ export { ChatbotRef } from "./types/events";
4
5
  import RobylonChatbot from "./vanilla";
5
6
  export { RobylonChatbot };
@@ -7,7 +7,8 @@ export declare enum ChatbotEventType {
7
7
  CHATBOT_LOADED = "CHATBOT_LOADED",// From Robylon Chatbot
8
8
  CHAT_INITIALIZED = "CHAT_INITIALIZED",// From Robylon Chatbot
9
9
  SESSION_REFRESHED = "SESSION_REFRESHED",// From Robylon Chatbot
10
- CHAT_INITIALIZATION_FAILED = "CHAT_INITIALIZATION_FAILED"
10
+ CHAT_INITIALIZATION_FAILED = "CHAT_INITIALIZATION_FAILED",// From Robylon Chatbot
11
+ CHATBOT_READY = "CHATBOT_READY"
11
12
  }
12
13
  export declare enum InternalEventType {
13
14
  CHAT_MOVED = "CHAT_MOVED",// Internal only event
@@ -20,3 +21,9 @@ export interface ChatbotEvent {
20
21
  data?: any;
21
22
  }
22
23
  export type ChatbotEventHandler = (event: ChatbotEvent) => void;
24
+ export interface ChatbotRef {
25
+ show: () => void;
26
+ hide: () => void;
27
+ toggle: () => void;
28
+ isReady: boolean;
29
+ }
@@ -23,6 +23,7 @@ export interface ChatbotConfig {
23
23
  token?: string;
24
24
  userProfile?: Record<string, any>;
25
25
  domain: string;
26
+ show_launcher: boolean;
26
27
  brand_colour: string;
27
28
  image_url?: string;
28
29
  chat_interface_config?: {
@@ -43,6 +44,11 @@ export interface ChatbotConfig {
43
44
  url: string;
44
45
  };
45
46
  };
47
+ proactive_message_obj?: ProactiveMessage[] | undefined;
48
+ launcher_delay: {
49
+ enabled: boolean;
50
+ delay: number;
51
+ };
46
52
  }
47
53
  interface RobylonSdkConfig {
48
54
  chatbot_id: string;
@@ -68,4 +74,48 @@ declare global {
68
74
  initializeRobylonSdk: (config: RobylonSdkConfig) => void;
69
75
  }
70
76
  }
77
+ export declare enum ProactiveSendTimeType {
78
+ WORKING_HOURS = "WORKING_HOURS",
79
+ ALWAYS = "ALWAYS"
80
+ }
81
+ export declare enum DisplayAttributesType {
82
+ "URL" = "URL"
83
+ }
84
+ export declare enum LogicalConditionType {
85
+ AND = "AND",
86
+ OR = "OR"
87
+ }
88
+ export declare enum ConditionType {
89
+ IS = "IS",
90
+ IS_NOT = "IS_NOT",
91
+ CONTAINS = "CONTAINS",
92
+ DOES_NOT_CONTAIN = "DOES_NOT_CONTAIN",
93
+ STARTS_WITH = "STARTS_WITH",
94
+ ENDS_WITH = "ENDS_WITH"
95
+ }
96
+ export interface ContentDisplayAttribute {
97
+ type: DisplayAttributesType;
98
+ value: string;
99
+ condition: ConditionType;
100
+ }
101
+ export interface LogicalConditionAttribute {
102
+ logical_condition: LogicalConditionType;
103
+ }
104
+ export interface ProactiveMessage {
105
+ message_id: string;
106
+ org_id: string;
107
+ name?: string;
108
+ content?: string;
109
+ send_time_type?: ProactiveSendTimeType | string;
110
+ created_by_name?: string;
111
+ updated_by_name?: string;
112
+ updated_at?: string;
113
+ created_at?: string;
114
+ delay?: number;
115
+ content_multiple?: {
116
+ message: string;
117
+ content_id?: string;
118
+ message_display_attributes: (ContentDisplayAttribute | LogicalConditionAttribute)[];
119
+ }[];
120
+ }
71
121
  export {};
@@ -1,4 +1,4 @@
1
- import { ChatbotInterfaceType, LauncherType, WidgetPositionEnums } from "../types";
1
+ import { ChatbotInterfaceType, LauncherType, WidgetPositionEnums, ProactiveMessage } from "../types";
2
2
  interface ChatbotResponse {
3
3
  user: {
4
4
  token: string;
@@ -38,7 +38,13 @@ interface ChatbotResponse {
38
38
  url: string;
39
39
  };
40
40
  };
41
+ proactive_message_obj?: ProactiveMessage | ProactiveMessage[];
42
+ launcher_delay: {
43
+ enabled: boolean;
44
+ delay: number;
45
+ };
41
46
  };
47
+ show_launcher: boolean;
42
48
  };
43
49
  };
44
50
  }
@@ -0,0 +1,9 @@
1
+ interface LauncherInfo {
2
+ current_page_url: string;
3
+ browser_language: string;
4
+ browser_version: string;
5
+ os: string;
6
+ referral_url: string;
7
+ }
8
+ export declare const getLauncherInfo: () => LauncherInfo;
9
+ export {};
@@ -0,0 +1,2 @@
1
+ import { ProactiveMessage } from "src/types";
2
+ export declare const buildMockProactives: (orgId: string) => ProactiveMessage[];
@@ -0,0 +1,19 @@
1
+ import { ProactiveMessage } from "src/types";
2
+ export declare const hideProactiveForThisPage: () => void;
3
+ export declare const isProactiveHiddenThisPage: () => boolean;
4
+ export declare const setLastClickedProactive: (params: {
5
+ content_string: string | null;
6
+ message_id: string | null;
7
+ }) => void;
8
+ export declare const getAndClearLastClickedProactive: () => {
9
+ input_id: null;
10
+ content_string: string | null;
11
+ message_id: string | null;
12
+ } | null;
13
+ export interface VisibleContent {
14
+ messageId: string;
15
+ contentIndex: number;
16
+ html: string;
17
+ delayMs: number;
18
+ }
19
+ export declare const evaluateProactiveMessages: (messages?: ProactiveMessage[]) => VisibleContent[];
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Sanitizes HTML while preserving emojis and basic inline formatting.
3
+ */
4
+ export declare const sanitizeHtml: (html?: string) => string;
@@ -0,0 +1,8 @@
1
+ import { ConditionType, DisplayAttributesType } from "src/types";
2
+ type UrlChangeListener = (href: string) => void;
3
+ export declare const getCurrentHref: () => string;
4
+ export declare const buildLocationKey: () => string;
5
+ export declare const subscribeToUrlChanges: (cb: UrlChangeListener) => (() => void);
6
+ export declare const initUrlObserver: () => void;
7
+ export declare const matchCondition: (type: DisplayAttributesType, value: string, condition: ConditionType, href: string) => boolean;
8
+ export {};
@@ -12,7 +12,7 @@ export declare class ChatbotContainer {
12
12
  /**
13
13
  * Creates a new ChatbotContainer
14
14
  */
15
- constructor(config: ChatbotConfig);
15
+ constructor(config: ChatbotConfig, position?: "Left" | "Right", sideSpacing?: number, bottomSpacing?: number);
16
16
  /**
17
17
  * Renders the container element
18
18
  */
@@ -25,6 +25,9 @@ export declare class ChatbotFloatingButton {
25
25
  private config;
26
26
  private resizeObserver;
27
27
  private handleResizeFunction;
28
+ private proactiveElement;
29
+ private urlUnsubscribe;
30
+ private delayTimers;
28
31
  /**
29
32
  * Creates a new ChatbotFloatingButton
30
33
  * @param config The button configuration
@@ -68,5 +71,12 @@ export declare class ChatbotFloatingButton {
68
71
  * Unmounts and destroys the button
69
72
  */
70
73
  destroy(): void;
74
+ private clearProactiveDelays;
75
+ /**
76
+ * Hides proactive messages with animation
77
+ */
78
+ private hideProactiveMessages;
79
+ private injectAnimationStyles;
80
+ private renderProactiveIfNeeded;
71
81
  }
72
82
  export {};
@@ -1,5 +1,14 @@
1
1
  import { ChatbotConfig } from "../../types";
2
2
  import { ChatbotEventType, AllEventTypes } from "../../types/events";
3
+ interface Overrides {
4
+ header_avatar?: string | null;
5
+ agent_avatar?: string | null;
6
+ header_title?: string | null;
7
+ header_subtitle?: string | null;
8
+ header_title_text_color?: string | null;
9
+ header_subtitle_text_color?: string | null;
10
+ header_bg?: string | null;
11
+ }
3
12
  /**
4
13
  * Interface for the ChatbotIframe configuration
5
14
  */
@@ -13,6 +22,9 @@ interface ChatbotIframeConfig {
13
22
  data?: any;
14
23
  }) => void;
15
24
  onInternalEvent: (eventType: AllEventTypes, additionalData?: Record<string, any>) => void;
25
+ position?: "Left" | "Right";
26
+ bottomSpacing?: number;
27
+ overrides?: Overrides;
16
28
  }
17
29
  /**
18
30
  * Class representing the ChatbotIframe component
@@ -23,6 +35,7 @@ export declare class ChatbotIframe {
23
35
  private isInitialized;
24
36
  private hasRegistered;
25
37
  private resizeHandler;
38
+ private overridesPayloadCache;
26
39
  /**
27
40
  * Creates a new ChatbotIframe
28
41
  * @param config The iframe configuration
@@ -8,6 +8,15 @@ export interface RobylonChatbotConfig {
8
8
  user_token?: string;
9
9
  user_profile?: Record<string, any>;
10
10
  onEvent?: (event: ChatbotEvent) => void;
11
+ position?: "Left" | "Right" | string;
12
+ sideSpacing?: number | string;
13
+ bottomSpacing?: number | string;
14
+ show_launcher?: boolean | null;
15
+ overrides?: {
16
+ header_avatar?: string | null;
17
+ agent_avatar?: string | null;
18
+ header_title?: string | null;
19
+ };
11
20
  }
12
21
  /**
13
22
  * RobylonChatbot instance interface
package/dist/index.d.ts CHANGED
@@ -9,7 +9,8 @@ declare enum ChatbotEventType {
9
9
  CHATBOT_LOADED = "CHATBOT_LOADED",// From Robylon Chatbot
10
10
  CHAT_INITIALIZED = "CHAT_INITIALIZED",// From Robylon Chatbot
11
11
  SESSION_REFRESHED = "SESSION_REFRESHED",// From Robylon Chatbot
12
- CHAT_INITIALIZATION_FAILED = "CHAT_INITIALIZATION_FAILED"
12
+ CHAT_INITIALIZATION_FAILED = "CHAT_INITIALIZATION_FAILED",// From Robylon Chatbot
13
+ CHATBOT_READY = "CHATBOT_READY"
13
14
  }
14
15
  interface ChatbotEvent {
15
16
  type: ChatbotEventType;
@@ -17,7 +18,22 @@ interface ChatbotEvent {
17
18
  data?: any;
18
19
  }
19
20
  type ChatbotEventHandler = (event: ChatbotEvent) => void;
21
+ interface ChatbotRef {
22
+ show: () => void;
23
+ hide: () => void;
24
+ toggle: () => void;
25
+ isReady: boolean;
26
+ }
20
27
 
28
+ interface Overrides {
29
+ header_avatar?: string | null;
30
+ agent_avatar?: string | null;
31
+ header_title?: string | null;
32
+ header_subtitle?: string | null;
33
+ header_title_text_color?: string | null;
34
+ header_subtitle_text_color?: string | null;
35
+ header_bg?: string | null;
36
+ }
21
37
  interface ChatbotProps {
22
38
  api_key: string;
23
39
  user_id?: string | null | number;
@@ -27,8 +43,12 @@ interface ChatbotProps {
27
43
  position?: "Left" | "Right";
28
44
  sideSpacing?: number;
29
45
  bottomSpacing?: number;
46
+ show_launcher?: boolean | null;
47
+ launcher_type?: "TEXT" | "IMAGE" | "TEXTUAL_IMAGE";
48
+ launcher_properties_text?: string;
49
+ overrides?: Overrides;
30
50
  }
31
- declare const RobylonChatbot: React.FC<ChatbotProps>;
51
+ declare const MemoizedRobylonChatbot: React.MemoExoticComponent<React.ForwardRefExoticComponent<ChatbotProps & React.RefAttributes<ChatbotRef>>>;
32
52
 
33
53
  declare enum ChatbotInterfaceType {
34
54
  WIDGET = "WIDGET",
@@ -55,6 +75,7 @@ interface ChatbotConfig {
55
75
  token?: string;
56
76
  userProfile?: Record<string, any>;
57
77
  domain: string;
78
+ show_launcher: boolean;
58
79
  brand_colour: string;
59
80
  image_url?: string;
60
81
  chat_interface_config?: {
@@ -75,6 +96,11 @@ interface ChatbotConfig {
75
96
  url: string;
76
97
  };
77
98
  };
99
+ proactive_message_obj?: ProactiveMessage[] | undefined;
100
+ launcher_delay: {
101
+ enabled: boolean;
102
+ delay: number;
103
+ };
78
104
  }
79
105
  interface RobylonSdkConfig {
80
106
  chatbot_id: string;
@@ -100,6 +126,50 @@ declare global {
100
126
  initializeRobylonSdk: (config: RobylonSdkConfig) => void;
101
127
  }
102
128
  }
129
+ declare enum ProactiveSendTimeType {
130
+ WORKING_HOURS = "WORKING_HOURS",
131
+ ALWAYS = "ALWAYS"
132
+ }
133
+ declare enum DisplayAttributesType {
134
+ "URL" = "URL"
135
+ }
136
+ declare enum LogicalConditionType {
137
+ AND = "AND",
138
+ OR = "OR"
139
+ }
140
+ declare enum ConditionType {
141
+ IS = "IS",
142
+ IS_NOT = "IS_NOT",
143
+ CONTAINS = "CONTAINS",
144
+ DOES_NOT_CONTAIN = "DOES_NOT_CONTAIN",
145
+ STARTS_WITH = "STARTS_WITH",
146
+ ENDS_WITH = "ENDS_WITH"
147
+ }
148
+ interface ContentDisplayAttribute {
149
+ type: DisplayAttributesType;
150
+ value: string;
151
+ condition: ConditionType;
152
+ }
153
+ interface LogicalConditionAttribute {
154
+ logical_condition: LogicalConditionType;
155
+ }
156
+ interface ProactiveMessage {
157
+ message_id: string;
158
+ org_id: string;
159
+ name?: string;
160
+ content?: string;
161
+ send_time_type?: ProactiveSendTimeType | string;
162
+ created_by_name?: string;
163
+ updated_by_name?: string;
164
+ updated_at?: string;
165
+ created_at?: string;
166
+ delay?: number;
167
+ content_multiple?: {
168
+ message: string;
169
+ content_id?: string;
170
+ message_display_attributes: (ContentDisplayAttribute | LogicalConditionAttribute)[];
171
+ }[];
172
+ }
103
173
 
104
174
  declare const useChatbot: (config: ChatbotConfig) => ChatbotState;
105
175
 
@@ -112,6 +182,15 @@ interface RobylonChatbotConfig {
112
182
  user_token?: string;
113
183
  user_profile?: Record<string, any>;
114
184
  onEvent?: (event: ChatbotEvent) => void;
185
+ position?: "Left" | "Right" | string;
186
+ sideSpacing?: number | string;
187
+ bottomSpacing?: number | string;
188
+ show_launcher?: boolean | null;
189
+ overrides?: {
190
+ header_avatar?: string | null;
191
+ agent_avatar?: string | null;
192
+ header_title?: string | null;
193
+ };
115
194
  }
116
195
  /**
117
196
  * RobylonChatbot instance interface
@@ -134,4 +213,4 @@ declare const _default: {
134
213
  getState: () => string;
135
214
  };
136
215
 
137
- export { RobylonChatbot as Chatbot, type ChatbotConfig, ChatbotInterfaceType, type ChatbotState, LauncherType, _default as RobylonChatbot, type WidgetInterfaceProperties, WidgetPositionEnums, useChatbot };
216
+ export { MemoizedRobylonChatbot as Chatbot, type ChatbotConfig, ChatbotInterfaceType, type ChatbotRef, type ChatbotState, ConditionType, type ContentDisplayAttribute, DisplayAttributesType, LauncherType, type LogicalConditionAttribute, LogicalConditionType, type ProactiveMessage, ProactiveSendTimeType, _default as RobylonChatbot, type WidgetInterfaceProperties, WidgetPositionEnums, useChatbot };