@yonus_amire01/chat 0.1.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.
Files changed (222) hide show
  1. package/README.md +127 -0
  2. package/dist/index.cjs +6 -0
  3. package/dist/index.cjs.map +1 -0
  4. package/dist/index.mjs +9360 -0
  5. package/dist/index.mjs.map +1 -0
  6. package/dist/style.css +1 -0
  7. package/dist/types/adapter/HostAdapter.d.ts +13 -0
  8. package/dist/types/adapter/HostAdapter.d.ts.map +1 -0
  9. package/dist/types/adapter/PushPort.d.ts +10 -0
  10. package/dist/types/adapter/PushPort.d.ts.map +1 -0
  11. package/dist/types/adapter/index.d.ts +7 -0
  12. package/dist/types/adapter/index.d.ts.map +1 -0
  13. package/dist/types/adapter/mock/MockCallAdapter.d.ts +14 -0
  14. package/dist/types/adapter/mock/MockCallAdapter.d.ts.map +1 -0
  15. package/dist/types/adapter/mock/MockChatActionAdapter.d.ts +9 -0
  16. package/dist/types/adapter/mock/MockChatActionAdapter.d.ts.map +1 -0
  17. package/dist/types/adapter/mock/MockChatAdapter.d.ts +7 -0
  18. package/dist/types/adapter/mock/MockChatAdapter.d.ts.map +1 -0
  19. package/dist/types/adapter/mock/MockMedicationAdapter.d.ts +7 -0
  20. package/dist/types/adapter/mock/MockMedicationAdapter.d.ts.map +1 -0
  21. package/dist/types/adapter/mock/MockServiceAdapter.d.ts +6 -0
  22. package/dist/types/adapter/mock/MockServiceAdapter.d.ts.map +1 -0
  23. package/dist/types/adapter/mock/createMockAdapter.d.ts +13 -0
  24. package/dist/types/adapter/mock/createMockAdapter.d.ts.map +1 -0
  25. package/dist/types/adapter/mock/index.d.ts +12 -0
  26. package/dist/types/adapter/mock/index.d.ts.map +1 -0
  27. package/dist/types/adapter/ports/CallAdapter.d.ts +36 -0
  28. package/dist/types/adapter/ports/CallAdapter.d.ts.map +1 -0
  29. package/dist/types/adapter/ports/ChatActionAdapter.d.ts +17 -0
  30. package/dist/types/adapter/ports/ChatActionAdapter.d.ts.map +1 -0
  31. package/dist/types/adapter/ports/ChatAdapter.d.ts +22 -0
  32. package/dist/types/adapter/ports/ChatAdapter.d.ts.map +1 -0
  33. package/dist/types/adapter/ports/MedicationAdapter.d.ts +6 -0
  34. package/dist/types/adapter/ports/MedicationAdapter.d.ts.map +1 -0
  35. package/dist/types/adapter/ports/ServiceAdapter.d.ts +16 -0
  36. package/dist/types/adapter/ports/ServiceAdapter.d.ts.map +1 -0
  37. package/dist/types/components/ChatPage.vue.d.ts +8 -0
  38. package/dist/types/components/ChatPage.vue.d.ts.map +1 -0
  39. package/dist/types/components/call/CallBoard.vue.d.ts +154 -0
  40. package/dist/types/components/call/CallBoard.vue.d.ts.map +1 -0
  41. package/dist/types/components/call/CallMemberDisplay.vue.d.ts +57 -0
  42. package/dist/types/components/call/CallMemberDisplay.vue.d.ts.map +1 -0
  43. package/dist/types/components/call/CallPageOverlay.vue.d.ts +1365 -0
  44. package/dist/types/components/call/CallPageOverlay.vue.d.ts.map +1 -0
  45. package/dist/types/components/call/paint-board/BoardColorPicker.vue.d.ts +41 -0
  46. package/dist/types/components/call/paint-board/BoardColorPicker.vue.d.ts.map +1 -0
  47. package/dist/types/components/call/paint-board/BrushSizeSlider.vue.d.ts +48 -0
  48. package/dist/types/components/call/paint-board/BrushSizeSlider.vue.d.ts.map +1 -0
  49. package/dist/types/components/call/paint-board/CallPaintBoard.vue.d.ts +127 -0
  50. package/dist/types/components/call/paint-board/CallPaintBoard.vue.d.ts.map +1 -0
  51. package/dist/types/components/chat/ChatBubble.vue.d.ts +12236 -0
  52. package/dist/types/components/chat/ChatBubble.vue.d.ts.map +1 -0
  53. package/dist/types/components/chat/ChatInput.vue.d.ts +2477 -0
  54. package/dist/types/components/chat/ChatInput.vue.d.ts.map +1 -0
  55. package/dist/types/components/chat/ChatMessages.vue.d.ts +13873 -0
  56. package/dist/types/components/chat/ChatMessages.vue.d.ts.map +1 -0
  57. package/dist/types/components/chat/ChatPageBar.vue.d.ts +1204 -0
  58. package/dist/types/components/chat/ChatPageBar.vue.d.ts.map +1 -0
  59. package/dist/types/components/chat/ChatProfileOverview.vue.d.ts +327 -0
  60. package/dist/types/components/chat/ChatProfileOverview.vue.d.ts.map +1 -0
  61. package/dist/types/components/chat/ChatView.vue.d.ts +4 -0
  62. package/dist/types/components/chat/ChatView.vue.d.ts.map +1 -0
  63. package/dist/types/components/chat/PatientReferral.vue.d.ts +33 -0
  64. package/dist/types/components/chat/PatientReferral.vue.d.ts.map +1 -0
  65. package/dist/types/components/chat/chat-bubbles/BubbleOptions.vue.d.ts +53 -0
  66. package/dist/types/components/chat/chat-bubbles/BubbleOptions.vue.d.ts.map +1 -0
  67. package/dist/types/components/chat/chat-bubbles/BubbleVideo.vue.d.ts +103 -0
  68. package/dist/types/components/chat/chat-bubbles/BubbleVideo.vue.d.ts.map +1 -0
  69. package/dist/types/components/chat/chat-bubbles/FileDisplay.vue.d.ts +170 -0
  70. package/dist/types/components/chat/chat-bubbles/FileDisplay.vue.d.ts.map +1 -0
  71. package/dist/types/components/chat/chat-bubbles/ImageGroupDisplay.vue.d.ts +74 -0
  72. package/dist/types/components/chat/chat-bubbles/ImageGroupDisplay.vue.d.ts.map +1 -0
  73. package/dist/types/components/chat/chat-bubbles/RequestCard.vue.d.ts +11449 -0
  74. package/dist/types/components/chat/chat-bubbles/RequestCard.vue.d.ts.map +1 -0
  75. package/dist/types/components/chat/chat-bubbles/VoiceDisplay.vue.d.ts +107 -0
  76. package/dist/types/components/chat/chat-bubbles/VoiceDisplay.vue.d.ts.map +1 -0
  77. package/dist/types/components/chat/chat-bubbles/request-card/ProviderDisplay.vue.d.ts +56 -0
  78. package/dist/types/components/chat/chat-bubbles/request-card/ProviderDisplay.vue.d.ts.map +1 -0
  79. package/dist/types/components/chat/chat-input/AttachementFileDisplay.vue.d.ts +28 -0
  80. package/dist/types/components/chat/chat-input/AttachementFileDisplay.vue.d.ts.map +1 -0
  81. package/dist/types/components/chat/chat-input/InputAttachement.vue.d.ts +72 -0
  82. package/dist/types/components/chat/chat-input/InputAttachement.vue.d.ts.map +1 -0
  83. package/dist/types/components/chat/chat-input/PermissionPopup.vue.d.ts +15 -0
  84. package/dist/types/components/chat/chat-input/PermissionPopup.vue.d.ts.map +1 -0
  85. package/dist/types/components/chat/chat-input/VideoRecordDisplay.vue.d.ts +149 -0
  86. package/dist/types/components/chat/chat-input/VideoRecordDisplay.vue.d.ts.map +1 -0
  87. package/dist/types/components/chat/contact/ChatContactDisplay.vue.d.ts +85 -0
  88. package/dist/types/components/chat/contact/ChatContactDisplay.vue.d.ts.map +1 -0
  89. package/dist/types/components/chat/contact/ChatList.vue.d.ts +3111 -0
  90. package/dist/types/components/chat/contact/ChatList.vue.d.ts.map +1 -0
  91. package/dist/types/components/chat/contact/ChatListSearch.vue.d.ts +24 -0
  92. package/dist/types/components/chat/contact/ChatListSearch.vue.d.ts.map +1 -0
  93. package/dist/types/components/chat/contact/ContactAvatar.vue.d.ts +28 -0
  94. package/dist/types/components/chat/contact/ContactAvatar.vue.d.ts.map +1 -0
  95. package/dist/types/components/chat/medic-features/MedicDisplay.vue.d.ts +61 -0
  96. package/dist/types/components/chat/medic-features/MedicDisplay.vue.d.ts.map +1 -0
  97. package/dist/types/components/chat/medic-features/MedicSelector.vue.d.ts +1113 -0
  98. package/dist/types/components/chat/medic-features/MedicSelector.vue.d.ts.map +1 -0
  99. package/dist/types/components/chat/medic-features/MedicSelectorContent.vue.d.ts +1060 -0
  100. package/dist/types/components/chat/medic-features/MedicSelectorContent.vue.d.ts.map +1 -0
  101. package/dist/types/components/chat/medic-features/PrescribtionDisplay.vue.d.ts +1431 -0
  102. package/dist/types/components/chat/medic-features/PrescribtionDisplay.vue.d.ts.map +1 -0
  103. package/dist/types/components/chat/profile/FileDisplay.vue.d.ts +28 -0
  104. package/dist/types/components/chat/profile/FileDisplay.vue.d.ts.map +1 -0
  105. package/dist/types/components/general/FileFormatDisplay.vue.d.ts +60 -0
  106. package/dist/types/components/general/FileFormatDisplay.vue.d.ts.map +1 -0
  107. package/dist/types/components/general/LoadingStatus.vue.d.ts +59 -0
  108. package/dist/types/components/general/LoadingStatus.vue.d.ts.map +1 -0
  109. package/dist/types/components/general/NoDataDisplay.vue.d.ts +24 -0
  110. package/dist/types/components/general/NoDataDisplay.vue.d.ts.map +1 -0
  111. package/dist/types/components/general/SafeEmojiText.vue.d.ts +24 -0
  112. package/dist/types/components/general/SafeEmojiText.vue.d.ts.map +1 -0
  113. package/dist/types/components/global/BCarousel.vue.d.ts +48 -0
  114. package/dist/types/components/global/BCarousel.vue.d.ts.map +1 -0
  115. package/dist/types/composables/chat/useChatRecording.d.ts +74 -0
  116. package/dist/types/composables/chat/useChatRecording.d.ts.map +1 -0
  117. package/dist/types/composables/useAppPermissions.d.ts +25 -0
  118. package/dist/types/composables/useAppPermissions.d.ts.map +1 -0
  119. package/dist/types/composables/useAppToast.d.ts +6 -0
  120. package/dist/types/composables/useAppToast.d.ts.map +1 -0
  121. package/dist/types/composables/useClickOutside.d.ts +3 -0
  122. package/dist/types/composables/useClickOutside.d.ts.map +1 -0
  123. package/dist/types/composables/useDate.d.ts +24 -0
  124. package/dist/types/composables/useDate.d.ts.map +1 -0
  125. package/dist/types/composables/useDevice.d.ts +32 -0
  126. package/dist/types/composables/useDevice.d.ts.map +1 -0
  127. package/dist/types/composables/useLocale.d.ts +12 -0
  128. package/dist/types/composables/useLocale.d.ts.map +1 -0
  129. package/dist/types/composables/useTheme.d.ts +4 -0
  130. package/dist/types/composables/useTheme.d.ts.map +1 -0
  131. package/dist/types/composables/useValidation.d.ts +20 -0
  132. package/dist/types/composables/useValidation.d.ts.map +1 -0
  133. package/dist/types/composables/useWindowSize.d.ts +5 -0
  134. package/dist/types/composables/useWindowSize.d.ts.map +1 -0
  135. package/dist/types/directives/filePicker.d.ts +4 -0
  136. package/dist/types/directives/filePicker.d.ts.map +1 -0
  137. package/dist/types/directives/imagePicker.d.ts +4 -0
  138. package/dist/types/directives/imagePicker.d.ts.map +1 -0
  139. package/dist/types/directives/loading.d.ts +6 -0
  140. package/dist/types/directives/loading.d.ts.map +1 -0
  141. package/dist/types/index.d.ts +10 -0
  142. package/dist/types/index.d.ts.map +1 -0
  143. package/dist/types/install.d.ts +20 -0
  144. package/dist/types/install.d.ts.map +1 -0
  145. package/dist/types/mock/chat.seed.d.ts +20 -0
  146. package/dist/types/mock/chat.seed.d.ts.map +1 -0
  147. package/dist/types/mock/helpers.d.ts +3 -0
  148. package/dist/types/mock/helpers.d.ts.map +1 -0
  149. package/dist/types/mock/index.d.ts +5 -0
  150. package/dist/types/mock/index.d.ts.map +1 -0
  151. package/dist/types/mock/medication.seed.d.ts +4 -0
  152. package/dist/types/mock/medication.seed.d.ts.map +1 -0
  153. package/dist/types/mock/service.seed.d.ts +13 -0
  154. package/dist/types/mock/service.seed.d.ts.map +1 -0
  155. package/dist/types/nuxt-shims.d.ts +43 -0
  156. package/dist/types/nuxt-shims.d.ts.map +1 -0
  157. package/dist/types/prime-preset.d.ts +72 -0
  158. package/dist/types/prime-preset.d.ts.map +1 -0
  159. package/dist/types/stores/callStore.d.ts +518 -0
  160. package/dist/types/stores/callStore.d.ts.map +1 -0
  161. package/dist/types/stores/chatActionStore.d.ts +11303 -0
  162. package/dist/types/stores/chatActionStore.d.ts.map +1 -0
  163. package/dist/types/stores/chatStore.d.ts +2966 -0
  164. package/dist/types/stores/chatStore.d.ts.map +1 -0
  165. package/dist/types/stores/createStores.d.ts +19290 -0
  166. package/dist/types/stores/createStores.d.ts.map +1 -0
  167. package/dist/types/stores/medicationsStore.d.ts +3542 -0
  168. package/dist/types/stores/medicationsStore.d.ts.map +1 -0
  169. package/dist/types/stores/serviceStore.d.ts +953 -0
  170. package/dist/types/stores/serviceStore.d.ts.map +1 -0
  171. package/dist/types/themes/factory.d.ts +4 -0
  172. package/dist/types/themes/factory.d.ts.map +1 -0
  173. package/dist/types/types/address.d.ts +26 -0
  174. package/dist/types/types/address.d.ts.map +1 -0
  175. package/dist/types/types/calendar.d.ts +88 -0
  176. package/dist/types/types/calendar.d.ts.map +1 -0
  177. package/dist/types/types/call.d.ts +9 -0
  178. package/dist/types/types/call.d.ts.map +1 -0
  179. package/dist/types/types/chat.d.ts +71 -0
  180. package/dist/types/types/chat.d.ts.map +1 -0
  181. package/dist/types/types/clinic.d.ts +7 -0
  182. package/dist/types/types/clinic.d.ts.map +1 -0
  183. package/dist/types/types/components/chat-input.d.ts +4 -0
  184. package/dist/types/types/components/chat-input.d.ts.map +1 -0
  185. package/dist/types/types/components/input.d.ts +13 -0
  186. package/dist/types/types/components/input.d.ts.map +1 -0
  187. package/dist/types/types/components/menu-options.d.ts +7 -0
  188. package/dist/types/types/components/menu-options.d.ts.map +1 -0
  189. package/dist/types/types/components/menu.d.ts +5 -0
  190. package/dist/types/types/components/menu.d.ts.map +1 -0
  191. package/dist/types/types/components/modal.d.ts +17 -0
  192. package/dist/types/types/components/modal.d.ts.map +1 -0
  193. package/dist/types/types/components/nav-item.d.ts +11 -0
  194. package/dist/types/types/components/nav-item.d.ts.map +1 -0
  195. package/dist/types/types/components/nav-sub-item.d.ts +9 -0
  196. package/dist/types/types/components/nav-sub-item.d.ts.map +1 -0
  197. package/dist/types/types/components/popup.d.ts +5 -0
  198. package/dist/types/types/components/popup.d.ts.map +1 -0
  199. package/dist/types/types/components/select.d.ts +8 -0
  200. package/dist/types/types/components/select.d.ts.map +1 -0
  201. package/dist/types/types/components/toast.d.ts +5 -0
  202. package/dist/types/types/components/toast.d.ts.map +1 -0
  203. package/dist/types/types/env/runtimeConfig.d.ts +22 -0
  204. package/dist/types/types/invoice.d.ts +8 -0
  205. package/dist/types/types/invoice.d.ts.map +1 -0
  206. package/dist/types/types/medic.d.ts +6 -0
  207. package/dist/types/types/medic.d.ts.map +1 -0
  208. package/dist/types/types/medication.d.ts +25 -0
  209. package/dist/types/types/medication.d.ts.map +1 -0
  210. package/dist/types/types/notification.d.ts +10 -0
  211. package/dist/types/types/notification.d.ts.map +1 -0
  212. package/dist/types/types/service.d.ts +25 -0
  213. package/dist/types/types/service.d.ts.map +1 -0
  214. package/dist/types/types/story.d.ts +12 -0
  215. package/dist/types/types/story.d.ts.map +1 -0
  216. package/dist/types/types/theme.d.ts +26 -0
  217. package/dist/types/types/theme.d.ts.map +1 -0
  218. package/dist/types/utils/emojiParser.d.ts +2 -0
  219. package/dist/types/utils/emojiParser.d.ts.map +1 -0
  220. package/dist/types/utils/format.d.ts +52 -0
  221. package/dist/types/utils/format.d.ts.map +1 -0
  222. package/package.json +68 -0
@@ -0,0 +1,1204 @@
1
+ import { PropType } from 'vue';
2
+ import { Menu } from '../../types/components/menu';
3
+ import { Contact } from '../../types/chat';
4
+ import { Popup } from '../../types/components/popup';
5
+ import { MenuOption } from '../../types/components/menu-options';
6
+ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
7
+ contact: {
8
+ type: PropType<Contact | null>;
9
+ required: true;
10
+ };
11
+ options: {
12
+ type: PropType<MenuOption[]>;
13
+ default: () => any[];
14
+ required: true;
15
+ };
16
+ }>, {
17
+ t: import('../../nuxt-shims').I18nT;
18
+ copy: () => void;
19
+ selectedChat: import('vue').ComputedRef<Contact>;
20
+ callData: import('vue').ComputedRef<{
21
+ show: boolean;
22
+ duration: string;
23
+ }>;
24
+ isInCall: import('vue').ComputedRef<boolean>;
25
+ backToCall: () => void;
26
+ formatRelativeDate: (dateInput: string | Date) => string;
27
+ deleteMessages: () => void;
28
+ actions: import('vue').Ref<{
29
+ icon: string;
30
+ key: string;
31
+ }[], {
32
+ icon: string;
33
+ key: string;
34
+ }[] | {
35
+ icon: string;
36
+ key: string;
37
+ }[]>;
38
+ handleMenuAction: (key: string) => void;
39
+ handleAction: (key: "search" | "call") => void;
40
+ menuRef: import('vue').Ref<{
41
+ open: () => void;
42
+ close: () => void;
43
+ }, Menu | {
44
+ open: () => void;
45
+ close: () => void;
46
+ }>;
47
+ isSelectMode: import('vue').ComputedRef<boolean>;
48
+ goBack: () => void;
49
+ canDelete: import('vue').ComputedRef<boolean>;
50
+ closeMenu: () => void;
51
+ openProfile: () => void;
52
+ handleSelect: (key: string) => void;
53
+ menuMode: import('vue').Ref<"medic" | "options", "medic" | "options">;
54
+ initCall: () => void;
55
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("call" | "open-profile")[], "call" | "open-profile", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
56
+ contact: {
57
+ type: PropType<Contact | null>;
58
+ required: true;
59
+ };
60
+ options: {
61
+ type: PropType<MenuOption[]>;
62
+ default: () => any[];
63
+ required: true;
64
+ };
65
+ }>> & Readonly<{
66
+ onCall?: (...args: any[]) => any;
67
+ "onOpen-profile"?: (...args: any[]) => any;
68
+ }>, {
69
+ options: MenuOption[];
70
+ }, {}, {
71
+ ContactAvatar: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
72
+ contact: {
73
+ type: PropType<Contact>;
74
+ required: true;
75
+ };
76
+ showOnline: {
77
+ type: BooleanConstructor;
78
+ default: boolean;
79
+ };
80
+ }>, {
81
+ hasImage: any;
82
+ initials: any;
83
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
84
+ contact: {
85
+ type: PropType<Contact>;
86
+ required: true;
87
+ };
88
+ showOnline: {
89
+ type: BooleanConstructor;
90
+ default: boolean;
91
+ };
92
+ }>> & Readonly<{}>, {
93
+ showOnline: boolean;
94
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
95
+ MedicSelector: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
96
+ mode: {
97
+ type: PropType<"medic" | "options">;
98
+ default: string;
99
+ };
100
+ options: {
101
+ type: PropType<MenuOption[]>;
102
+ default: () => any[];
103
+ };
104
+ }>, {
105
+ isMobile: import('vue').ComputedRef<boolean>;
106
+ handleMobileClick: () => void;
107
+ displayOptions: import('vue').ComputedRef<MenuOption[]>;
108
+ popupRef: import('vue').Ref<{
109
+ open: () => void;
110
+ close: () => void;
111
+ }, Popup | {
112
+ open: () => void;
113
+ close: () => void;
114
+ }>;
115
+ menuRef: import('vue').Ref<{
116
+ open: () => void;
117
+ close: () => void;
118
+ }, Menu | {
119
+ open: () => void;
120
+ close: () => void;
121
+ }>;
122
+ closeAll: () => void;
123
+ t: import('../../nuxt-shims').I18nT;
124
+ internalMenuMode: import('vue').Ref<"medic" | "options", "medic" | "options">;
125
+ handleSelect: (key: string) => void;
126
+ resetMenuMode: () => void;
127
+ handleMenuState: (isOpen: boolean) => void;
128
+ isMenuOpenned: import('vue').Ref<boolean, boolean>;
129
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, "select"[], "select", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
130
+ mode: {
131
+ type: PropType<"medic" | "options">;
132
+ default: string;
133
+ };
134
+ options: {
135
+ type: PropType<MenuOption[]>;
136
+ default: () => any[];
137
+ };
138
+ }>> & Readonly<{
139
+ onSelect?: (...args: any[]) => any;
140
+ }>, {
141
+ options: MenuOption[];
142
+ mode: "medic" | "options";
143
+ }, {}, {
144
+ MedicSelectorContent: import('vue').DefineComponent<{}, {
145
+ t: import('../../nuxt-shims').I18nT;
146
+ isLoading: any;
147
+ isLoadingServices: any;
148
+ filterProps: (type: string) => {
149
+ color: string;
150
+ icon: string;
151
+ };
152
+ toggleSelect: (medic: import('../../types/service').Provider) => void;
153
+ selectMedic: () => void;
154
+ selectedExpertiseLabel: any;
155
+ filters: any;
156
+ searchText: any;
157
+ setFilter: (type: string) => void;
158
+ close: () => void;
159
+ providers: any;
160
+ buttonProps: any;
161
+ serviceStore: import('pinia').Store<"service", Pick<{
162
+ isLoading: import('vue').Ref<boolean, boolean>;
163
+ isLoadingServices: import('vue').Ref<boolean, boolean>;
164
+ currentResultPage: import('vue').Ref<number, number>;
165
+ searchText: import('vue').Ref<string, string>;
166
+ selectedServiceId: import('vue').Ref<string, string>;
167
+ providersPerPage: import('vue').Ref<number, number>;
168
+ hasProviderNextPage: import('vue').Ref<boolean, boolean>;
169
+ services: import('vue').Ref<{
170
+ id: string;
171
+ icon?: string;
172
+ label: string;
173
+ fellowships: {
174
+ id: string;
175
+ title: string;
176
+ }[];
177
+ expertiseLevel: "speciality" | "sub-speciality";
178
+ price: number;
179
+ }[], import('../../types/service').Service[] | {
180
+ id: string;
181
+ icon?: string;
182
+ label: string;
183
+ fellowships: {
184
+ id: string;
185
+ title: string;
186
+ }[];
187
+ expertiseLevel: "speciality" | "sub-speciality";
188
+ price: number;
189
+ }[]>;
190
+ providers: import('vue').Ref<{
191
+ expertise: string;
192
+ service: {
193
+ id: string;
194
+ icon?: string;
195
+ label: string;
196
+ fellowships: {
197
+ id: string;
198
+ title: string;
199
+ }[];
200
+ expertiseLevel: "speciality" | "sub-speciality";
201
+ price: number;
202
+ };
203
+ clinics: {
204
+ id: string;
205
+ title: number;
206
+ latitude: number;
207
+ longitude: number;
208
+ }[];
209
+ fellowships: {
210
+ id: string;
211
+ title: string;
212
+ }[];
213
+ type: import('../../types/service').InsitutionType;
214
+ illnesses?: {
215
+ [x: string]: unknown;
216
+ id: number | string;
217
+ name: string;
218
+ }[];
219
+ id: string;
220
+ name: string;
221
+ lastName: string;
222
+ isOnline: boolean;
223
+ lastSeen: Date;
224
+ imageUrl: string;
225
+ nationalCode?: string;
226
+ phoneNumber?: string;
227
+ isActive: boolean;
228
+ birthDate: Date;
229
+ lastMessage?: {
230
+ id: string;
231
+ conversationId: string;
232
+ date: Date;
233
+ type: import('../../types/chat').MessageType;
234
+ text?: string;
235
+ imageUrl?: string[];
236
+ fileUrl?: string;
237
+ voiceUrl?: string;
238
+ videoUrl?: string;
239
+ isEdited: boolean;
240
+ senderId: string;
241
+ isSent: boolean;
242
+ isRead: boolean;
243
+ repliedTo: /*elided*/ any;
244
+ request?: {
245
+ id: string;
246
+ type: "personal-info" | "add-person";
247
+ request: {
248
+ id: string;
249
+ date: Date;
250
+ status: import('../../types/chat').status;
251
+ } | {
252
+ status?: "searching" | "pending" | "approved" | "payment" | "rejected" | "expired";
253
+ provider?: {
254
+ status: "pending" | "approved" | "payment" | "rejected" | "expired";
255
+ expertise: string;
256
+ service: {
257
+ id: string;
258
+ icon?: string;
259
+ label: string;
260
+ fellowships: {
261
+ id: string;
262
+ title: string;
263
+ }[];
264
+ expertiseLevel: "speciality" | "sub-speciality";
265
+ price: number;
266
+ };
267
+ clinics: {
268
+ id: string;
269
+ title: number;
270
+ latitude: number;
271
+ longitude: number;
272
+ }[];
273
+ fellowships: {
274
+ id: string;
275
+ title: string;
276
+ }[];
277
+ type: import('../../types/service').InsitutionType;
278
+ illnesses?: {
279
+ [x: string]: unknown;
280
+ id: number | string;
281
+ name: string;
282
+ }[];
283
+ id: string;
284
+ name: string;
285
+ lastName: string;
286
+ isOnline: boolean;
287
+ lastSeen: Date;
288
+ imageUrl: string;
289
+ nationalCode?: string;
290
+ phoneNumber?: string;
291
+ isActive: boolean;
292
+ birthDate: Date;
293
+ lastMessage?: /*elided*/ any;
294
+ unreadCount?: number;
295
+ serviceType?: "video-call" | "voice-call" | "chat";
296
+ userType: import('../../types/chat').UserRoleKey[];
297
+ }[];
298
+ service?: {
299
+ id: string;
300
+ icon?: string;
301
+ label: string;
302
+ fellowships: {
303
+ id: string;
304
+ title: string;
305
+ }[];
306
+ expertiseLevel: "speciality" | "sub-speciality";
307
+ price: number;
308
+ };
309
+ serviceType?: import('../../types/chat').ServicePresence;
310
+ invoice?: {
311
+ [x: string]: unknown;
312
+ id: number | string;
313
+ amount?: number;
314
+ currency?: string;
315
+ status?: string;
316
+ };
317
+ id: string;
318
+ icon?: string;
319
+ label: string;
320
+ fellowships: {
321
+ id: string;
322
+ title: string;
323
+ }[];
324
+ expertiseLevel: "speciality" | "sub-speciality";
325
+ price: number;
326
+ };
327
+ };
328
+ };
329
+ unreadCount?: number;
330
+ serviceType?: "video-call" | "voice-call" | "chat";
331
+ userType: import('../../types/chat').UserRoleKey[];
332
+ }[], import('../../types/service').Provider[] | {
333
+ expertise: string;
334
+ service: {
335
+ id: string;
336
+ icon?: string;
337
+ label: string;
338
+ fellowships: {
339
+ id: string;
340
+ title: string;
341
+ }[];
342
+ expertiseLevel: "speciality" | "sub-speciality";
343
+ price: number;
344
+ };
345
+ clinics: {
346
+ id: string;
347
+ title: number;
348
+ latitude: number;
349
+ longitude: number;
350
+ }[];
351
+ fellowships: {
352
+ id: string;
353
+ title: string;
354
+ }[];
355
+ type: import('../../types/service').InsitutionType;
356
+ illnesses?: {
357
+ [x: string]: unknown;
358
+ id: number | string;
359
+ name: string;
360
+ }[];
361
+ id: string;
362
+ name: string;
363
+ lastName: string;
364
+ isOnline: boolean;
365
+ lastSeen: Date;
366
+ imageUrl: string;
367
+ nationalCode?: string;
368
+ phoneNumber?: string;
369
+ isActive: boolean;
370
+ birthDate: Date;
371
+ lastMessage?: {
372
+ id: string;
373
+ conversationId: string;
374
+ date: Date;
375
+ type: import('../../types/chat').MessageType;
376
+ text?: string;
377
+ imageUrl?: string[];
378
+ fileUrl?: string;
379
+ voiceUrl?: string;
380
+ videoUrl?: string;
381
+ isEdited: boolean;
382
+ senderId: string;
383
+ isSent: boolean;
384
+ isRead: boolean;
385
+ repliedTo: /*elided*/ any;
386
+ request?: {
387
+ id: string;
388
+ type: "personal-info" | "add-person";
389
+ request: {
390
+ id: string;
391
+ date: Date;
392
+ status: import('../../types/chat').status;
393
+ } | {
394
+ status?: "searching" | "pending" | "approved" | "payment" | "rejected" | "expired";
395
+ provider?: {
396
+ status: "pending" | "approved" | "payment" | "rejected" | "expired";
397
+ expertise: string;
398
+ service: {
399
+ id: string;
400
+ icon?: string;
401
+ label: string;
402
+ fellowships: {
403
+ id: string;
404
+ title: string;
405
+ }[];
406
+ expertiseLevel: "speciality" | "sub-speciality";
407
+ price: number;
408
+ };
409
+ clinics: {
410
+ id: string;
411
+ title: number;
412
+ latitude: number;
413
+ longitude: number;
414
+ }[];
415
+ fellowships: {
416
+ id: string;
417
+ title: string;
418
+ }[];
419
+ type: import('../../types/service').InsitutionType;
420
+ illnesses?: {
421
+ [x: string]: unknown;
422
+ id: number | string;
423
+ name: string;
424
+ }[];
425
+ id: string;
426
+ name: string;
427
+ lastName: string;
428
+ isOnline: boolean;
429
+ lastSeen: Date;
430
+ imageUrl: string;
431
+ nationalCode?: string;
432
+ phoneNumber?: string;
433
+ isActive: boolean;
434
+ birthDate: Date;
435
+ lastMessage?: /*elided*/ any;
436
+ unreadCount?: number;
437
+ serviceType?: "video-call" | "voice-call" | "chat";
438
+ userType: import('../../types/chat').UserRoleKey[];
439
+ }[];
440
+ service?: {
441
+ id: string;
442
+ icon?: string;
443
+ label: string;
444
+ fellowships: {
445
+ id: string;
446
+ title: string;
447
+ }[];
448
+ expertiseLevel: "speciality" | "sub-speciality";
449
+ price: number;
450
+ };
451
+ serviceType?: import('../../types/chat').ServicePresence;
452
+ invoice?: {
453
+ [x: string]: unknown;
454
+ id: number | string;
455
+ amount?: number;
456
+ currency?: string;
457
+ status?: string;
458
+ };
459
+ id: string;
460
+ icon?: string;
461
+ label: string;
462
+ fellowships: {
463
+ id: string;
464
+ title: string;
465
+ }[];
466
+ expertiseLevel: "speciality" | "sub-speciality";
467
+ price: number;
468
+ };
469
+ };
470
+ };
471
+ unreadCount?: number;
472
+ serviceType?: "video-call" | "voice-call" | "chat";
473
+ userType: import('../../types/chat').UserRoleKey[];
474
+ }[]>;
475
+ fetchServices: () => Promise<void>;
476
+ fetchProviders: (isLoadMore?: boolean, serviceId?: string, searchString?: string) => Promise<void>;
477
+ resetProviderData: () => void;
478
+ }, "isLoading" | "isLoadingServices" | "currentResultPage" | "searchText" | "selectedServiceId" | "providersPerPage" | "hasProviderNextPage" | "services" | "providers">, Pick<{
479
+ isLoading: import('vue').Ref<boolean, boolean>;
480
+ isLoadingServices: import('vue').Ref<boolean, boolean>;
481
+ currentResultPage: import('vue').Ref<number, number>;
482
+ searchText: import('vue').Ref<string, string>;
483
+ selectedServiceId: import('vue').Ref<string, string>;
484
+ providersPerPage: import('vue').Ref<number, number>;
485
+ hasProviderNextPage: import('vue').Ref<boolean, boolean>;
486
+ services: import('vue').Ref<{
487
+ id: string;
488
+ icon?: string;
489
+ label: string;
490
+ fellowships: {
491
+ id: string;
492
+ title: string;
493
+ }[];
494
+ expertiseLevel: "speciality" | "sub-speciality";
495
+ price: number;
496
+ }[], import('../../types/service').Service[] | {
497
+ id: string;
498
+ icon?: string;
499
+ label: string;
500
+ fellowships: {
501
+ id: string;
502
+ title: string;
503
+ }[];
504
+ expertiseLevel: "speciality" | "sub-speciality";
505
+ price: number;
506
+ }[]>;
507
+ providers: import('vue').Ref<{
508
+ expertise: string;
509
+ service: {
510
+ id: string;
511
+ icon?: string;
512
+ label: string;
513
+ fellowships: {
514
+ id: string;
515
+ title: string;
516
+ }[];
517
+ expertiseLevel: "speciality" | "sub-speciality";
518
+ price: number;
519
+ };
520
+ clinics: {
521
+ id: string;
522
+ title: number;
523
+ latitude: number;
524
+ longitude: number;
525
+ }[];
526
+ fellowships: {
527
+ id: string;
528
+ title: string;
529
+ }[];
530
+ type: import('../../types/service').InsitutionType;
531
+ illnesses?: {
532
+ [x: string]: unknown;
533
+ id: number | string;
534
+ name: string;
535
+ }[];
536
+ id: string;
537
+ name: string;
538
+ lastName: string;
539
+ isOnline: boolean;
540
+ lastSeen: Date;
541
+ imageUrl: string;
542
+ nationalCode?: string;
543
+ phoneNumber?: string;
544
+ isActive: boolean;
545
+ birthDate: Date;
546
+ lastMessage?: {
547
+ id: string;
548
+ conversationId: string;
549
+ date: Date;
550
+ type: import('../../types/chat').MessageType;
551
+ text?: string;
552
+ imageUrl?: string[];
553
+ fileUrl?: string;
554
+ voiceUrl?: string;
555
+ videoUrl?: string;
556
+ isEdited: boolean;
557
+ senderId: string;
558
+ isSent: boolean;
559
+ isRead: boolean;
560
+ repliedTo: /*elided*/ any;
561
+ request?: {
562
+ id: string;
563
+ type: "personal-info" | "add-person";
564
+ request: {
565
+ id: string;
566
+ date: Date;
567
+ status: import('../../types/chat').status;
568
+ } | {
569
+ status?: "searching" | "pending" | "approved" | "payment" | "rejected" | "expired";
570
+ provider?: {
571
+ status: "pending" | "approved" | "payment" | "rejected" | "expired";
572
+ expertise: string;
573
+ service: {
574
+ id: string;
575
+ icon?: string;
576
+ label: string;
577
+ fellowships: {
578
+ id: string;
579
+ title: string;
580
+ }[];
581
+ expertiseLevel: "speciality" | "sub-speciality";
582
+ price: number;
583
+ };
584
+ clinics: {
585
+ id: string;
586
+ title: number;
587
+ latitude: number;
588
+ longitude: number;
589
+ }[];
590
+ fellowships: {
591
+ id: string;
592
+ title: string;
593
+ }[];
594
+ type: import('../../types/service').InsitutionType;
595
+ illnesses?: {
596
+ [x: string]: unknown;
597
+ id: number | string;
598
+ name: string;
599
+ }[];
600
+ id: string;
601
+ name: string;
602
+ lastName: string;
603
+ isOnline: boolean;
604
+ lastSeen: Date;
605
+ imageUrl: string;
606
+ nationalCode?: string;
607
+ phoneNumber?: string;
608
+ isActive: boolean;
609
+ birthDate: Date;
610
+ lastMessage?: /*elided*/ any;
611
+ unreadCount?: number;
612
+ serviceType?: "video-call" | "voice-call" | "chat";
613
+ userType: import('../../types/chat').UserRoleKey[];
614
+ }[];
615
+ service?: {
616
+ id: string;
617
+ icon?: string;
618
+ label: string;
619
+ fellowships: {
620
+ id: string;
621
+ title: string;
622
+ }[];
623
+ expertiseLevel: "speciality" | "sub-speciality";
624
+ price: number;
625
+ };
626
+ serviceType?: import('../../types/chat').ServicePresence;
627
+ invoice?: {
628
+ [x: string]: unknown;
629
+ id: number | string;
630
+ amount?: number;
631
+ currency?: string;
632
+ status?: string;
633
+ };
634
+ id: string;
635
+ icon?: string;
636
+ label: string;
637
+ fellowships: {
638
+ id: string;
639
+ title: string;
640
+ }[];
641
+ expertiseLevel: "speciality" | "sub-speciality";
642
+ price: number;
643
+ };
644
+ };
645
+ };
646
+ unreadCount?: number;
647
+ serviceType?: "video-call" | "voice-call" | "chat";
648
+ userType: import('../../types/chat').UserRoleKey[];
649
+ }[], import('../../types/service').Provider[] | {
650
+ expertise: string;
651
+ service: {
652
+ id: string;
653
+ icon?: string;
654
+ label: string;
655
+ fellowships: {
656
+ id: string;
657
+ title: string;
658
+ }[];
659
+ expertiseLevel: "speciality" | "sub-speciality";
660
+ price: number;
661
+ };
662
+ clinics: {
663
+ id: string;
664
+ title: number;
665
+ latitude: number;
666
+ longitude: number;
667
+ }[];
668
+ fellowships: {
669
+ id: string;
670
+ title: string;
671
+ }[];
672
+ type: import('../../types/service').InsitutionType;
673
+ illnesses?: {
674
+ [x: string]: unknown;
675
+ id: number | string;
676
+ name: string;
677
+ }[];
678
+ id: string;
679
+ name: string;
680
+ lastName: string;
681
+ isOnline: boolean;
682
+ lastSeen: Date;
683
+ imageUrl: string;
684
+ nationalCode?: string;
685
+ phoneNumber?: string;
686
+ isActive: boolean;
687
+ birthDate: Date;
688
+ lastMessage?: {
689
+ id: string;
690
+ conversationId: string;
691
+ date: Date;
692
+ type: import('../../types/chat').MessageType;
693
+ text?: string;
694
+ imageUrl?: string[];
695
+ fileUrl?: string;
696
+ voiceUrl?: string;
697
+ videoUrl?: string;
698
+ isEdited: boolean;
699
+ senderId: string;
700
+ isSent: boolean;
701
+ isRead: boolean;
702
+ repliedTo: /*elided*/ any;
703
+ request?: {
704
+ id: string;
705
+ type: "personal-info" | "add-person";
706
+ request: {
707
+ id: string;
708
+ date: Date;
709
+ status: import('../../types/chat').status;
710
+ } | {
711
+ status?: "searching" | "pending" | "approved" | "payment" | "rejected" | "expired";
712
+ provider?: {
713
+ status: "pending" | "approved" | "payment" | "rejected" | "expired";
714
+ expertise: string;
715
+ service: {
716
+ id: string;
717
+ icon?: string;
718
+ label: string;
719
+ fellowships: {
720
+ id: string;
721
+ title: string;
722
+ }[];
723
+ expertiseLevel: "speciality" | "sub-speciality";
724
+ price: number;
725
+ };
726
+ clinics: {
727
+ id: string;
728
+ title: number;
729
+ latitude: number;
730
+ longitude: number;
731
+ }[];
732
+ fellowships: {
733
+ id: string;
734
+ title: string;
735
+ }[];
736
+ type: import('../../types/service').InsitutionType;
737
+ illnesses?: {
738
+ [x: string]: unknown;
739
+ id: number | string;
740
+ name: string;
741
+ }[];
742
+ id: string;
743
+ name: string;
744
+ lastName: string;
745
+ isOnline: boolean;
746
+ lastSeen: Date;
747
+ imageUrl: string;
748
+ nationalCode?: string;
749
+ phoneNumber?: string;
750
+ isActive: boolean;
751
+ birthDate: Date;
752
+ lastMessage?: /*elided*/ any;
753
+ unreadCount?: number;
754
+ serviceType?: "video-call" | "voice-call" | "chat";
755
+ userType: import('../../types/chat').UserRoleKey[];
756
+ }[];
757
+ service?: {
758
+ id: string;
759
+ icon?: string;
760
+ label: string;
761
+ fellowships: {
762
+ id: string;
763
+ title: string;
764
+ }[];
765
+ expertiseLevel: "speciality" | "sub-speciality";
766
+ price: number;
767
+ };
768
+ serviceType?: import('../../types/chat').ServicePresence;
769
+ invoice?: {
770
+ [x: string]: unknown;
771
+ id: number | string;
772
+ amount?: number;
773
+ currency?: string;
774
+ status?: string;
775
+ };
776
+ id: string;
777
+ icon?: string;
778
+ label: string;
779
+ fellowships: {
780
+ id: string;
781
+ title: string;
782
+ }[];
783
+ expertiseLevel: "speciality" | "sub-speciality";
784
+ price: number;
785
+ };
786
+ };
787
+ };
788
+ unreadCount?: number;
789
+ serviceType?: "video-call" | "voice-call" | "chat";
790
+ userType: import('../../types/chat').UserRoleKey[];
791
+ }[]>;
792
+ fetchServices: () => Promise<void>;
793
+ fetchProviders: (isLoadMore?: boolean, serviceId?: string, searchString?: string) => Promise<void>;
794
+ resetProviderData: () => void;
795
+ }, never>, Pick<{
796
+ isLoading: import('vue').Ref<boolean, boolean>;
797
+ isLoadingServices: import('vue').Ref<boolean, boolean>;
798
+ currentResultPage: import('vue').Ref<number, number>;
799
+ searchText: import('vue').Ref<string, string>;
800
+ selectedServiceId: import('vue').Ref<string, string>;
801
+ providersPerPage: import('vue').Ref<number, number>;
802
+ hasProviderNextPage: import('vue').Ref<boolean, boolean>;
803
+ services: import('vue').Ref<{
804
+ id: string;
805
+ icon?: string;
806
+ label: string;
807
+ fellowships: {
808
+ id: string;
809
+ title: string;
810
+ }[];
811
+ expertiseLevel: "speciality" | "sub-speciality";
812
+ price: number;
813
+ }[], import('../../types/service').Service[] | {
814
+ id: string;
815
+ icon?: string;
816
+ label: string;
817
+ fellowships: {
818
+ id: string;
819
+ title: string;
820
+ }[];
821
+ expertiseLevel: "speciality" | "sub-speciality";
822
+ price: number;
823
+ }[]>;
824
+ providers: import('vue').Ref<{
825
+ expertise: string;
826
+ service: {
827
+ id: string;
828
+ icon?: string;
829
+ label: string;
830
+ fellowships: {
831
+ id: string;
832
+ title: string;
833
+ }[];
834
+ expertiseLevel: "speciality" | "sub-speciality";
835
+ price: number;
836
+ };
837
+ clinics: {
838
+ id: string;
839
+ title: number;
840
+ latitude: number;
841
+ longitude: number;
842
+ }[];
843
+ fellowships: {
844
+ id: string;
845
+ title: string;
846
+ }[];
847
+ type: import('../../types/service').InsitutionType;
848
+ illnesses?: {
849
+ [x: string]: unknown;
850
+ id: number | string;
851
+ name: string;
852
+ }[];
853
+ id: string;
854
+ name: string;
855
+ lastName: string;
856
+ isOnline: boolean;
857
+ lastSeen: Date;
858
+ imageUrl: string;
859
+ nationalCode?: string;
860
+ phoneNumber?: string;
861
+ isActive: boolean;
862
+ birthDate: Date;
863
+ lastMessage?: {
864
+ id: string;
865
+ conversationId: string;
866
+ date: Date;
867
+ type: import('../../types/chat').MessageType;
868
+ text?: string;
869
+ imageUrl?: string[];
870
+ fileUrl?: string;
871
+ voiceUrl?: string;
872
+ videoUrl?: string;
873
+ isEdited: boolean;
874
+ senderId: string;
875
+ isSent: boolean;
876
+ isRead: boolean;
877
+ repliedTo: /*elided*/ any;
878
+ request?: {
879
+ id: string;
880
+ type: "personal-info" | "add-person";
881
+ request: {
882
+ id: string;
883
+ date: Date;
884
+ status: import('../../types/chat').status;
885
+ } | {
886
+ status?: "searching" | "pending" | "approved" | "payment" | "rejected" | "expired";
887
+ provider?: {
888
+ status: "pending" | "approved" | "payment" | "rejected" | "expired";
889
+ expertise: string;
890
+ service: {
891
+ id: string;
892
+ icon?: string;
893
+ label: string;
894
+ fellowships: {
895
+ id: string;
896
+ title: string;
897
+ }[];
898
+ expertiseLevel: "speciality" | "sub-speciality";
899
+ price: number;
900
+ };
901
+ clinics: {
902
+ id: string;
903
+ title: number;
904
+ latitude: number;
905
+ longitude: number;
906
+ }[];
907
+ fellowships: {
908
+ id: string;
909
+ title: string;
910
+ }[];
911
+ type: import('../../types/service').InsitutionType;
912
+ illnesses?: {
913
+ [x: string]: unknown;
914
+ id: number | string;
915
+ name: string;
916
+ }[];
917
+ id: string;
918
+ name: string;
919
+ lastName: string;
920
+ isOnline: boolean;
921
+ lastSeen: Date;
922
+ imageUrl: string;
923
+ nationalCode?: string;
924
+ phoneNumber?: string;
925
+ isActive: boolean;
926
+ birthDate: Date;
927
+ lastMessage?: /*elided*/ any;
928
+ unreadCount?: number;
929
+ serviceType?: "video-call" | "voice-call" | "chat";
930
+ userType: import('../../types/chat').UserRoleKey[];
931
+ }[];
932
+ service?: {
933
+ id: string;
934
+ icon?: string;
935
+ label: string;
936
+ fellowships: {
937
+ id: string;
938
+ title: string;
939
+ }[];
940
+ expertiseLevel: "speciality" | "sub-speciality";
941
+ price: number;
942
+ };
943
+ serviceType?: import('../../types/chat').ServicePresence;
944
+ invoice?: {
945
+ [x: string]: unknown;
946
+ id: number | string;
947
+ amount?: number;
948
+ currency?: string;
949
+ status?: string;
950
+ };
951
+ id: string;
952
+ icon?: string;
953
+ label: string;
954
+ fellowships: {
955
+ id: string;
956
+ title: string;
957
+ }[];
958
+ expertiseLevel: "speciality" | "sub-speciality";
959
+ price: number;
960
+ };
961
+ };
962
+ };
963
+ unreadCount?: number;
964
+ serviceType?: "video-call" | "voice-call" | "chat";
965
+ userType: import('../../types/chat').UserRoleKey[];
966
+ }[], import('../../types/service').Provider[] | {
967
+ expertise: string;
968
+ service: {
969
+ id: string;
970
+ icon?: string;
971
+ label: string;
972
+ fellowships: {
973
+ id: string;
974
+ title: string;
975
+ }[];
976
+ expertiseLevel: "speciality" | "sub-speciality";
977
+ price: number;
978
+ };
979
+ clinics: {
980
+ id: string;
981
+ title: number;
982
+ latitude: number;
983
+ longitude: number;
984
+ }[];
985
+ fellowships: {
986
+ id: string;
987
+ title: string;
988
+ }[];
989
+ type: import('../../types/service').InsitutionType;
990
+ illnesses?: {
991
+ [x: string]: unknown;
992
+ id: number | string;
993
+ name: string;
994
+ }[];
995
+ id: string;
996
+ name: string;
997
+ lastName: string;
998
+ isOnline: boolean;
999
+ lastSeen: Date;
1000
+ imageUrl: string;
1001
+ nationalCode?: string;
1002
+ phoneNumber?: string;
1003
+ isActive: boolean;
1004
+ birthDate: Date;
1005
+ lastMessage?: {
1006
+ id: string;
1007
+ conversationId: string;
1008
+ date: Date;
1009
+ type: import('../../types/chat').MessageType;
1010
+ text?: string;
1011
+ imageUrl?: string[];
1012
+ fileUrl?: string;
1013
+ voiceUrl?: string;
1014
+ videoUrl?: string;
1015
+ isEdited: boolean;
1016
+ senderId: string;
1017
+ isSent: boolean;
1018
+ isRead: boolean;
1019
+ repliedTo: /*elided*/ any;
1020
+ request?: {
1021
+ id: string;
1022
+ type: "personal-info" | "add-person";
1023
+ request: {
1024
+ id: string;
1025
+ date: Date;
1026
+ status: import('../../types/chat').status;
1027
+ } | {
1028
+ status?: "searching" | "pending" | "approved" | "payment" | "rejected" | "expired";
1029
+ provider?: {
1030
+ status: "pending" | "approved" | "payment" | "rejected" | "expired";
1031
+ expertise: string;
1032
+ service: {
1033
+ id: string;
1034
+ icon?: string;
1035
+ label: string;
1036
+ fellowships: {
1037
+ id: string;
1038
+ title: string;
1039
+ }[];
1040
+ expertiseLevel: "speciality" | "sub-speciality";
1041
+ price: number;
1042
+ };
1043
+ clinics: {
1044
+ id: string;
1045
+ title: number;
1046
+ latitude: number;
1047
+ longitude: number;
1048
+ }[];
1049
+ fellowships: {
1050
+ id: string;
1051
+ title: string;
1052
+ }[];
1053
+ type: import('../../types/service').InsitutionType;
1054
+ illnesses?: {
1055
+ [x: string]: unknown;
1056
+ id: number | string;
1057
+ name: string;
1058
+ }[];
1059
+ id: string;
1060
+ name: string;
1061
+ lastName: string;
1062
+ isOnline: boolean;
1063
+ lastSeen: Date;
1064
+ imageUrl: string;
1065
+ nationalCode?: string;
1066
+ phoneNumber?: string;
1067
+ isActive: boolean;
1068
+ birthDate: Date;
1069
+ lastMessage?: /*elided*/ any;
1070
+ unreadCount?: number;
1071
+ serviceType?: "video-call" | "voice-call" | "chat";
1072
+ userType: import('../../types/chat').UserRoleKey[];
1073
+ }[];
1074
+ service?: {
1075
+ id: string;
1076
+ icon?: string;
1077
+ label: string;
1078
+ fellowships: {
1079
+ id: string;
1080
+ title: string;
1081
+ }[];
1082
+ expertiseLevel: "speciality" | "sub-speciality";
1083
+ price: number;
1084
+ };
1085
+ serviceType?: import('../../types/chat').ServicePresence;
1086
+ invoice?: {
1087
+ [x: string]: unknown;
1088
+ id: number | string;
1089
+ amount?: number;
1090
+ currency?: string;
1091
+ status?: string;
1092
+ };
1093
+ id: string;
1094
+ icon?: string;
1095
+ label: string;
1096
+ fellowships: {
1097
+ id: string;
1098
+ title: string;
1099
+ }[];
1100
+ expertiseLevel: "speciality" | "sub-speciality";
1101
+ price: number;
1102
+ };
1103
+ };
1104
+ };
1105
+ unreadCount?: number;
1106
+ serviceType?: "video-call" | "voice-call" | "chat";
1107
+ userType: import('../../types/chat').UserRoleKey[];
1108
+ }[]>;
1109
+ fetchServices: () => Promise<void>;
1110
+ fetchProviders: (isLoadMore?: boolean, serviceId?: string, searchString?: string) => Promise<void>;
1111
+ resetProviderData: () => void;
1112
+ }, "fetchServices" | "fetchProviders" | "resetProviderData">>;
1113
+ serviceOptions: any;
1114
+ autoSelect: any;
1115
+ field: any;
1116
+ NoProviderImage: string;
1117
+ isSelected: (id: string) => any;
1118
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, "close"[], "close", import('vue').PublicProps, Readonly<{}> & Readonly<{
1119
+ onClose?: (...args: any[]) => any;
1120
+ }>, {}, {}, {
1121
+ MedicDisplay: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
1122
+ medic: {
1123
+ type: PropType<import('../../types/service').Provider>;
1124
+ required: true;
1125
+ };
1126
+ isSelected: {
1127
+ type: BooleanConstructor;
1128
+ default: boolean;
1129
+ };
1130
+ loading: {
1131
+ type: BooleanConstructor;
1132
+ default: boolean;
1133
+ };
1134
+ }>, {
1135
+ fellowshipString: import('vue').ComputedRef<string>;
1136
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
1137
+ medic: {
1138
+ type: PropType<import('../../types/service').Provider>;
1139
+ required: true;
1140
+ };
1141
+ isSelected: {
1142
+ type: BooleanConstructor;
1143
+ default: boolean;
1144
+ };
1145
+ loading: {
1146
+ type: BooleanConstructor;
1147
+ default: boolean;
1148
+ };
1149
+ }>> & Readonly<{}>, {
1150
+ loading: boolean;
1151
+ isSelected: boolean;
1152
+ }, {}, {
1153
+ ContactAvatar: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
1154
+ contact: {
1155
+ type: PropType<Contact>;
1156
+ required: true;
1157
+ };
1158
+ showOnline: {
1159
+ type: BooleanConstructor;
1160
+ default: boolean;
1161
+ };
1162
+ }>, {
1163
+ hasImage: any;
1164
+ initials: any;
1165
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
1166
+ contact: {
1167
+ type: PropType<Contact>;
1168
+ required: true;
1169
+ };
1170
+ showOnline: {
1171
+ type: BooleanConstructor;
1172
+ default: boolean;
1173
+ };
1174
+ }>> & Readonly<{}>, {
1175
+ showOnline: boolean;
1176
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
1177
+ }, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
1178
+ NoDataDisplay: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
1179
+ imagePath: {
1180
+ type: StringConstructor;
1181
+ default: string;
1182
+ };
1183
+ title: {
1184
+ type: StringConstructor;
1185
+ default: string;
1186
+ };
1187
+ }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
1188
+ imagePath: {
1189
+ type: StringConstructor;
1190
+ default: string;
1191
+ };
1192
+ title: {
1193
+ type: StringConstructor;
1194
+ default: string;
1195
+ };
1196
+ }>> & Readonly<{}>, {
1197
+ title: string;
1198
+ imagePath: string;
1199
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
1200
+ }, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
1201
+ }, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
1202
+ }, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
1203
+ export default _default;
1204
+ //# sourceMappingURL=ChatPageBar.vue.d.ts.map