@cometchat/calls-sdk-react-native 5.0.0-beta.9 → 5.0.1

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.
@@ -23,7 +23,6 @@ public class MyAppPackage implements ReactPackage {
23
23
 
24
24
  modules.add(new AudioModeModule(reactContext));
25
25
  modules.add(new KeepAwakeModule(reactContext));
26
- modules.add(new ToastModule(reactContext));
27
26
 
28
27
  if (AudioModeModule.useConnectionService()) {
29
28
  modules.add(new RNConnectionService(reactContext));
package/dist/index.d.mts CHANGED
@@ -2,7 +2,7 @@ import * as v from "valibot";
2
2
  import * as zustand0 from "zustand";
3
3
  import * as zustand_middleware0 from "zustand/middleware";
4
4
  import React from "react";
5
- import JitsiMeetJS from "lib-jitsi-meet";
5
+ import JitsiMeetJS from "@cometchat/calls-lib-webrtc";
6
6
  import { AppStateStatus } from "react-native";
7
7
 
8
8
  //#region calls-sdk-core/event-listeners/onTrack.d.ts
@@ -51,6 +51,9 @@ declare function waitForStoreState<T>(store: {
51
51
  subscribe: (listener: (state: T) => void) => () => void;
52
52
  }, predicate: (state: T) => boolean, timeoutMs?: number): Promise<void>;
53
53
  //#endregion
54
+ //#region calls-sdk-core/utils/connection-error.d.ts
55
+ declare function isFatalConnectionError(error: ConnectionError): boolean;
56
+ //#endregion
54
57
  //#region calls-sdk-core/utils/constants.d.ts
55
58
  declare const MIN_ASPECT_RATIO: number;
56
59
  declare const MAX_ASPECT_RATIO: number;
@@ -89,6 +92,7 @@ declare const VIDEO_PAUSE_AUTHORITY: {
89
92
  };
90
93
  declare const CONFERENCE_COMMANDS: {
91
94
  userInfo: string;
95
+ initialConfig: string;
92
96
  };
93
97
  declare const VIDEO_QUALITY_LEVELS: {
94
98
  ULTRA: number;
@@ -111,6 +115,7 @@ declare const EVENT_LISTENER_METHODS: {
111
115
  readonly onConnectionLost: "onConnectionLost";
112
116
  readonly onConnectionRestored: "onConnectionRestored";
113
117
  readonly onConnectionClosed: "onConnectionClosed";
118
+ readonly onConnectionFailed: "onConnectionFailed";
114
119
  readonly onSessionTimedOut: "onSessionTimedOut";
115
120
  };
116
121
  readonly MediaEventsListener: {
@@ -180,6 +185,7 @@ declare const EVENT_LISTENER_METHODS_WEB: {
180
185
  readonly onConnectionLost: "onConnectionLost";
181
186
  readonly onConnectionRestored: "onConnectionRestored";
182
187
  readonly onConnectionClosed: "onConnectionClosed";
188
+ readonly onConnectionFailed: "onConnectionFailed";
183
189
  readonly onSessionTimedOut: "onSessionTimedOut";
184
190
  };
185
191
  readonly ParticipantEventsListner: {
@@ -255,6 +261,7 @@ declare const EVENT_LISTENER_METHODS_MOBILE: {
255
261
  readonly onConnectionLost: "onConnectionLost";
256
262
  readonly onConnectionRestored: "onConnectionRestored";
257
263
  readonly onConnectionClosed: "onConnectionClosed";
264
+ readonly onConnectionFailed: "onConnectionFailed";
258
265
  readonly onSessionTimedOut: "onSessionTimedOut";
259
266
  };
260
267
  readonly ParticipantEventsListner: {
@@ -338,7 +345,8 @@ type BaseState = {
338
345
  chatButtonUnreadCount: number;
339
346
  enableNoiseReduction: boolean;
340
347
  sdkPlatform: SDKPlatform;
341
- webOSName?: WebOSName;
348
+ platformVersion?: string | number;
349
+ userAgent?: string;
342
350
  previewVideoTrack?: any;
343
351
  isMobileBrowser: boolean;
344
352
  mainAreaDimension: {
@@ -491,7 +499,16 @@ type ConfigStateWeb = {
491
499
  audioInputDeviceId?: string;
492
500
  audioOutputDeviceId?: string;
493
501
  videoInputDeviceId?: string;
502
+ hideScreenSharingButton: boolean;
494
503
  hideVirtualBackgroundButton: boolean;
504
+ /**
505
+ * @unstable This API may change or be removed in a future release.
506
+ * When enabled, the SDK renders only remote audio elements without any
507
+ * visual UI (no video tiles, controls, or overlays). This allows the
508
+ * host app to provide its own custom UI while the SDK handles the
509
+ * underlying call connection and audio playback.
510
+ */
511
+ unstable_renderAudioOnly: boolean;
495
512
  };
496
513
  type ConfigStateBoth = {
497
514
  sessionType: SessionType;
@@ -509,7 +526,6 @@ type ConfigStateBoth = {
509
526
  hideToggleVideoButton: boolean;
510
527
  hideParticipantListButton: boolean;
511
528
  hideChatButton: boolean;
512
- hideScreenSharingButton: boolean;
513
529
  hideSessionTimer: boolean;
514
530
  hideNetworkIndicator: boolean;
515
531
  hideRecordingStatusIndicator: boolean;
@@ -669,7 +685,7 @@ type InternalSetting = v.InferOutput<typeof InternalSettingSchema>;
669
685
  //#region calls-sdk-core/store/connection.d.ts
670
686
  type ConnectionState = {
671
687
  connection: any;
672
- error: any;
688
+ error: ConnectionError | undefined;
673
689
  timeEstablished: number | undefined;
674
690
  jwt?: string;
675
691
  connectionConfig?: InternalSetting['settings']['connectionConfig'];
@@ -678,7 +694,7 @@ type ConnectionState = {
678
694
  type Actions$2 = {
679
695
  connectionWillConnect: (connection: any) => void;
680
696
  connectionEstablished: (connection: any) => void;
681
- connectionFailed: (error: any) => void;
697
+ connectionFailed: (error: ConnectionError) => void;
682
698
  disconnect: () => Promise<void>;
683
699
  reset: () => void;
684
700
  };
@@ -773,13 +789,16 @@ interface ToastState {
773
789
  toasts: ToastItem[];
774
790
  }
775
791
  interface ToastActions {
776
- addToast: (toast: Omit<ToastItem, 'id' | 'createdAt'>) => string;
792
+ addToast: (toast: Omit<ToastItem, 'id' | 'createdAt'> & {
793
+ id?: string;
794
+ }) => string;
777
795
  removeToast: (id: string) => void;
778
796
  clearAll: () => void;
779
797
  reset: () => void;
780
798
  }
781
799
  declare const useToastStore: zustand0.UseBoundStore<zustand0.StoreApi<ToastState & ToastActions>>;
782
800
  declare function showToast(params: {
801
+ id?: string;
783
802
  message: string;
784
803
  type?: NotificationType;
785
804
  duration?: number;
@@ -788,11 +807,13 @@ declare function showToast(params: {
788
807
  }): string;
789
808
  //#endregion
790
809
  //#region calls-sdk-core/store/tracks.d.ts
810
+ type StreamingStatus = 'active' | 'interrupted' | 'restoring' | 'inactive';
791
811
  type Track = {
792
812
  local: boolean;
793
813
  mediaType: MediaType;
794
814
  muted: number;
795
815
  pid: string;
816
+ streamingStatus: StreamingStatus;
796
817
  videoType: 'desktop' | 'camera' | null;
797
818
  originalTrack?: any;
798
819
  };
@@ -852,12 +873,15 @@ declare const useEnableParticipantContextMenu: () => boolean;
852
873
  declare const useRaisedHandTimestamp: (participantId?: string, type?: Participant$2["type"]) => number | undefined;
853
874
  declare const useIsParticipantPinned: (participantId: string, type: Participant$2["type"]) => boolean;
854
875
  declare const useOrderedParticipants: () => Participant$2[];
855
- declare const useNonRecoverableError: () => any;
876
+ declare const useNonRecoverableError: () => string | undefined;
856
877
  declare const useIsSwitchCameraEnabledBrowser: () => any;
857
878
  declare const useIsAudioInputSelectionSupported: () => boolean;
858
879
  declare const useIsVideoInputSelectionSupported: () => boolean;
859
880
  declare const useShouldMirrorLocalVideo: () => boolean;
860
881
  //#endregion
882
+ //#region calls-sdk-core/store/utils/reset.d.ts
883
+ declare function resetAllStores(): void;
884
+ //#endregion
861
885
  //#region calls-sdk-core/store/utils/switch-camera.d.ts
862
886
  declare const switchCamera: () => void;
863
887
  //#endregion
@@ -1021,7 +1045,6 @@ type ValueOf<T> = T[keyof T];
1021
1045
  type ParticipantRole = ValueOf<typeof PARTICIPANT_ROLE>;
1022
1046
  type NotificationType = 'info' | 'success' | 'warning' | 'error';
1023
1047
  type SDKPlatform = ValueOf<typeof SDK_PLATFORM>;
1024
- type WebOSName = 'android' | 'ios' | 'macos' | 'windows' | 'linux' | 'unknown';
1025
1048
  interface ITrackOptions {
1026
1049
  cameraDeviceId?: string | null;
1027
1050
  constraints?: {
@@ -1043,6 +1066,12 @@ interface ITrackOptions {
1043
1066
  }
1044
1067
  type Prettify<T> = { [K in keyof T]: T[K] } & unknown;
1045
1068
  type Paths<T> = T extends object ? { [K in keyof T]: T[K] extends object ? `${K & string}.${Paths<T[K]>}` : `${K & string}` }[keyof T] : never;
1069
+ type ConnectionError = {
1070
+ name: string;
1071
+ message?: string;
1072
+ details?: Record<string, unknown>;
1073
+ recoverable?: boolean;
1074
+ };
1046
1075
  //#endregion
1047
1076
  //#region calls-sdk-core/types/union-to-array.d.ts
1048
1077
  type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends ((k: infer I) => void) ? I : never;
@@ -1060,8 +1089,9 @@ declare const ParticipantSchema: v.ObjectSchema<{
1060
1089
  }, undefined>;
1061
1090
  type Participant$1 = v.InferOutput<typeof ParticipantSchema>;
1062
1091
  type _SDKEvents = { [k in ValueOf<typeof EVENT_LISTENER_METHODS.SessionStatusListener>]: () => void } & { [k in ValueOf<typeof EVENT_LISTENER_METHODS.MediaEventsListener>]: () => void } & { [k in ValueOf<typeof EVENT_LISTENER_METHODS.ParticipantEventsListner>]: (payload: Participant$1) => void } & { [k in ValueOf<typeof EVENT_LISTENER_METHODS.ButtonClickListener>]: () => void };
1063
- type SDKEvents = Omit<_SDKEvents, 'onParticipantListChanged'> & {
1092
+ type SDKEvents = Omit<_SDKEvents, 'onParticipantListChanged' | 'onConnectionFailed'> & {
1064
1093
  onCallLayoutChanged: (payload: Layout) => void;
1094
+ onConnectionFailed: (payload: ConnectionError) => void;
1065
1095
  onParticipantListVisible: () => void;
1066
1096
  onParticipantListHidden: () => void;
1067
1097
  onParticipantListChanged: (payload: Participant$1[]) => void;
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- import * as zustand1 from "zustand";
1
+ import * as zustand0 from "zustand";
2
2
  import * as zustand_middleware0 from "zustand/middleware";
3
3
  import { AppStateStatus } from "react-native";
4
- import JitsiMeetJS from "lib-jitsi-meet";
4
+ import JitsiMeetJS from "@cometchat/calls-lib-webrtc";
5
5
  import * as v from "valibot";
6
6
  import React from "react";
7
7
 
@@ -51,6 +51,9 @@ declare function waitForStoreState<T>(store: {
51
51
  subscribe: (listener: (state: T) => void) => () => void;
52
52
  }, predicate: (state: T) => boolean, timeoutMs?: number): Promise<void>;
53
53
  //#endregion
54
+ //#region calls-sdk-core/utils/connection-error.d.ts
55
+ declare function isFatalConnectionError(error: ConnectionError): boolean;
56
+ //#endregion
54
57
  //#region calls-sdk-core/utils/constants.d.ts
55
58
  declare const MIN_ASPECT_RATIO: number;
56
59
  declare const MAX_ASPECT_RATIO: number;
@@ -89,6 +92,7 @@ declare const VIDEO_PAUSE_AUTHORITY: {
89
92
  };
90
93
  declare const CONFERENCE_COMMANDS: {
91
94
  userInfo: string;
95
+ initialConfig: string;
92
96
  };
93
97
  declare const VIDEO_QUALITY_LEVELS: {
94
98
  ULTRA: number;
@@ -111,6 +115,7 @@ declare const EVENT_LISTENER_METHODS: {
111
115
  readonly onConnectionLost: "onConnectionLost";
112
116
  readonly onConnectionRestored: "onConnectionRestored";
113
117
  readonly onConnectionClosed: "onConnectionClosed";
118
+ readonly onConnectionFailed: "onConnectionFailed";
114
119
  readonly onSessionTimedOut: "onSessionTimedOut";
115
120
  };
116
121
  readonly MediaEventsListener: {
@@ -180,6 +185,7 @@ declare const EVENT_LISTENER_METHODS_WEB: {
180
185
  readonly onConnectionLost: "onConnectionLost";
181
186
  readonly onConnectionRestored: "onConnectionRestored";
182
187
  readonly onConnectionClosed: "onConnectionClosed";
188
+ readonly onConnectionFailed: "onConnectionFailed";
183
189
  readonly onSessionTimedOut: "onSessionTimedOut";
184
190
  };
185
191
  readonly ParticipantEventsListner: {
@@ -255,6 +261,7 @@ declare const EVENT_LISTENER_METHODS_MOBILE: {
255
261
  readonly onConnectionLost: "onConnectionLost";
256
262
  readonly onConnectionRestored: "onConnectionRestored";
257
263
  readonly onConnectionClosed: "onConnectionClosed";
264
+ readonly onConnectionFailed: "onConnectionFailed";
258
265
  readonly onSessionTimedOut: "onSessionTimedOut";
259
266
  };
260
267
  readonly ParticipantEventsListner: {
@@ -338,7 +345,8 @@ type BaseState = {
338
345
  chatButtonUnreadCount: number;
339
346
  enableNoiseReduction: boolean;
340
347
  sdkPlatform: SDKPlatform;
341
- webOSName?: WebOSName;
348
+ platformVersion?: string | number;
349
+ userAgent?: string;
342
350
  previewVideoTrack?: any;
343
351
  isMobileBrowser: boolean;
344
352
  mainAreaDimension: {
@@ -373,7 +381,7 @@ type Actions$5 = {
373
381
  isMobileSDK: () => boolean;
374
382
  isMobile: () => boolean;
375
383
  };
376
- declare const useBaseStore: zustand1.UseBoundStore<Omit<Omit<zustand1.StoreApi<BaseState & Actions$5>, "subscribe"> & {
384
+ declare const useBaseStore: zustand0.UseBoundStore<Omit<Omit<zustand0.StoreApi<BaseState & Actions$5>, "subscribe"> & {
377
385
  subscribe: {
378
386
  (listener: (selectedState: BaseState & Actions$5, previousSelectedState: BaseState & Actions$5) => void): () => void;
379
387
  <U>(selector: (state: BaseState & Actions$5) => U, listener: (selectedState: U, previousSelectedState: U) => void, options?: {
@@ -453,7 +461,7 @@ type Actions$4 = {
453
461
  endConference: () => Promise<void>;
454
462
  stopRecording: () => Promise<void>;
455
463
  };
456
- declare const useConferenceStore: zustand1.UseBoundStore<Omit<zustand1.StoreApi<ConferenceState & Actions$4>, "subscribe"> & {
464
+ declare const useConferenceStore: zustand0.UseBoundStore<Omit<zustand0.StoreApi<ConferenceState & Actions$4>, "subscribe"> & {
457
465
  subscribe: {
458
466
  (listener: (selectedState: ConferenceState & Actions$4, previousSelectedState: ConferenceState & Actions$4) => void): () => void;
459
467
  <U>(selector: (state: ConferenceState & Actions$4) => U, listener: (selectedState: U, previousSelectedState: U) => void, options?: {
@@ -491,7 +499,16 @@ type ConfigStateWeb = {
491
499
  audioInputDeviceId?: string;
492
500
  audioOutputDeviceId?: string;
493
501
  videoInputDeviceId?: string;
502
+ hideScreenSharingButton: boolean;
494
503
  hideVirtualBackgroundButton: boolean;
504
+ /**
505
+ * @unstable This API may change or be removed in a future release.
506
+ * When enabled, the SDK renders only remote audio elements without any
507
+ * visual UI (no video tiles, controls, or overlays). This allows the
508
+ * host app to provide its own custom UI while the SDK handles the
509
+ * underlying call connection and audio playback.
510
+ */
511
+ unstable_renderAudioOnly: boolean;
495
512
  };
496
513
  type ConfigStateBoth = {
497
514
  sessionType: SessionType;
@@ -509,7 +526,6 @@ type ConfigStateBoth = {
509
526
  hideToggleVideoButton: boolean;
510
527
  hideParticipantListButton: boolean;
511
528
  hideChatButton: boolean;
512
- hideScreenSharingButton: boolean;
513
529
  hideSessionTimer: boolean;
514
530
  hideNetworkIndicator: boolean;
515
531
  hideRecordingStatusIndicator: boolean;
@@ -530,7 +546,7 @@ type ConfigState = ConfigStateInternal & ConfigStateMobile & ConfigStateWeb & Co
530
546
  type Actions$3 = {
531
547
  reset: () => void;
532
548
  };
533
- declare const useConfigStore: zustand1.UseBoundStore<Omit<zustand1.StoreApi<ConfigStateInternal & ConfigStateMobile & ConfigStateWeb & ConfigStateBoth & Actions$3>, "subscribe"> & {
549
+ declare const useConfigStore: zustand0.UseBoundStore<Omit<zustand0.StoreApi<ConfigStateInternal & ConfigStateMobile & ConfigStateWeb & ConfigStateBoth & Actions$3>, "subscribe"> & {
534
550
  subscribe: {
535
551
  (listener: (selectedState: ConfigStateInternal & ConfigStateMobile & ConfigStateWeb & ConfigStateBoth & Actions$3, previousSelectedState: ConfigStateInternal & ConfigStateMobile & ConfigStateWeb & ConfigStateBoth & Actions$3) => void): () => void;
536
552
  <U>(selector: (state: ConfigStateInternal & ConfigStateMobile & ConfigStateWeb & ConfigStateBoth & Actions$3) => U, listener: (selectedState: U, previousSelectedState: U) => void, options?: {
@@ -669,7 +685,7 @@ type InternalSetting = v.InferOutput<typeof InternalSettingSchema>;
669
685
  //#region calls-sdk-core/store/connection.d.ts
670
686
  type ConnectionState = {
671
687
  connection: any;
672
- error: any;
688
+ error: ConnectionError | undefined;
673
689
  timeEstablished: number | undefined;
674
690
  jwt?: string;
675
691
  connectionConfig?: InternalSetting['settings']['connectionConfig'];
@@ -678,11 +694,11 @@ type ConnectionState = {
678
694
  type Actions$2 = {
679
695
  connectionWillConnect: (connection: any) => void;
680
696
  connectionEstablished: (connection: any) => void;
681
- connectionFailed: (error: any) => void;
697
+ connectionFailed: (error: ConnectionError) => void;
682
698
  disconnect: () => Promise<void>;
683
699
  reset: () => void;
684
700
  };
685
- declare const useConnectionStore: zustand1.UseBoundStore<Omit<zustand1.StoreApi<ConnectionState & Actions$2>, "subscribe"> & {
701
+ declare const useConnectionStore: zustand0.UseBoundStore<Omit<zustand0.StoreApi<ConnectionState & Actions$2>, "subscribe"> & {
686
702
  subscribe: {
687
703
  (listener: (selectedState: ConnectionState & Actions$2, previousSelectedState: ConnectionState & Actions$2) => void): () => void;
688
704
  <U>(selector: (state: ConnectionState & Actions$2) => U, listener: (selectedState: U, previousSelectedState: U) => void, options?: {
@@ -733,7 +749,7 @@ type Actions$1 = {
733
749
  getParticipantById: (pid: string) => HumanParticipant | undefined;
734
750
  reset: () => void;
735
751
  };
736
- declare const useParticipantStore: zustand1.UseBoundStore<Omit<zustand1.StoreApi<ParticipantsState & Actions$1>, "subscribe"> & {
752
+ declare const useParticipantStore: zustand0.UseBoundStore<Omit<zustand0.StoreApi<ParticipantsState & Actions$1>, "subscribe"> & {
737
753
  subscribe: {
738
754
  (listener: (selectedState: ParticipantsState & Actions$1, previousSelectedState: ParticipantsState & Actions$1) => void): () => void;
739
755
  <U>(selector: (state: ParticipantsState & Actions$1) => U, listener: (selectedState: U, previousSelectedState: U) => void, options?: {
@@ -773,13 +789,16 @@ interface ToastState {
773
789
  toasts: ToastItem[];
774
790
  }
775
791
  interface ToastActions {
776
- addToast: (toast: Omit<ToastItem, 'id' | 'createdAt'>) => string;
792
+ addToast: (toast: Omit<ToastItem, 'id' | 'createdAt'> & {
793
+ id?: string;
794
+ }) => string;
777
795
  removeToast: (id: string) => void;
778
796
  clearAll: () => void;
779
797
  reset: () => void;
780
798
  }
781
- declare const useToastStore: zustand1.UseBoundStore<zustand1.StoreApi<ToastState & ToastActions>>;
799
+ declare const useToastStore: zustand0.UseBoundStore<zustand0.StoreApi<ToastState & ToastActions>>;
782
800
  declare function showToast(params: {
801
+ id?: string;
783
802
  message: string;
784
803
  type?: NotificationType;
785
804
  duration?: number;
@@ -788,11 +807,13 @@ declare function showToast(params: {
788
807
  }): string;
789
808
  //#endregion
790
809
  //#region calls-sdk-core/store/tracks.d.ts
810
+ type StreamingStatus = 'active' | 'interrupted' | 'restoring' | 'inactive';
791
811
  type Track = {
792
812
  local: boolean;
793
813
  mediaType: MediaType;
794
814
  muted: number;
795
815
  pid: string;
816
+ streamingStatus: StreamingStatus;
796
817
  videoType: 'desktop' | 'camera' | null;
797
818
  originalTrack?: any;
798
819
  };
@@ -811,7 +832,7 @@ type Actions = {
811
832
  updateTrack: (originalTrack: any, updatedTrack: Partial<Track>) => void;
812
833
  updateLocalTrack: (mediaType: MediaType, updatedTrack: Partial<Track>) => void;
813
834
  };
814
- declare const useTracksStore: zustand1.UseBoundStore<Omit<zustand1.StoreApi<TracksState & Actions>, "subscribe"> & {
835
+ declare const useTracksStore: zustand0.UseBoundStore<Omit<zustand0.StoreApi<TracksState & Actions>, "subscribe"> & {
815
836
  subscribe: {
816
837
  (listener: (selectedState: TracksState & Actions, previousSelectedState: TracksState & Actions) => void): () => void;
817
838
  <U>(selector: (state: TracksState & Actions) => U, listener: (selectedState: U, previousSelectedState: U) => void, options?: {
@@ -852,12 +873,15 @@ declare const useEnableParticipantContextMenu: () => boolean;
852
873
  declare const useRaisedHandTimestamp: (participantId?: string, type?: Participant$2["type"]) => number | undefined;
853
874
  declare const useIsParticipantPinned: (participantId: string, type: Participant$2["type"]) => boolean;
854
875
  declare const useOrderedParticipants: () => Participant$2[];
855
- declare const useNonRecoverableError: () => any;
876
+ declare const useNonRecoverableError: () => string | undefined;
856
877
  declare const useIsSwitchCameraEnabledBrowser: () => any;
857
878
  declare const useIsAudioInputSelectionSupported: () => boolean;
858
879
  declare const useIsVideoInputSelectionSupported: () => boolean;
859
880
  declare const useShouldMirrorLocalVideo: () => boolean;
860
881
  //#endregion
882
+ //#region calls-sdk-core/store/utils/reset.d.ts
883
+ declare function resetAllStores(): void;
884
+ //#endregion
861
885
  //#region calls-sdk-core/store/utils/switch-camera.d.ts
862
886
  declare const switchCamera: () => void;
863
887
  //#endregion
@@ -1021,7 +1045,6 @@ type ValueOf<T> = T[keyof T];
1021
1045
  type ParticipantRole = ValueOf<typeof PARTICIPANT_ROLE>;
1022
1046
  type NotificationType = 'info' | 'success' | 'warning' | 'error';
1023
1047
  type SDKPlatform = ValueOf<typeof SDK_PLATFORM>;
1024
- type WebOSName = 'android' | 'ios' | 'macos' | 'windows' | 'linux' | 'unknown';
1025
1048
  interface ITrackOptions {
1026
1049
  cameraDeviceId?: string | null;
1027
1050
  constraints?: {
@@ -1043,6 +1066,12 @@ interface ITrackOptions {
1043
1066
  }
1044
1067
  type Prettify<T> = { [K in keyof T]: T[K] } & unknown;
1045
1068
  type Paths<T> = T extends object ? { [K in keyof T]: T[K] extends object ? `${K & string}.${Paths<T[K]>}` : `${K & string}` }[keyof T] : never;
1069
+ type ConnectionError = {
1070
+ name: string;
1071
+ message?: string;
1072
+ details?: Record<string, unknown>;
1073
+ recoverable?: boolean;
1074
+ };
1046
1075
  //#endregion
1047
1076
  //#region calls-sdk-core/types/union-to-array.d.ts
1048
1077
  type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends ((k: infer I) => void) ? I : never;
@@ -1060,8 +1089,9 @@ declare const ParticipantSchema: v.ObjectSchema<{
1060
1089
  }, undefined>;
1061
1090
  type Participant$1 = v.InferOutput<typeof ParticipantSchema>;
1062
1091
  type _SDKEvents = { [k in ValueOf<typeof EVENT_LISTENER_METHODS.SessionStatusListener>]: () => void } & { [k in ValueOf<typeof EVENT_LISTENER_METHODS.MediaEventsListener>]: () => void } & { [k in ValueOf<typeof EVENT_LISTENER_METHODS.ParticipantEventsListner>]: (payload: Participant$1) => void } & { [k in ValueOf<typeof EVENT_LISTENER_METHODS.ButtonClickListener>]: () => void };
1063
- type SDKEvents = Omit<_SDKEvents, 'onParticipantListChanged'> & {
1092
+ type SDKEvents = Omit<_SDKEvents, 'onParticipantListChanged' | 'onConnectionFailed'> & {
1064
1093
  onCallLayoutChanged: (payload: Layout) => void;
1094
+ onConnectionFailed: (payload: ConnectionError) => void;
1065
1095
  onParticipantListVisible: () => void;
1066
1096
  onParticipantListHidden: () => void;
1067
1097
  onParticipantListChanged: (payload: Participant$1[]) => void;
@@ -1303,7 +1333,7 @@ interface TranslationState {
1303
1333
  translations: Record<string, typeof __json_default_export>;
1304
1334
  currentLocale: CometChatSupportedLocale | Omit<string, CometChatSupportedLocale>;
1305
1335
  }
1306
- declare const useTranslationStore: zustand1.UseBoundStore<Omit<zustand1.StoreApi<Omit<TranslationState, "reset" | "setLocale"> & {
1336
+ declare const useTranslationStore: zustand0.UseBoundStore<Omit<zustand0.StoreApi<Omit<TranslationState, "reset" | "setLocale"> & {
1307
1337
  reset: () => void;
1308
1338
  setLocale: (locale: CometChatSupportedLocale) => void;
1309
1339
  }>, "subscribe"> & {