@v-miniapp/apis 1.0.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +60 -0
- package/dist/api/index.d.ts +101 -0
- package/dist/api/index.js +130 -0
- package/dist/async.d.ts +2 -0
- package/dist/async.js +4 -0
- package/dist/global.d.ts +7 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +8 -0
- package/dist/types/api/alert.d.ts +15 -0
- package/dist/types/api/bio-metrics/create-key.d.ts +15 -0
- package/dist/types/api/bio-metrics/create-signature.d.ts +20 -0
- package/dist/types/api/bio-metrics/delete-key.d.ts +12 -0
- package/dist/types/api/bio-metrics/index.d.ts +6 -0
- package/dist/types/api/bio-metrics/is-supported.d.ts +19 -0
- package/dist/types/api/bio-metrics/key-exists.d.ts +12 -0
- package/dist/types/api/bio-metrics/local-auth.d.ts +15 -0
- package/dist/types/api/choose-image.d.ts +42 -0
- package/dist/types/api/clear-storage.d.ts +8 -0
- package/dist/types/api/cloud/upload-file.d.ts +19 -0
- package/dist/types/api/compress-image.d.ts +29 -0
- package/dist/types/api/confirm.d.ts +24 -0
- package/dist/types/api/download-file.d.ts +20 -0
- package/dist/types/api/exit-miniapp.d.ts +8 -0
- package/dist/types/api/get-auth-code.d.ts +26 -0
- package/dist/types/api/get-beacon-discovery-status.d.ts +13 -0
- package/dist/types/api/get-clipboard.d.ts +15 -0
- package/dist/types/api/get-default-payment-method.d.ts +16 -0
- package/dist/types/api/get-image-info.d.ts +30 -0
- package/dist/types/api/get-location.d.ts +32 -0
- package/dist/types/api/get-setting.d.ts +15 -0
- package/dist/types/api/get-storage-info.d.ts +19 -0
- package/dist/types/api/get-storage.d.ts +19 -0
- package/dist/types/api/get-system-info.d.ts +52 -0
- package/dist/types/api/get-user-info.d.ts +21 -0
- package/dist/types/api/hide-loading.d.ts +8 -0
- package/dist/types/api/index.d.ts +43 -0
- package/dist/types/api/init-payment.d.ts +88 -0
- package/dist/types/api/make-phone-call.d.ts +11 -0
- package/dist/types/api/off-beacon-discovery.d.ts +2 -0
- package/dist/types/api/on-beacon-discovery.d.ts +15 -0
- package/dist/types/api/open-app-setting.d.ts +8 -0
- package/dist/types/api/open-native-app-store.d.ts +20 -0
- package/dist/types/api/open-setting.d.ts +15 -0
- package/dist/types/api/preview-image.d.ts +17 -0
- package/dist/types/api/prompt.d.ts +31 -0
- package/dist/types/api/remove-storage.d.ts +11 -0
- package/dist/types/api/request.d.ts +29 -0
- package/dist/types/api/save-image.d.ts +11 -0
- package/dist/types/api/scan.d.ts +14 -0
- package/dist/types/api/set-clipboard.d.ts +11 -0
- package/dist/types/api/set-storage.d.ts +17 -0
- package/dist/types/api/share-app.d.ts +18 -0
- package/dist/types/api/show-action-sheet.d.ts +22 -0
- package/dist/types/api/show-loading.d.ts +11 -0
- package/dist/types/api/show-payment-method.d.ts +40 -0
- package/dist/types/api/show-toast.d.ts +21 -0
- package/dist/types/api/start-beacon-discovery.d.ts +11 -0
- package/dist/types/api/stop-beacon-discovery.d.ts +8 -0
- package/dist/types/api/upload-file.d.ts +29 -0
- package/dist/types/common.d.ts +12 -0
- package/dist/types/vsf.d.ts +664 -0
- package/dist/utils/api.d.ts +4 -0
- package/dist/utils/api.js +10 -0
- package/package.json +45 -0
|
@@ -0,0 +1,664 @@
|
|
|
1
|
+
import { IVsfGetSystemInfo } from './api/get-system-info';
|
|
2
|
+
import { IVsfClearStorage } from './api/clear-storage';
|
|
3
|
+
import { IVsfGetClipboard } from './api/get-clipboard';
|
|
4
|
+
import { IVsfSetClipboard } from './api/set-clipboard';
|
|
5
|
+
import { IVsfExitMiniApp } from './api/exit-miniapp';
|
|
6
|
+
import { IVsfGetSetting } from './api/get-setting';
|
|
7
|
+
import { IVsfOpenSetting } from './api/open-setting';
|
|
8
|
+
import { IVsfOpenAppSetting } from './api/open-app-setting';
|
|
9
|
+
import { IVsfOpenNativeAppStore } from './api/open-native-app-store';
|
|
10
|
+
import { IVsfShareApp } from './api/share-app';
|
|
11
|
+
import { IVsfSetStorage } from './api/set-storage';
|
|
12
|
+
import { IVsfGetStorage } from './api/get-storage';
|
|
13
|
+
import { IVsfRemoveStorage } from './api/remove-storage';
|
|
14
|
+
import { IVsfGetStorageInfo } from './api/get-storage-info';
|
|
15
|
+
import { IVsfAlert } from './api/alert';
|
|
16
|
+
import { IVsfConfirm } from './api/confirm';
|
|
17
|
+
import { IVsfPrompt } from './api/prompt';
|
|
18
|
+
import { IVsfShowToast } from './api/show-toast';
|
|
19
|
+
import { IVsfShowLoading } from './api/show-loading';
|
|
20
|
+
import { IVsfShowActionSheet } from './api/show-action-sheet';
|
|
21
|
+
import { IVsfChooseImage } from './api/choose-image';
|
|
22
|
+
import { IVsfGetImageInfo } from './api/get-image-info';
|
|
23
|
+
import { IVsfCompressImage } from './api/compress-image';
|
|
24
|
+
import { IVsfRequest } from './api/request';
|
|
25
|
+
import { IVsfDownloadFile } from './api/download-file';
|
|
26
|
+
import { IVsfUploadFile } from './api/upload-file';
|
|
27
|
+
import { IVsfGetLocation } from './api/get-location';
|
|
28
|
+
import { IVsfScan } from './api/scan';
|
|
29
|
+
import { IVsfMakePhoneCall } from './api/make-phone-call';
|
|
30
|
+
import { IVsfPreviewImage } from './api/preview-image';
|
|
31
|
+
import { IVsfSaveImage } from './api/save-image';
|
|
32
|
+
import { IVsfGetAuthCode } from './api/get-auth-code';
|
|
33
|
+
import { IVsfGetUserInfo } from './api/get-user-info';
|
|
34
|
+
import { IVsfInitPayment } from './api/init-payment';
|
|
35
|
+
import { IVsfShowPaymentMethod } from './api/show-payment-method';
|
|
36
|
+
import { IVsfGetDefaultPaymentMethod } from './api/get-default-payment-method';
|
|
37
|
+
import { IVsfOnBeaconBiscovery } from './api/on-beacon-discovery';
|
|
38
|
+
import { IVsfStartBeaconDiscovery } from './api/start-beacon-discovery';
|
|
39
|
+
import { IVsfStopBeaconDiscovery } from './api/stop-beacon-discovery';
|
|
40
|
+
import { IVsfOffBeaconDiscovery } from './api/off-beacon-discovery';
|
|
41
|
+
import { IVsfGetBeaconDiscoveryStatus } from './api/get-beacon-discovery-status';
|
|
42
|
+
import { IVsfBioMetricsLocalAuth } from './api/bio-metrics/local-auth';
|
|
43
|
+
import { IVsfBioMetricsIsSupported } from './api/bio-metrics/is-supported';
|
|
44
|
+
import { IVsfBioMetricsKeyExists } from './api/bio-metrics/key-exists';
|
|
45
|
+
import { IVsfBioMetricsCreateKey } from './api/bio-metrics/create-key';
|
|
46
|
+
import { IVsfBioMetricsCreateSignature } from './api/bio-metrics/create-signature';
|
|
47
|
+
import { IVsfBioMetricsDeleteKey } from './api/bio-metrics/delete-key';
|
|
48
|
+
import { IVsfHideLoading } from './api';
|
|
49
|
+
/**
|
|
50
|
+
* V-App Super Framework (VSF) API Interface
|
|
51
|
+
*
|
|
52
|
+
* Cung cấp quyền truy cập vào các tính năng native của thiết bị và nền tảng V-App.
|
|
53
|
+
* Tất cả API sử dụng callback pattern với `success`, `fail`, và `complete`.
|
|
54
|
+
*/
|
|
55
|
+
export type IVsf = {
|
|
56
|
+
/**
|
|
57
|
+
* Lấy thông tin hệ thống và thiết bị.
|
|
58
|
+
*
|
|
59
|
+
* @param options - Tham số cấu hình
|
|
60
|
+
* @param options.keys - `Array<keyof SystemInfo>` (tùy chọn) - Các thuộc tính cần lấy. Nếu không truyền sẽ lấy tất cả
|
|
61
|
+
* @param options.success - `(res) => void` - Callback khi thành công
|
|
62
|
+
* - `res.app`: `string` - Tên super app (VD: V-app)
|
|
63
|
+
* - `res.brand`: `string` - Nhãn hiệu thiết bị (iPhone, Samsung,...)
|
|
64
|
+
* - `res.currentBattery`: `number` - Mức pin hiện tại (0-1)
|
|
65
|
+
* - `res.model`: `string` - Model thiết bị
|
|
66
|
+
* - `res.platform`: `'ios' | 'android' | 'macos' | 'windows' | 'web' | 'native'`
|
|
67
|
+
* - `res.system`: `'Android' | 'iOS' | 'iPhone OS' | 'iPadOS'`
|
|
68
|
+
* - `res.version`: `string` - Phiên bản OS
|
|
69
|
+
* - `res.hostVersion`: `string` - Phiên bản V App
|
|
70
|
+
* - `res.runtimeVersion`: `string` - Phiên bản runtime
|
|
71
|
+
* - `res.freeStorage`: `number` - Dung lượng trống (bytes)
|
|
72
|
+
* - `res.screenWidth/screenHeight`: `number` - Kích thước màn hình (pixel)
|
|
73
|
+
* - `res.windowWidth/windowHeight`: `number` - Kích thước cửa sổ (pixel)
|
|
74
|
+
* - `res.titleBarHeight/statusBarHeight`: `number` - Chiều cao bar (pixel)
|
|
75
|
+
* - `res.locale`: `'vi' | 'en'` - Ngôn ngữ
|
|
76
|
+
* - `res.deviceId`: `string` - UUID thiết bị
|
|
77
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
78
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
79
|
+
*/
|
|
80
|
+
getSystemInfo: IVsfGetSystemInfo;
|
|
81
|
+
/**
|
|
82
|
+
* Xóa toàn bộ dữ liệu trong local storage.
|
|
83
|
+
*
|
|
84
|
+
* @param options - Tham số cấu hình
|
|
85
|
+
* @param options.success - `() => void` - Callback khi xóa thành công
|
|
86
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
87
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
88
|
+
*/
|
|
89
|
+
clearStorage: IVsfClearStorage;
|
|
90
|
+
/**
|
|
91
|
+
* Lấy nội dung từ clipboard của thiết bị.
|
|
92
|
+
*
|
|
93
|
+
* @param options - Tham số cấu hình
|
|
94
|
+
* @param options.success - `(res) => void` - Callback khi thành công
|
|
95
|
+
* - `res.text`: `string` - Nội dung text trong clipboard
|
|
96
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
97
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
98
|
+
*/
|
|
99
|
+
getClipboard: IVsfGetClipboard;
|
|
100
|
+
/**
|
|
101
|
+
* Sao chép nội dung vào clipboard của thiết bị.
|
|
102
|
+
*
|
|
103
|
+
* @param options - Tham số cấu hình
|
|
104
|
+
* @param options.text - `string` (bắt buộc) - Nội dung text cần sao chép
|
|
105
|
+
* @param options.success - `() => void` - Callback khi sao chép thành công
|
|
106
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
107
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
108
|
+
*/
|
|
109
|
+
setClipboard: IVsfSetClipboard;
|
|
110
|
+
/**
|
|
111
|
+
* Thoát mini app hiện tại và quay về host app.
|
|
112
|
+
*
|
|
113
|
+
* @param options - Tham số cấu hình
|
|
114
|
+
* @param options.success - `() => void` - Callback khi thành công
|
|
115
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
116
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
117
|
+
*/
|
|
118
|
+
exitMiniApp: IVsfExitMiniApp;
|
|
119
|
+
/**
|
|
120
|
+
* Lấy cài đặt quyền hiện tại của mini app.
|
|
121
|
+
*
|
|
122
|
+
* @param options - Tham số cấu hình
|
|
123
|
+
* @param options.success - `(res) => void` - Callback khi thành công
|
|
124
|
+
* - `res.authSetting`: `Record<string, boolean>` - Trạng thái các quyền đã được cấp
|
|
125
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
126
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
127
|
+
*/
|
|
128
|
+
getSetting: IVsfGetSetting;
|
|
129
|
+
/**
|
|
130
|
+
* Ẩn loading hiện tại.
|
|
131
|
+
*
|
|
132
|
+
* @param options - Tham số cấu hình
|
|
133
|
+
* @param options.success - `() => void` - Callback khi thành công
|
|
134
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
135
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
136
|
+
*/
|
|
137
|
+
hideLoading: IVsfHideLoading;
|
|
138
|
+
/**
|
|
139
|
+
* Mở trang cài đặt quyền của mini app.
|
|
140
|
+
*
|
|
141
|
+
* @param options - Tham số cấu hình
|
|
142
|
+
* @param options.success - `(res) => void` - Callback khi thành công
|
|
143
|
+
* - `res.authSetting`: `Record<string, boolean>` - Trạng thái quyền sau khi thay đổi
|
|
144
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
145
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
146
|
+
*/
|
|
147
|
+
openSetting: IVsfOpenSetting;
|
|
148
|
+
/**
|
|
149
|
+
* Mở trang cài đặt ứng dụng của thiết bị cho host app.
|
|
150
|
+
*
|
|
151
|
+
* @param options - Tham số cấu hình
|
|
152
|
+
* @param options.success - `() => void` - Callback khi thành công
|
|
153
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
154
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
155
|
+
*/
|
|
156
|
+
openAppSetting: IVsfOpenAppSetting;
|
|
157
|
+
/**
|
|
158
|
+
* Mở trang app store native (App Store/Google Play).
|
|
159
|
+
*
|
|
160
|
+
* @param options - Tham số cấu hình
|
|
161
|
+
* @param options.appleStoreId - `string` (bắt buộc) - ID ứng dụng trên Apple App Store
|
|
162
|
+
* @param options.googlePlayId - `string` (bắt buộc) - ID ứng dụng trên Google Play Store
|
|
163
|
+
* @param options.success - `(res: boolean) => void` - Callback khi thành công
|
|
164
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
165
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
166
|
+
*/
|
|
167
|
+
openNativeAppStore: IVsfOpenNativeAppStore;
|
|
168
|
+
/**
|
|
169
|
+
* Chia sẻ mini app với người khác sử dụng chức năng share native.
|
|
170
|
+
*
|
|
171
|
+
* @param options - Tham số cấu hình
|
|
172
|
+
* @param options.title - `string` (tùy chọn) - Tiêu đề chia sẻ
|
|
173
|
+
* @param options.desc - `string` (tùy chọn) - Mô tả chia sẻ
|
|
174
|
+
* @param options.path - `string` (tùy chọn) - Đường dẫn trong miniapp
|
|
175
|
+
* @param options.url - `string` (tùy chọn) - URL chia sẻ
|
|
176
|
+
* @param options.success - `() => void` - Callback khi chia sẻ thành công
|
|
177
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
178
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
179
|
+
*/
|
|
180
|
+
shareApp: IVsfShareApp;
|
|
181
|
+
/**
|
|
182
|
+
* Lưu dữ liệu vào local storage với key được chỉ định.
|
|
183
|
+
*
|
|
184
|
+
* @param options - Tham số cấu hình
|
|
185
|
+
* @param options.key - `string` (bắt buộc) - Key để lưu dữ liệu
|
|
186
|
+
* @param options.data - `string | object` (bắt buộc) - Dữ liệu cần lưu
|
|
187
|
+
* @param options.success - `() => void` - Callback khi lưu thành công
|
|
188
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
189
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
190
|
+
*/
|
|
191
|
+
setStorage: IVsfSetStorage;
|
|
192
|
+
/**
|
|
193
|
+
* Lấy dữ liệu từ local storage theo key.
|
|
194
|
+
*
|
|
195
|
+
* @param options - Tham số cấu hình
|
|
196
|
+
* @param options.key - `string` (bắt buộc) - Key của dữ liệu cần lấy
|
|
197
|
+
* @param options.success - `(res) => void` - Callback khi thành công
|
|
198
|
+
* - `res.data`: `string | object` - Dữ liệu được lưu trữ
|
|
199
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
200
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
201
|
+
*/
|
|
202
|
+
getStorage: IVsfGetStorage;
|
|
203
|
+
/**
|
|
204
|
+
* Xóa dữ liệu khỏi local storage theo key.
|
|
205
|
+
*
|
|
206
|
+
* @param options - Tham số cấu hình
|
|
207
|
+
* @param options.key - `string` (bắt buộc) - Key của dữ liệu cần xóa
|
|
208
|
+
* @param options.success - `() => void` - Callback khi xóa thành công
|
|
209
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
210
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
211
|
+
*/
|
|
212
|
+
removeStorage: IVsfRemoveStorage;
|
|
213
|
+
/**
|
|
214
|
+
* Lấy thông tin về dung lượng local storage đang sử dụng.
|
|
215
|
+
*
|
|
216
|
+
* @param options - Tham số cấu hình
|
|
217
|
+
* @param options.success - `(res) => void` - Callback khi thành công
|
|
218
|
+
* - `res.keys`: `string[]` - Danh sách các key đang lưu
|
|
219
|
+
* - `res.currentSize`: `number` - Dung lượng đang sử dụng (bytes)
|
|
220
|
+
* - `res.limitSize`: `number` - Dung lượng tối đa (bytes)
|
|
221
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
222
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
223
|
+
*/
|
|
224
|
+
getStorageInfo: IVsfGetStorageInfo;
|
|
225
|
+
/**
|
|
226
|
+
* Hiển thị hộp thoại thông báo (alert).
|
|
227
|
+
*
|
|
228
|
+
* @param options - Tham số cấu hình
|
|
229
|
+
* @param options.title - `string` (tùy chọn) - Tiêu đề hộp thoại
|
|
230
|
+
* @param options.content - `string` (tùy chọn) - Nội dung hộp thoại
|
|
231
|
+
* @param options.buttonText - `string` (tùy chọn) - Text hiển thị trên nút bấm
|
|
232
|
+
* @param options.success - `() => void` - Callback khi đóng alert
|
|
233
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
234
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
235
|
+
*/
|
|
236
|
+
alert: IVsfAlert;
|
|
237
|
+
/**
|
|
238
|
+
* Hiển thị hộp thoại xác nhận với nút OK/Hủy.
|
|
239
|
+
*
|
|
240
|
+
* @param options - Tham số cấu hình
|
|
241
|
+
* @param options.title - `string` (tùy chọn) - Tiêu đề hộp thoại
|
|
242
|
+
* @param options.content - `string` (tùy chọn) - Nội dung hộp thoại
|
|
243
|
+
* @param options.confirmButtonText - `string` (tùy chọn) - Text nút xác nhận
|
|
244
|
+
* @param options.cancelButtonText - `string` (tùy chọn) - Text nút hủy
|
|
245
|
+
* @param options.success - `(res) => void` - Callback khi người dùng chọn
|
|
246
|
+
* - `res.confirm`: `boolean` - `true` nếu bấm xác nhận, `false` nếu bấm hủy
|
|
247
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
248
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
249
|
+
*/
|
|
250
|
+
confirm: IVsfConfirm;
|
|
251
|
+
/**
|
|
252
|
+
* Hiển thị hộp thoại nhập liệu (prompt).
|
|
253
|
+
*
|
|
254
|
+
* @param options - Tham số cấu hình
|
|
255
|
+
* @param options.title - `string` (tùy chọn) - Tiêu đề hộp thoại
|
|
256
|
+
* @param options.message - `string` (tùy chọn) - Thông điệp hiển thị
|
|
257
|
+
* @param options.placeholder - `string` (tùy chọn) - Placeholder cho ô nhập
|
|
258
|
+
* @param options.okButton - `string` (tùy chọn) - Text nút OK
|
|
259
|
+
* @param options.cancelButton - `string` (tùy chọn) - Text nút Cancel
|
|
260
|
+
* @param options.success - `(res) => void` - Callback khi người dùng chọn
|
|
261
|
+
* - `res.ok`: `boolean` - `true` nếu bấm OK, `false` nếu bấm Cancel
|
|
262
|
+
* - `res.inputValue`: `string` - Giá trị người dùng đã nhập
|
|
263
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
264
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
265
|
+
*/
|
|
266
|
+
prompt: IVsfPrompt;
|
|
267
|
+
/**
|
|
268
|
+
* Hiển thị thông báo toast.
|
|
269
|
+
*
|
|
270
|
+
* @param options - Tham số cấu hình
|
|
271
|
+
* @param options.type - `string` (tùy chọn) - Loại toast: `'success'`, `'fail'`, `'none'`,...
|
|
272
|
+
* @param options.content - `string` (tùy chọn) - Nội dung hiển thị
|
|
273
|
+
* @param options.buttonText - `string` (tùy chọn) - Text hiển thị trên nút
|
|
274
|
+
* @param options.duration - `number` (tùy chọn) - Thời gian hiển thị (ms)
|
|
275
|
+
* @param options.success - `() => void` - Callback khi hiển thị thành công
|
|
276
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
277
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
278
|
+
*/
|
|
279
|
+
showToast: IVsfShowToast;
|
|
280
|
+
/**
|
|
281
|
+
* Hiển thị indicator loading.
|
|
282
|
+
*
|
|
283
|
+
* @param options - Tham số cấu hình
|
|
284
|
+
* @param options.content - `string` (tùy chọn) - Nội dung hiển thị kèm loading
|
|
285
|
+
* @param options.success - `() => void` - Callback khi hiển thị thành công
|
|
286
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
287
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
288
|
+
*/
|
|
289
|
+
showLoading: IVsfShowLoading;
|
|
290
|
+
/**
|
|
291
|
+
* Hiển thị action sheet với nhiều tùy chọn.
|
|
292
|
+
*
|
|
293
|
+
* @param options - Tham số cấu hình
|
|
294
|
+
* @param options.title - `string` (tùy chọn) - Tiêu đề action sheet
|
|
295
|
+
* @param options.items - `string[]` (bắt buộc) - Danh sách các mục để chọn
|
|
296
|
+
* @param options.cancelButton - `string` (tùy chọn) - Text nút hủy
|
|
297
|
+
* @param options.success - `(res) => void` - Callback khi người dùng chọn
|
|
298
|
+
* - `res.index`: `number` - Vị trí mục được chọn (0-indexed)
|
|
299
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại/hủy
|
|
300
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
301
|
+
*/
|
|
302
|
+
showActionSheet: IVsfShowActionSheet;
|
|
303
|
+
/**
|
|
304
|
+
* Mở trình chọn ảnh từ thư viện hoặc camera.
|
|
305
|
+
*
|
|
306
|
+
* @param options - Tham số cấu hình
|
|
307
|
+
* @param options.count - `number` (tùy chọn) - Số lượng tối đa ảnh có thể chọn. Mặc định: `1`
|
|
308
|
+
* @param options.includeBase64 - `boolean` (tùy chọn) - Nếu `true`, kết quả trả về sẽ có thêm data base64. Mặc định: `false`
|
|
309
|
+
* @param options.sourceType - `Array<'camera' | 'album'>` (tùy chọn) - Nguồn lấy ảnh. Mặc định: `['camera', 'album']`
|
|
310
|
+
* @param options.success - `(res) => void` - Callback khi chọn ảnh thành công
|
|
311
|
+
* - `res.filePaths`: `string[]` - Đường dẫn các ảnh được chọn (dùng để display hoặc upload)
|
|
312
|
+
* - `res.tempFiles`: `Array<{path, size, width, height, data?}>` - Thông tin chi tiết từng ảnh
|
|
313
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
314
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất (dù thành công hay thất bại)
|
|
315
|
+
*/
|
|
316
|
+
chooseImage: IVsfChooseImage;
|
|
317
|
+
/**
|
|
318
|
+
* Lấy thông tin của file ảnh.
|
|
319
|
+
*
|
|
320
|
+
* @param options - Tham số cấu hình
|
|
321
|
+
* @param options.src - `string` (bắt buộc) - Đường dẫn hoặc URL của ảnh
|
|
322
|
+
* @param options.success - `(res) => void` - Callback khi thành công
|
|
323
|
+
* - `res.width`: `number` - Chiều rộng ảnh (pixel)
|
|
324
|
+
* - `res.height`: `number` - Chiều cao ảnh (pixel)
|
|
325
|
+
* - `res.orientation`: `'up' | 'down' | 'left' | 'right' | 'up-mirrored' | 'down-mirrored' | 'left-mirrored' | 'right-mirrored'`
|
|
326
|
+
* - `res.path`: `string` - Đường dẫn ảnh
|
|
327
|
+
* - `res.type`: `string` - Loại ảnh (mime type)
|
|
328
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
329
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
330
|
+
*/
|
|
331
|
+
getImageInfo: IVsfGetImageInfo;
|
|
332
|
+
/**
|
|
333
|
+
* Nén ảnh để giảm dung lượng file.
|
|
334
|
+
*
|
|
335
|
+
* @param options - Tham số cấu hình
|
|
336
|
+
* @param options.filePaths - `string[]` (bắt buộc) - Danh sách đường dẫn các ảnh cần nén
|
|
337
|
+
* @param options.options - `object` (tùy chọn) - Tùy chọn nén
|
|
338
|
+
* - `options.quality`: `number` - Chất lượng ảnh sau khi nén (0-100)
|
|
339
|
+
* - `options.maxWidth`: `number` - Chiều rộng tối đa (pixel)
|
|
340
|
+
* @param options.success - `(res) => void` - Callback khi thành công
|
|
341
|
+
* - `res.filePaths`: `string[]` - Danh sách đường dẫn các ảnh đã nén
|
|
342
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
343
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
344
|
+
*/
|
|
345
|
+
compressImage: IVsfCompressImage;
|
|
346
|
+
/**
|
|
347
|
+
* Thực hiện các network request HTTP/HTTPS.
|
|
348
|
+
*
|
|
349
|
+
* Do mini app chạy trong môi trường JavaScript cô lập không có `fetch` hay `XMLHttpRequest`,
|
|
350
|
+
* sử dụng API này cho tất cả network request. Chỉ hỗ trợ HTTPS.
|
|
351
|
+
*
|
|
352
|
+
* @param options - Tham số cấu hình
|
|
353
|
+
* @param options.url - `string` (bắt buộc) - Đường dẫn muốn gọi tới
|
|
354
|
+
* @param options.headers - `object` (tùy chọn) - Cấu hình headers
|
|
355
|
+
* @param options.method - `string` (tùy chọn) - Phương thức: `'GET'`, `'POST'`, `'PUT'`, `'DELETE'`,... Mặc định: `'GET'`
|
|
356
|
+
* @param options.data - `object` (tùy chọn) - Data kèm theo trong request
|
|
357
|
+
* @param options.timeout - `number` (tùy chọn) - Timeout (ms). Mặc định: `30000` (30s)
|
|
358
|
+
* @param options.dataType - `string` (tùy chọn) - Định dạng response: `'JSON'`, `'text'`, `'base64'`, `'arraybuffer'`. Mặc định: `'JSON'`
|
|
359
|
+
* @param options.includeHeader - `boolean` (tùy chọn) - Có bao gồm headers trong response không
|
|
360
|
+
* @param options.success - `(res) => void` - Callback khi thành công
|
|
361
|
+
* - `res.data`: `string` - Dữ liệu trả về (định dạng phụ thuộc dataType)
|
|
362
|
+
* - `res.headers`: `object` - Headers trả về (nếu includeHeader: true)
|
|
363
|
+
* - `res.status`: `number` - Response code. Mặc định: `200`
|
|
364
|
+
* - `res.statusText`: `string` - Thông điệp tương ứng. Mặc định: `'OK'`
|
|
365
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
366
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
367
|
+
*/
|
|
368
|
+
request: IVsfRequest;
|
|
369
|
+
/**
|
|
370
|
+
* Download file từ URL và lưu tạm trên thiết bị.
|
|
371
|
+
*
|
|
372
|
+
* Khác với `apis.request` trả về raw data, `downloadFile` lưu file và trả về đường dẫn tạm thời.
|
|
373
|
+
*
|
|
374
|
+
* @param options - Tham số cấu hình
|
|
375
|
+
* @param options.url - `string` (bắt buộc) - Đường dẫn của file muốn download
|
|
376
|
+
* @param options.headers - `object` (tùy chọn) - Cấu hình headers
|
|
377
|
+
* @param options.success - `(res) => void` - Callback khi thành công
|
|
378
|
+
* - `res.filePath`: `string` - Đường dẫn của file sau khi download
|
|
379
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
380
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
381
|
+
*/
|
|
382
|
+
downloadFile: IVsfDownloadFile;
|
|
383
|
+
/**
|
|
384
|
+
* Upload file từ thiết bị lên server.
|
|
385
|
+
*
|
|
386
|
+
* Chỉ hỗ trợ upload đường dẫn file tạm thời (từ `chooseImage` hoặc `downloadFile`).
|
|
387
|
+
*
|
|
388
|
+
* @param options - Tham số cấu hình
|
|
389
|
+
* @param options.url - `string` (bắt buộc) - Đường dẫn server muốn upload
|
|
390
|
+
* @param options.method - `string` (tùy chọn) - Phương thức. Mặc định: `'POST'`
|
|
391
|
+
* @param options.fileName - `string` (bắt buộc) - Tên file làm key trong form data
|
|
392
|
+
* @param options.filePath - `string` (tùy chọn) - Đường dẫn tạm thời của file
|
|
393
|
+
* @param options.filePaths - `string[]` (tùy chọn) - Mảng đường dẫn (upload multiple)
|
|
394
|
+
* @param options.formData - `object` (tùy chọn) - Các field khác của form
|
|
395
|
+
* @param options.fileType - `string` (bắt buộc) - Loại file: `'image'`, `'video'`, `'audio'`
|
|
396
|
+
* @param options.headers - `object` (tùy chọn) - Cấu hình headers
|
|
397
|
+
* @param options.success - `(res) => void` - Callback khi thành công
|
|
398
|
+
* - `res.data`: `string` - Dữ liệu trả về từ server
|
|
399
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
400
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
401
|
+
*/
|
|
402
|
+
uploadFile: IVsfUploadFile;
|
|
403
|
+
/**
|
|
404
|
+
* Lấy vị trí địa lý hiện tại của thiết bị.
|
|
405
|
+
*
|
|
406
|
+
* @param options - Tham số cấu hình
|
|
407
|
+
* @param options.cacheTimeout - `number` (tùy chọn) - Thời gian cache (giây). Mặc định: `30`
|
|
408
|
+
* @param options.type - `number` (tùy chọn) - Độ chính xác: `0` = WiFi (thấp), `1` = GPS (cao)
|
|
409
|
+
* @param options.success - `(res) => void` - Callback khi thành công
|
|
410
|
+
* - `res.latitude`: `number` - Vĩ độ
|
|
411
|
+
* - `res.longitude`: `number` - Kinh độ
|
|
412
|
+
* - `res.altitude`: `number` - Độ cao so với mực nước biển (mét)
|
|
413
|
+
* - `res.accuracy`: `number` - Độ chính xác vị trí (mét)
|
|
414
|
+
* - `res.altitudeAccuracy`: `number` - Độ chính xác độ cao (mét)
|
|
415
|
+
* - `res.heading`: `number` - Hướng di chuyển
|
|
416
|
+
* - `res.speed`: `number` - Tốc độ di chuyển (m/s)
|
|
417
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
418
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
419
|
+
*/
|
|
420
|
+
getLocation: IVsfGetLocation;
|
|
421
|
+
/**
|
|
422
|
+
* Mở trình quét mã vạch/QR code của thiết bị.
|
|
423
|
+
*
|
|
424
|
+
* @param options - Tham số cấu hình
|
|
425
|
+
* @param options.success - `(res: string) => void` - Callback khi quét thành công, trả về nội dung mã
|
|
426
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại/hủy
|
|
427
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
428
|
+
*/
|
|
429
|
+
scan: IVsfScan;
|
|
430
|
+
/**
|
|
431
|
+
* Thực hiện cuộc gọi điện thoại đến số được chỉ định.
|
|
432
|
+
*
|
|
433
|
+
* @param options - Tham số cấu hình
|
|
434
|
+
* @param options.number - `number` (bắt buộc) - Số điện thoại cần gọi
|
|
435
|
+
* @param options.success - `() => void` - Callback khi bắt đầu cuộc gọi
|
|
436
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
437
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
438
|
+
*/
|
|
439
|
+
makePhoneCall: IVsfMakePhoneCall;
|
|
440
|
+
/**
|
|
441
|
+
* Xem trước ảnh trong trình xem gallery toàn màn hình.
|
|
442
|
+
*
|
|
443
|
+
* @param options - Tham số cấu hình
|
|
444
|
+
* @param options.urls - `string[]` (bắt buộc) - Danh sách URL các ảnh cần xem
|
|
445
|
+
* @param options.current - `number` (tùy chọn) - Vị trí ảnh hiện tại (0-indexed)
|
|
446
|
+
* @param options.enablesavephoto - `boolean` (tùy chọn) - Cho phép lưu ảnh
|
|
447
|
+
* @param options.enableShowPhotoDownload - `boolean` (tùy chọn) - Hiển thị nút tải ảnh
|
|
448
|
+
* @param options.success - `() => void` - Callback khi mở thành công
|
|
449
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
450
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
451
|
+
*/
|
|
452
|
+
previewImage: IVsfPreviewImage;
|
|
453
|
+
/**
|
|
454
|
+
* Lưu ảnh vào thư viện ảnh của thiết bị.
|
|
455
|
+
*
|
|
456
|
+
* @param options - Tham số cấu hình
|
|
457
|
+
* @param options.url - `string` (bắt buộc) - Đường dẫn hoặc URL của ảnh cần lưu
|
|
458
|
+
* @param options.success - `() => void` - Callback khi lưu thành công
|
|
459
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
460
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
461
|
+
*/
|
|
462
|
+
saveImage: IVsfSaveImage;
|
|
463
|
+
/**
|
|
464
|
+
* Lấy mã xác thực (authorization code) cho việc đăng nhập người dùng.
|
|
465
|
+
*
|
|
466
|
+
* @param options - Tham số cấu hình
|
|
467
|
+
* @param options.scopes - `Array<'profile' | 'phone' | 'email'>` (tùy chọn) - Các scope quyền cần yêu cầu
|
|
468
|
+
* @param options.success - `(res) => void` - Callback khi thành công
|
|
469
|
+
* - `res.authCode`: `string` - Mã xác thực
|
|
470
|
+
* - `res.authSuccessScopes`: `string[]` - Các scope được cấp quyền
|
|
471
|
+
* - `res.authErrorScopes`: `Record<string, string>` - Các scope bị lỗi và lý do
|
|
472
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
473
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
474
|
+
*/
|
|
475
|
+
getAuthCode: IVsfGetAuthCode;
|
|
476
|
+
/**
|
|
477
|
+
* Lấy thông tin profile của người dùng hiện tại.
|
|
478
|
+
*
|
|
479
|
+
* @param options - Tham số cấu hình
|
|
480
|
+
* @param options.success - `(res) => void` - Callback khi thành công
|
|
481
|
+
* - `res.avatar`: `string` - URL ảnh đại diện
|
|
482
|
+
* - `res.name`: `string` - Tên người dùng
|
|
483
|
+
* - `res.gender`: `string` (tùy chọn) - Giới tính
|
|
484
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
485
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
486
|
+
*/
|
|
487
|
+
getUserInfo: IVsfGetUserInfo;
|
|
488
|
+
/**
|
|
489
|
+
* Khởi tạo và xử lý giao dịch thanh toán.
|
|
490
|
+
*
|
|
491
|
+
* **Luồng thanh toán:**
|
|
492
|
+
* 1. Gọi `apis.showPaymentMethod` để người dùng chọn phương thức thanh toán
|
|
493
|
+
* 2. Tạo đơn hàng trên backend (xem tài liệu Payment API)
|
|
494
|
+
* 3. Gọi `apis.initPayment` để khởi tạo thanh toán
|
|
495
|
+
*
|
|
496
|
+
* **Lưu ý:** Mỗi `orderId` chỉ được sử dụng một lần.
|
|
497
|
+
*
|
|
498
|
+
* @param options - Tham số cấu hình
|
|
499
|
+
* @param options.paymentApiKey - `string` (bắt buộc) - Payment API key tương ứng với điểm thanh toán
|
|
500
|
+
* @param options.orderInfo - `object` (bắt buộc) - Thông tin đơn hàng:
|
|
501
|
+
* - `amount`: `number` (bắt buộc) - Số tiền thanh toán
|
|
502
|
+
* - `currency`: `string` (bắt buộc) - Đơn vị tiền tệ (VD: `'VND'`)
|
|
503
|
+
* - `description`: `string` (bắt buộc) - Mô tả đơn hàng
|
|
504
|
+
* - `orderId`: `string` (bắt buộc) - Mã đơn hàng (unique, chỉ dùng 1 lần)
|
|
505
|
+
* - `referenceId`: `string` (bắt buộc) - Mã tham chiếu
|
|
506
|
+
* - `secureHash`: `string` (bắt buộc) - HMAC-SHA256 hash để verify
|
|
507
|
+
* - `paymentMethodCode`: `string` - Mã phương thức thanh toán
|
|
508
|
+
* - `providerId`: `string` - ID payment provider
|
|
509
|
+
* - `userPaymentMethodId`: `string` (tùy chọn) - ID phương thức đã liên kết
|
|
510
|
+
* - `paymentType`: `'2D' | '3D'` (tùy chọn) - Loại thanh toán. Mặc định: `'3D'`
|
|
511
|
+
* - `businessUnitId`: `string` (tùy chọn) - Mã cơ sở kinh doanh (bắt buộc trên production)
|
|
512
|
+
* - `branchId`: `string` (tùy chọn) - Mã chi nhánh (bắt buộc trên production)
|
|
513
|
+
* - `orderInfo`: `object` (bắt buộc) - Thông tin chi tiết đơn hàng
|
|
514
|
+
* @param options.success - `(res: string) => void` - Callback khi thành công (luôn là `'success'`)
|
|
515
|
+
* @param options.fail - `(error: string) => void` - Callback khi thất bại (error message)
|
|
516
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
517
|
+
*/
|
|
518
|
+
initPayment: IVsfInitPayment;
|
|
519
|
+
/**
|
|
520
|
+
* Hiển thị màn hình chọn phương thức thanh toán.
|
|
521
|
+
*
|
|
522
|
+
* @param options - Tham số cấu hình
|
|
523
|
+
* @param options.paymentApiKey - `string` (bắt buộc) - Payment API key
|
|
524
|
+
* @param options.amount - `number` (tùy chọn) - Giá trị đơn hàng để lọc phương thức
|
|
525
|
+
* @param options.success - `(res) => void` - Callback khi người dùng chọn xong
|
|
526
|
+
* - `res.category`: `string` - Danh mục phương thức
|
|
527
|
+
* - `res.code`: `string` - Mã phương thức thanh toán
|
|
528
|
+
* - `res.type`: `string` - Loại phương thức
|
|
529
|
+
* - `res.iconUrl`: `string` - URL icon
|
|
530
|
+
* - `res.name`: `string` - Tên phương thức
|
|
531
|
+
* - `res.providerId`: `string` - ID nhà cung cấp
|
|
532
|
+
* - `res.providerName`: `string` - Tên nhà cung cấp
|
|
533
|
+
* - `res.paymentMethodId`: `string` - ID phương thức
|
|
534
|
+
* - `res.userPaymentMethodId`: `string` - ID phương thức đã liên kết (nếu có)
|
|
535
|
+
* @param options.fail - `(error: string) => void` - Callback khi hủy/thất bại
|
|
536
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
537
|
+
*/
|
|
538
|
+
showPaymentMethod: IVsfShowPaymentMethod;
|
|
539
|
+
/**
|
|
540
|
+
* Lấy phương thức thanh toán mặc định của người dùng.
|
|
541
|
+
*
|
|
542
|
+
* @param options - Tham số cấu hình
|
|
543
|
+
* @param options.paymentApiKey - `string` (bắt buộc) - Payment API key
|
|
544
|
+
* @param options.success - `(res) => void` - Callback khi thành công (cùng format với showPaymentMethod)
|
|
545
|
+
* @param options.fail - `(error: string) => void` - Callback khi thất bại
|
|
546
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
547
|
+
*/
|
|
548
|
+
getDefaultPaymentMethod: IVsfGetDefaultPaymentMethod;
|
|
549
|
+
/**
|
|
550
|
+
* Đăng ký listener lắng nghe sự kiện phát hiện beacon.
|
|
551
|
+
*
|
|
552
|
+
* **Lưu ý:** Cùng callback reference được dùng để hủy đăng ký với `offBeaconDiscovery`.
|
|
553
|
+
*
|
|
554
|
+
* @param options - Tham số cấu hình
|
|
555
|
+
* @param options.callback - `(data: BeaconInfo) => void` (bắt buộc) - Listener được gọi mỗi khi tìm được beacon
|
|
556
|
+
* - `data.type`: `'iBeacon' | 'Eddystone'` - Loại beacon
|
|
557
|
+
* - `data.data`: `object` - Dữ liệu beacon (uuid, major, minor, rssi, distance,...)
|
|
558
|
+
*/
|
|
559
|
+
onBeaconDiscovery: IVsfOnBeaconBiscovery;
|
|
560
|
+
/**
|
|
561
|
+
* Bắt đầu quét các thiết bị beacon Bluetooth gần đó.
|
|
562
|
+
*
|
|
563
|
+
* **Lưu ý:** Cần người dùng cấp quyền truy cập Bluetooth và Location.
|
|
564
|
+
*
|
|
565
|
+
* @param options - Tham số cấu hình
|
|
566
|
+
* @param options.success - `() => void` - Callback khi bắt đầu quét thành công
|
|
567
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
568
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
569
|
+
*/
|
|
570
|
+
startBeaconDiscovery: IVsfStartBeaconDiscovery;
|
|
571
|
+
/**
|
|
572
|
+
* Dừng quét các thiết bị beacon Bluetooth.
|
|
573
|
+
*
|
|
574
|
+
* @param options - Tham số cấu hình
|
|
575
|
+
* @param options.success - `() => void` - Callback khi dừng thành công
|
|
576
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
577
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
578
|
+
*/
|
|
579
|
+
stopBeaconDiscovery: IVsfStopBeaconDiscovery;
|
|
580
|
+
/**
|
|
581
|
+
* Xóa listener lắng nghe beacon discovery.
|
|
582
|
+
*
|
|
583
|
+
* @param options - Tham số cấu hình
|
|
584
|
+
* @param options.callback - `() => void` (bắt buộc) - Listener cần xóa (cùng reference với onBeaconDiscovery)
|
|
585
|
+
*/
|
|
586
|
+
offBeaconDiscovery: IVsfOffBeaconDiscovery;
|
|
587
|
+
/**
|
|
588
|
+
* Lấy trạng thái quét beacon discovery hiện tại.
|
|
589
|
+
*
|
|
590
|
+
* @param options - Tham số cấu hình
|
|
591
|
+
* @param options.success - `(res) => void` - Callback khi thành công
|
|
592
|
+
* - `res.data`: `'initializing' | 'started' | 'stopped'` - Trạng thái hiện tại
|
|
593
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
594
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
595
|
+
*/
|
|
596
|
+
getBeaconDiscoveryStatus: IVsfGetBeaconDiscoveryStatus;
|
|
597
|
+
/**
|
|
598
|
+
* Các API xác thực sinh trắc học cho việc xác thực cục bộ an toàn và quản lý khóa mật mã.
|
|
599
|
+
*/
|
|
600
|
+
bioMetrics: {
|
|
601
|
+
/**
|
|
602
|
+
* Thực hiện xác thực sinh trắc học cục bộ (Face ID, Touch ID, vân tay).
|
|
603
|
+
*
|
|
604
|
+
* @param options - Tham số cấu hình
|
|
605
|
+
* @param options.content - `string` (bắt buộc) - Nội dung hiển thị khi yêu cầu xác thực
|
|
606
|
+
* @param options.success - `(res: boolean) => void` - Callback khi thành công (`true`)
|
|
607
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
608
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
609
|
+
*/
|
|
610
|
+
localAuth: IVsfBioMetricsLocalAuth;
|
|
611
|
+
/**
|
|
612
|
+
* Kiểm tra xem thiết bị có hỗ trợ xác thực sinh trắc học không.
|
|
613
|
+
*
|
|
614
|
+
* @param options - Tham số cấu hình
|
|
615
|
+
* @param options.success - `(res) => void` - Callback khi thành công
|
|
616
|
+
* - `res.isSupported`: `boolean` - Có hỗ trợ sinh trắc học không
|
|
617
|
+
* - `res.mode`: `string` (tùy chọn) - Chế độ: `'facial'`, `'fingerprint'`,...
|
|
618
|
+
* - `res.error`: `string` (tùy chọn) - Thông báo lỗi nếu có
|
|
619
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
620
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
621
|
+
*/
|
|
622
|
+
isSupported: IVsfBioMetricsIsSupported;
|
|
623
|
+
/**
|
|
624
|
+
* Kiểm tra xem khóa sinh trắc học có tồn tại không.
|
|
625
|
+
*
|
|
626
|
+
* @param options - Tham số cấu hình
|
|
627
|
+
* @param options.success - `(res: boolean) => void` - Callback khi thành công (`true` nếu tồn tại)
|
|
628
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
629
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
630
|
+
*/
|
|
631
|
+
keyExists: IVsfBioMetricsKeyExists;
|
|
632
|
+
/**
|
|
633
|
+
* Tạo khóa mật mã mới được bảo vệ bằng sinh trắc học.
|
|
634
|
+
*
|
|
635
|
+
* @param options - Tham số cấu hình
|
|
636
|
+
* @param options.success - `(res) => void` - Callback khi thành công
|
|
637
|
+
* - `res.publicKey`: `string` - Public key được tạo
|
|
638
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
639
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
640
|
+
*/
|
|
641
|
+
createKey: IVsfBioMetricsCreateKey;
|
|
642
|
+
/**
|
|
643
|
+
* Tạo chữ ký mật mã sử dụng khóa được bảo vệ bằng sinh trắc học.
|
|
644
|
+
*
|
|
645
|
+
* @param options - Tham số cấu hình
|
|
646
|
+
* @param options.challenge - `string` (bắt buộc) - Chuỗi challenge để ký
|
|
647
|
+
* @param options.content - `string` (bắt buộc) - Nội dung cần ký
|
|
648
|
+
* @param options.success - `(res) => void` - Callback khi thành công
|
|
649
|
+
* - `res.signature`: `string` - Chữ ký được tạo
|
|
650
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
651
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
652
|
+
*/
|
|
653
|
+
createSignature: IVsfBioMetricsCreateSignature;
|
|
654
|
+
/**
|
|
655
|
+
* Xóa khóa mật mã được bảo vệ bằng sinh trắc học.
|
|
656
|
+
*
|
|
657
|
+
* @param options - Tham số cấu hình
|
|
658
|
+
* @param options.success - `(res: boolean) => void` - Callback khi thành công (`true`)
|
|
659
|
+
* @param options.fail - `(error) => void` - Callback khi thất bại
|
|
660
|
+
* @param options.complete - `() => void` - Callback khi hoàn tất
|
|
661
|
+
*/
|
|
662
|
+
deleteKey: IVsfBioMetricsDeleteKey;
|
|
663
|
+
};
|
|
664
|
+
};
|