@warriorteam/redai-zalo-sdk 1.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 (123) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +448 -0
  3. package/dist/clients/base-client.d.ts +67 -0
  4. package/dist/clients/base-client.d.ts.map +1 -0
  5. package/dist/clients/base-client.js +297 -0
  6. package/dist/clients/base-client.js.map +1 -0
  7. package/dist/clients/zalo-client.d.ts +131 -0
  8. package/dist/clients/zalo-client.d.ts.map +1 -0
  9. package/dist/clients/zalo-client.js +215 -0
  10. package/dist/clients/zalo-client.js.map +1 -0
  11. package/dist/index.d.ts +40 -0
  12. package/dist/index.d.ts.map +1 -0
  13. package/dist/index.js +82 -0
  14. package/dist/index.js.map +1 -0
  15. package/dist/services/article.service.d.ts +144 -0
  16. package/dist/services/article.service.d.ts.map +1 -0
  17. package/dist/services/article.service.js +518 -0
  18. package/dist/services/article.service.js.map +1 -0
  19. package/dist/services/auth.service.d.ts +55 -0
  20. package/dist/services/auth.service.d.ts.map +1 -0
  21. package/dist/services/auth.service.js +269 -0
  22. package/dist/services/auth.service.js.map +1 -0
  23. package/dist/services/consultation.service.d.ts +73 -0
  24. package/dist/services/consultation.service.d.ts.map +1 -0
  25. package/dist/services/consultation.service.js +208 -0
  26. package/dist/services/consultation.service.js.map +1 -0
  27. package/dist/services/general-message.service.d.ts +85 -0
  28. package/dist/services/general-message.service.d.ts.map +1 -0
  29. package/dist/services/general-message.service.js +248 -0
  30. package/dist/services/general-message.service.js.map +1 -0
  31. package/dist/services/group-management.service.d.ts +220 -0
  32. package/dist/services/group-management.service.d.ts.map +1 -0
  33. package/dist/services/group-management.service.js +562 -0
  34. package/dist/services/group-management.service.js.map +1 -0
  35. package/dist/services/group-message.service.d.ts +102 -0
  36. package/dist/services/group-message.service.d.ts.map +1 -0
  37. package/dist/services/group-message.service.js +233 -0
  38. package/dist/services/group-message.service.js.map +1 -0
  39. package/dist/services/message-management.service.d.ts +135 -0
  40. package/dist/services/message-management.service.d.ts.map +1 -0
  41. package/dist/services/message-management.service.js +237 -0
  42. package/dist/services/message-management.service.js.map +1 -0
  43. package/dist/services/oa.service.d.ts +67 -0
  44. package/dist/services/oa.service.d.ts.map +1 -0
  45. package/dist/services/oa.service.js +223 -0
  46. package/dist/services/oa.service.js.map +1 -0
  47. package/dist/services/promotion.service.d.ts +114 -0
  48. package/dist/services/promotion.service.d.ts.map +1 -0
  49. package/dist/services/promotion.service.js +247 -0
  50. package/dist/services/promotion.service.js.map +1 -0
  51. package/dist/services/tag.service.d.ts +144 -0
  52. package/dist/services/tag.service.d.ts.map +1 -0
  53. package/dist/services/tag.service.js +184 -0
  54. package/dist/services/tag.service.js.map +1 -0
  55. package/dist/services/transaction.service.d.ts +110 -0
  56. package/dist/services/transaction.service.d.ts.map +1 -0
  57. package/dist/services/transaction.service.js +231 -0
  58. package/dist/services/transaction.service.js.map +1 -0
  59. package/dist/services/user-management.service.d.ts +117 -0
  60. package/dist/services/user-management.service.d.ts.map +1 -0
  61. package/dist/services/user-management.service.js +239 -0
  62. package/dist/services/user-management.service.js.map +1 -0
  63. package/dist/services/user.service.d.ts +84 -0
  64. package/dist/services/user.service.d.ts.map +1 -0
  65. package/dist/services/user.service.js +323 -0
  66. package/dist/services/user.service.js.map +1 -0
  67. package/dist/services/video-upload.service.d.ts +83 -0
  68. package/dist/services/video-upload.service.d.ts.map +1 -0
  69. package/dist/services/video-upload.service.js +267 -0
  70. package/dist/services/video-upload.service.js.map +1 -0
  71. package/dist/services/zns.service.d.ts +116 -0
  72. package/dist/services/zns.service.d.ts.map +1 -0
  73. package/dist/services/zns.service.js +234 -0
  74. package/dist/services/zns.service.js.map +1 -0
  75. package/dist/types/article.d.ts +352 -0
  76. package/dist/types/article.d.ts.map +1 -0
  77. package/dist/types/article.js +70 -0
  78. package/dist/types/article.js.map +1 -0
  79. package/dist/types/auth.d.ts +233 -0
  80. package/dist/types/auth.d.ts.map +1 -0
  81. package/dist/types/auth.js +39 -0
  82. package/dist/types/auth.js.map +1 -0
  83. package/dist/types/common.d.ts +237 -0
  84. package/dist/types/common.d.ts.map +1 -0
  85. package/dist/types/common.js +42 -0
  86. package/dist/types/common.js.map +1 -0
  87. package/dist/types/group.d.ts +523 -0
  88. package/dist/types/group.d.ts.map +1 -0
  89. package/dist/types/group.js +6 -0
  90. package/dist/types/group.js.map +1 -0
  91. package/dist/types/message.d.ts +333 -0
  92. package/dist/types/message.d.ts.map +1 -0
  93. package/dist/types/message.js +17 -0
  94. package/dist/types/message.js.map +1 -0
  95. package/dist/types/oa.d.ts +285 -0
  96. package/dist/types/oa.d.ts.map +1 -0
  97. package/dist/types/oa.js +25 -0
  98. package/dist/types/oa.js.map +1 -0
  99. package/dist/types/social.d.ts +427 -0
  100. package/dist/types/social.d.ts.map +1 -0
  101. package/dist/types/social.js +6 -0
  102. package/dist/types/social.js.map +1 -0
  103. package/dist/types/user-management.d.ts +280 -0
  104. package/dist/types/user-management.d.ts.map +1 -0
  105. package/dist/types/user-management.js +6 -0
  106. package/dist/types/user-management.js.map +1 -0
  107. package/dist/types/user.d.ts +365 -0
  108. package/dist/types/user.d.ts.map +1 -0
  109. package/dist/types/user.js +17 -0
  110. package/dist/types/user.js.map +1 -0
  111. package/dist/types/webhook.d.ts +1972 -0
  112. package/dist/types/webhook.d.ts.map +1 -0
  113. package/dist/types/webhook.js +419 -0
  114. package/dist/types/webhook.js.map +1 -0
  115. package/dist/types/zns.d.ts +277 -0
  116. package/dist/types/zns.d.ts.map +1 -0
  117. package/dist/types/zns.js +6 -0
  118. package/dist/types/zns.js.map +1 -0
  119. package/dist/zalo-sdk.d.ts +228 -0
  120. package/dist/zalo-sdk.d.ts.map +1 -0
  121. package/dist/zalo-sdk.js +307 -0
  122. package/dist/zalo-sdk.js.map +1 -0
  123. package/package.json +59 -0
@@ -0,0 +1,277 @@
1
+ /**
2
+ * ZNS (Zalo Notification Service) Type Definitions
3
+ */
4
+ export interface ZNSMessage {
5
+ phone: string;
6
+ template_id: string;
7
+ template_data: Record<string, any>;
8
+ tracking_id?: string;
9
+ }
10
+ export interface ZNSHashPhoneMessage {
11
+ phone_hash: string;
12
+ template_id: string;
13
+ template_data: Record<string, any>;
14
+ tracking_id?: string;
15
+ }
16
+ export interface ZNSDevModeMessage {
17
+ phone: string;
18
+ template_id: string;
19
+ template_data: Record<string, any>;
20
+ tracking_id?: string;
21
+ mode: 'development';
22
+ }
23
+ export interface ZNSRsaMessage {
24
+ phone_rsa: string;
25
+ template_id: string;
26
+ template_data: Record<string, any>;
27
+ tracking_id?: string;
28
+ }
29
+ export interface ZNSJourneyMessage {
30
+ phone: string;
31
+ template_id: string;
32
+ template_data: Record<string, any>;
33
+ tracking_id?: string;
34
+ journey_id: string;
35
+ }
36
+ export interface ZNSSendResult {
37
+ error: number;
38
+ message: string;
39
+ data?: {
40
+ msg_id: string;
41
+ sent_time: string;
42
+ quota?: {
43
+ remainingQuota: number;
44
+ dailyQuota: number;
45
+ };
46
+ };
47
+ }
48
+ export interface ZNSTemplate {
49
+ templateId: string;
50
+ templateName: string;
51
+ status: 'PENDING_REVIEW' | 'ENABLE' | 'REJECT' | 'DISABLE';
52
+ listParams: Array<{
53
+ name: string;
54
+ require: boolean;
55
+ type: 'STRING' | 'NUMBER' | 'DATE';
56
+ maxLength?: number;
57
+ minLength?: number;
58
+ }>;
59
+ timeout?: number;
60
+ previewUrl?: string;
61
+ templateQuality?: 'HIGH' | 'MEDIUM' | 'LOW';
62
+ templateTag?: string;
63
+ price?: number;
64
+ applyTemplateQuota?: boolean;
65
+ templateDailyQuota?: number;
66
+ templateRemainingQuota?: number;
67
+ }
68
+ export interface ZNSTemplateList {
69
+ error: number;
70
+ message: string;
71
+ data: ZNSTemplate[];
72
+ }
73
+ export interface ZNSCreateTemplateRequest {
74
+ templateName: string;
75
+ templateContent: string;
76
+ templateType: number;
77
+ timeout?: number;
78
+ previewUrl?: string;
79
+ templateTag?: string;
80
+ listParams?: Array<{
81
+ name: string;
82
+ require: boolean;
83
+ type: 'STRING' | 'NUMBER' | 'DATE';
84
+ maxLength?: number;
85
+ minLength?: number;
86
+ }>;
87
+ }
88
+ export interface ZNSUpdateTemplateRequest {
89
+ templateId: string;
90
+ templateName?: string;
91
+ templateContent?: string;
92
+ timeout?: number;
93
+ previewUrl?: string;
94
+ templateTag?: string;
95
+ listParams?: Array<{
96
+ name: string;
97
+ require: boolean;
98
+ type: 'STRING' | 'NUMBER' | 'DATE';
99
+ maxLength?: number;
100
+ minLength?: number;
101
+ }>;
102
+ }
103
+ export interface ZNSUploadImageResult {
104
+ error: number;
105
+ message: string;
106
+ data?: {
107
+ attachment_id: string;
108
+ url: string;
109
+ };
110
+ }
111
+ export interface ZNSStatusInfo {
112
+ error: number;
113
+ message: string;
114
+ data?: {
115
+ status: 'PENDING' | 'SENT' | 'RECEIVED' | 'FAILED';
116
+ sent_time?: string;
117
+ received_time?: string;
118
+ fail_reason?: string;
119
+ };
120
+ }
121
+ export interface ZNSMessageStatusInfo {
122
+ error: number;
123
+ message: string;
124
+ data?: {
125
+ msg_id: string;
126
+ phone: string;
127
+ status: 'PENDING' | 'SENT' | 'RECEIVED' | 'FAILED';
128
+ sent_time?: string;
129
+ received_time?: string;
130
+ fail_reason?: string;
131
+ template_id: string;
132
+ tracking_id?: string;
133
+ };
134
+ }
135
+ export interface ZNSQuotaInfo {
136
+ error: number;
137
+ message: string;
138
+ data?: {
139
+ dailyQuota: number;
140
+ remainingQuota: number;
141
+ type: 'TRIAL' | 'PAID';
142
+ };
143
+ }
144
+ export interface ZNSAllowedContent {
145
+ error: number;
146
+ message: string;
147
+ data?: {
148
+ allowed_content: string[];
149
+ prohibited_content: string[];
150
+ };
151
+ }
152
+ export interface ZNSTemplateSampleData {
153
+ templateId: string;
154
+ sampleData: Record<string, any>;
155
+ }
156
+ export interface ZNSCustomerRating {
157
+ templateId: string;
158
+ rating: number;
159
+ feedback?: string;
160
+ ratingTime: string;
161
+ }
162
+ export interface ZNSCustomerRatingList {
163
+ error: number;
164
+ message: string;
165
+ data?: {
166
+ ratings: ZNSCustomerRating[];
167
+ averageRating: number;
168
+ totalRatings: number;
169
+ };
170
+ }
171
+ export interface ZNSQualityInfo {
172
+ templateId: string;
173
+ quality: 'HIGH' | 'MEDIUM' | 'LOW';
174
+ qualityScore: number;
175
+ factors: {
176
+ deliveryRate: number;
177
+ readRate: number;
178
+ responseRate: number;
179
+ complaintRate: number;
180
+ };
181
+ lastUpdated: string;
182
+ }
183
+ export interface ZNSQualityHistoryList {
184
+ error: number;
185
+ message: string;
186
+ data?: {
187
+ history: Array<{
188
+ date: string;
189
+ quality: 'HIGH' | 'MEDIUM' | 'LOW';
190
+ qualityScore: number;
191
+ metrics: {
192
+ sent: number;
193
+ delivered: number;
194
+ read: number;
195
+ responded: number;
196
+ complained: number;
197
+ };
198
+ }>;
199
+ };
200
+ }
201
+ export interface ZNSTemplateStatus {
202
+ templateId: string;
203
+ status: 'PENDING_REVIEW' | 'ENABLE' | 'REJECT' | 'DISABLE';
204
+ rejectReason?: string;
205
+ enabledTime?: string;
206
+ disabledTime?: string;
207
+ }
208
+ export interface ZNSComponent {
209
+ type: 'HEADER' | 'BODY' | 'FOOTER';
210
+ format?: 'TEXT' | 'IMAGE' | 'VIDEO';
211
+ text?: string;
212
+ url?: string;
213
+ example?: {
214
+ header_text?: string[];
215
+ body_text?: string[][];
216
+ header_handle?: string[];
217
+ };
218
+ }
219
+ export interface ZNSTemplateComponent {
220
+ type: 'TITLE' | 'PARAGRAPH' | 'TABLE' | 'LOGO' | 'IMAGE' | 'BUTTONS';
221
+ content?: string;
222
+ url?: string;
223
+ buttons?: Array<{
224
+ title: string;
225
+ type: 'PHONE_NUMBER' | 'URL';
226
+ payload: string;
227
+ }>;
228
+ table?: {
229
+ headers: string[];
230
+ rows: string[][];
231
+ };
232
+ }
233
+ export interface ZNSError {
234
+ error: number;
235
+ message: string;
236
+ details?: {
237
+ field?: string;
238
+ code?: string;
239
+ description?: string;
240
+ };
241
+ }
242
+ export interface ZNSAnalytics {
243
+ templateId: string;
244
+ period: {
245
+ from: string;
246
+ to: string;
247
+ };
248
+ metrics: {
249
+ sent: number;
250
+ delivered: number;
251
+ read: number;
252
+ clicked: number;
253
+ failed: number;
254
+ deliveryRate: number;
255
+ readRate: number;
256
+ clickRate: number;
257
+ };
258
+ breakdown?: {
259
+ daily?: Array<{
260
+ date: string;
261
+ sent: number;
262
+ delivered: number;
263
+ read: number;
264
+ clicked: number;
265
+ failed: number;
266
+ }>;
267
+ hourly?: Array<{
268
+ hour: number;
269
+ sent: number;
270
+ delivered: number;
271
+ read: number;
272
+ clicked: number;
273
+ failed: number;
274
+ }>;
275
+ };
276
+ }
277
+ //# sourceMappingURL=zns.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zns.d.ts","sourceRoot":"","sources":["../../src/types/zns.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /**
3
+ * ZNS (Zalo Notification Service) Type Definitions
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ //# sourceMappingURL=zns.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zns.js","sourceRoot":"","sources":["../../src/types/zns.ts"],"names":[],"mappings":";AAAA;;GAEG"}
@@ -0,0 +1,228 @@
1
+ /**
2
+ * Main Zalo SDK class
3
+ */
4
+ import { AuthService } from "./services/auth.service";
5
+ import { OAService } from "./services/oa.service";
6
+ import { UserService } from "./services/user.service";
7
+ import { ZNSService } from "./services/zns.service";
8
+ import { GroupMessageService } from "./services/group-message.service";
9
+ import { GroupManagementService } from "./services/group-management.service";
10
+ import { UserManagementService } from "./services/user-management.service";
11
+ import { TagService } from "./services/tag.service";
12
+ import { ArticleService } from "./services/article.service";
13
+ import { VideoUploadService } from "./services/video-upload.service";
14
+ import { ConsultationService } from "./services/consultation.service";
15
+ import { TransactionService } from "./services/transaction.service";
16
+ import { PromotionService } from "./services/promotion.service";
17
+ import { GeneralMessageService } from "./services/general-message.service";
18
+ import { MessageManagementService } from "./services/message-management.service";
19
+ import { ZaloSDKConfig } from "./types/common";
20
+ import { AccessToken, SocialUserInfo } from "./types/auth";
21
+ import { OAInfo, MessageQuota } from "./types/oa";
22
+ import { SendMessageResponse } from "./types/message";
23
+ import { UserInfo, UserListRequest } from "./types/user";
24
+ /**
25
+ * Main Zalo SDK class providing access to all Zalo APIs
26
+ */
27
+ export declare class ZaloSDK {
28
+ private readonly client;
29
+ private readonly logger;
30
+ readonly auth: AuthService;
31
+ readonly oa: OAService;
32
+ readonly user: UserService;
33
+ readonly zns: ZNSService;
34
+ readonly groupMessage: GroupMessageService;
35
+ readonly groupManagement: GroupManagementService;
36
+ readonly userManagement: UserManagementService;
37
+ readonly tag: TagService;
38
+ readonly article: ArticleService;
39
+ readonly videoUpload: VideoUploadService;
40
+ readonly consultation: ConsultationService;
41
+ readonly transaction: TransactionService;
42
+ readonly promotion: PromotionService;
43
+ readonly generalMessage: GeneralMessageService;
44
+ readonly messageManagement: MessageManagementService;
45
+ readonly config: Required<ZaloSDKConfig>;
46
+ constructor(config: ZaloSDKConfig);
47
+ /**
48
+ * Quick method to get OA access token from authorization code
49
+ */
50
+ getOAAccessToken(code: string, redirectUri: string): Promise<AccessToken>;
51
+ /**
52
+ * Quick method to get Social access token from authorization code
53
+ */
54
+ getSocialAccessToken(code: string, redirectUri: string, codeVerifier?: string): Promise<AccessToken>;
55
+ /**
56
+ * Quick method to refresh OA access token
57
+ */
58
+ refreshOAAccessToken(refreshToken: string): Promise<AccessToken>;
59
+ /**
60
+ * Quick method to refresh Social access token
61
+ */
62
+ refreshSocialAccessToken(refreshToken: string): Promise<AccessToken>;
63
+ /**
64
+ * Quick method to get OA information
65
+ */
66
+ getOAInfo(accessToken: string): Promise<OAInfo>;
67
+ /**
68
+ * Quick method to get message quota
69
+ */
70
+ getMessageQuota(accessToken: string): Promise<MessageQuota>;
71
+ /**
72
+ * Quick method to get Social user information
73
+ */
74
+ getSocialUserInfo(accessToken: string, fields?: string): Promise<SocialUserInfo>;
75
+ /**
76
+ * Quick method to send consultation text message
77
+ */
78
+ sendConsultationText(accessToken: string, userId: string, text: string): Promise<SendMessageResponse>;
79
+ /**
80
+ * Quick method to send consultation image message
81
+ */
82
+ sendConsultationImage(accessToken: string, userId: string, imageUrl: string): Promise<SendMessageResponse>;
83
+ /**
84
+ * Quick method to get user information
85
+ */
86
+ getUserInfo(accessToken: string, userId: string): Promise<UserInfo>;
87
+ /**
88
+ * Quick method to get user list
89
+ */
90
+ getUserList(accessToken: string, request: UserListRequest): Promise<any>;
91
+ /**
92
+ * Quick method to get all followers
93
+ */
94
+ getFollowers(accessToken: string): Promise<any>;
95
+ /**
96
+ * Quick method to register webhook handlers
97
+ */
98
+ /**
99
+ * Quick method to process webhook
100
+ */
101
+ /**
102
+ * Create OA authorization URL
103
+ */
104
+ createOAAuthUrl(redirectUri: string, state?: string): string;
105
+ /**
106
+ * Create Social authorization URL
107
+ */
108
+ createSocialAuthUrl(redirectUri: string, state?: string): string;
109
+ /**
110
+ * Generate PKCE for Social API
111
+ */
112
+ generatePKCE(): import("./types/auth").PKCEConfig;
113
+ /**
114
+ * Validate access token
115
+ */
116
+ validateAccessToken(accessToken: string, scope?: "oa" | "social"): Promise<boolean>;
117
+ /**
118
+ * Get SDK version
119
+ */
120
+ getVersion(): string;
121
+ /**
122
+ * Get SDK configuration (without sensitive data)
123
+ */
124
+ getConfig(): Omit<Required<ZaloSDKConfig>, "appSecret">;
125
+ /**
126
+ * Enable or disable debug logging
127
+ */
128
+ setDebug(enabled: boolean): void;
129
+ /**
130
+ * Test SDK connectivity
131
+ */
132
+ testConnection(): Promise<boolean>;
133
+ /**
134
+ * Get available API endpoints
135
+ */
136
+ getEndpoints(): {
137
+ auth: {
138
+ oaAuth: string;
139
+ socialAuth: string;
140
+ oaToken: string;
141
+ socialToken: string;
142
+ refreshOaToken: string;
143
+ refreshSocialToken: string;
144
+ };
145
+ oa: {
146
+ info: string;
147
+ quota: string;
148
+ quotaMessage: string;
149
+ };
150
+ user: {
151
+ info: string;
152
+ list: string;
153
+ update: string;
154
+ tags: string;
155
+ addTag: string;
156
+ removeTag: string;
157
+ };
158
+ message: {
159
+ send: string;
160
+ sendTransaction: string;
161
+ sendPromotion: string;
162
+ sendAnonymous: string;
163
+ };
164
+ upload: {
165
+ image: string;
166
+ file: string;
167
+ };
168
+ article: {
169
+ create: string;
170
+ update: string;
171
+ remove: string;
172
+ verify: string;
173
+ detail: string;
174
+ list: string;
175
+ uploadVideo: string;
176
+ checkVideoStatus: string;
177
+ videoInfo: string;
178
+ };
179
+ group: {
180
+ create: string;
181
+ list: string;
182
+ detail: string;
183
+ update: string;
184
+ updateAvatar: string;
185
+ delete: string;
186
+ members: string;
187
+ invite: string;
188
+ pendingMembers: string;
189
+ acceptPending: string;
190
+ rejectPending: string;
191
+ removeMembers: string;
192
+ addAdmins: string;
193
+ removeAdmins: string;
194
+ sendMessage: string;
195
+ conversation: string;
196
+ recentChats: string;
197
+ quota: string;
198
+ };
199
+ zns: {
200
+ templates: string;
201
+ templateDetail: string;
202
+ createTemplate: string;
203
+ updateTemplate: string;
204
+ deleteTemplate: string;
205
+ sendMessage: string;
206
+ sendHashPhone: string;
207
+ sendJourney: string;
208
+ uploadImage: string;
209
+ quality: string;
210
+ };
211
+ social: {
212
+ userInfo: string;
213
+ };
214
+ };
215
+ /**
216
+ * Make a custom API request (advanced usage)
217
+ */
218
+ customRequest<T = any>(method: "GET" | "POST" | "PUT" | "DELETE", endpoint: string, accessToken: string, data?: any, params?: Record<string, any>): Promise<T>;
219
+ /**
220
+ * Upload file to Zalo API
221
+ */
222
+ uploadFile<T = any>(endpoint: string, accessToken: string, file: Buffer | NodeJS.ReadableStream, filename: string, additionalFields?: Record<string, any>): Promise<T>;
223
+ /**
224
+ * Dispose SDK resources
225
+ */
226
+ dispose(): void;
227
+ }
228
+ //# sourceMappingURL=zalo-sdk.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zalo-sdk.d.ts","sourceRoot":"","sources":["../src/zalo-sdk.ts"],"names":[],"mappings":"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"}