@thelacanians/vue-native-runtime 0.1.0 → 0.2.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.
- package/README.md +108 -0
- package/dist/index.cjs +1686 -59
- package/dist/index.d.cts +1942 -131
- package/dist/index.d.ts +1942 -131
- package/dist/index.js +1644 -49
- package/package.json +2 -2
package/dist/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _vue_runtime_core from '@vue/runtime-core';
|
|
2
|
-
import { Directive, App, Component } from '@vue/runtime-core';
|
|
2
|
+
import { PropType, Directive, App, Component } from '@vue/runtime-core';
|
|
3
3
|
export * from '@vue/runtime-core';
|
|
4
4
|
import * as _vue_reactivity from '@vue/reactivity';
|
|
5
5
|
|
|
@@ -34,13 +34,148 @@ declare function createTextNode(text: string): NativeNode;
|
|
|
34
34
|
* Comments are no-ops on the native side — they exist only so Vue
|
|
35
35
|
* can track insertion points for conditional/list rendering.
|
|
36
36
|
*/
|
|
37
|
-
declare function createCommentNode(
|
|
37
|
+
declare function createCommentNode(_text: string): NativeNode;
|
|
38
38
|
|
|
39
39
|
/**
|
|
40
40
|
* The Vue 3 custom renderer instance for native iOS views.
|
|
41
41
|
*/
|
|
42
42
|
declare const render: _vue_runtime_core.RootRenderFunction<NativeNode>;
|
|
43
43
|
|
|
44
|
+
/**
|
|
45
|
+
* Style type definitions for Vue Native components.
|
|
46
|
+
*
|
|
47
|
+
* These interfaces provide TypeScript autocompletion and validation for
|
|
48
|
+
* style objects passed to createStyleSheet() and component style props.
|
|
49
|
+
*/
|
|
50
|
+
type FlexDirection = 'row' | 'row-reverse' | 'column' | 'column-reverse';
|
|
51
|
+
type FlexWrap = 'wrap' | 'nowrap' | 'wrap-reverse';
|
|
52
|
+
type JustifyContent = 'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around' | 'space-evenly';
|
|
53
|
+
type AlignItems = 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline';
|
|
54
|
+
type AlignSelf = 'auto' | 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'baseline';
|
|
55
|
+
type AlignContent = 'flex-start' | 'flex-end' | 'center' | 'stretch' | 'space-between' | 'space-around';
|
|
56
|
+
type Position = 'relative' | 'absolute';
|
|
57
|
+
type Display = 'flex' | 'none';
|
|
58
|
+
type Overflow = 'visible' | 'hidden' | 'scroll';
|
|
59
|
+
type Direction = 'inherit' | 'ltr' | 'rtl';
|
|
60
|
+
type BorderStyle = 'solid' | 'dotted' | 'dashed';
|
|
61
|
+
type TextAlign = 'auto' | 'left' | 'right' | 'center' | 'justify';
|
|
62
|
+
type TextDecorationLine = 'none' | 'underline' | 'line-through' | 'underline line-through';
|
|
63
|
+
type TextDecorationStyle = 'solid' | 'double' | 'dotted' | 'dashed';
|
|
64
|
+
type TextTransform = 'none' | 'capitalize' | 'uppercase' | 'lowercase';
|
|
65
|
+
type FontStyle = 'normal' | 'italic';
|
|
66
|
+
type FontWeight = 'normal' | 'bold' | '100' | '200' | '300' | '400' | '500' | '600' | '700' | '800' | '900';
|
|
67
|
+
type ResizeMode = 'cover' | 'contain' | 'stretch' | 'center';
|
|
68
|
+
type ImportantForAccessibility = 'auto' | 'yes' | 'no' | 'no-hide-descendants';
|
|
69
|
+
interface ShadowOffset {
|
|
70
|
+
width: number;
|
|
71
|
+
height: number;
|
|
72
|
+
}
|
|
73
|
+
interface TransformValue {
|
|
74
|
+
translateX?: number;
|
|
75
|
+
translateY?: number;
|
|
76
|
+
scale?: number;
|
|
77
|
+
scaleX?: number;
|
|
78
|
+
scaleY?: number;
|
|
79
|
+
rotate?: string;
|
|
80
|
+
rotateX?: string;
|
|
81
|
+
rotateY?: string;
|
|
82
|
+
rotateZ?: string;
|
|
83
|
+
}
|
|
84
|
+
interface ViewStyle {
|
|
85
|
+
flex?: number;
|
|
86
|
+
flexDirection?: FlexDirection;
|
|
87
|
+
flexWrap?: FlexWrap;
|
|
88
|
+
flexGrow?: number;
|
|
89
|
+
flexShrink?: number;
|
|
90
|
+
flexBasis?: number | string;
|
|
91
|
+
justifyContent?: JustifyContent;
|
|
92
|
+
alignItems?: AlignItems;
|
|
93
|
+
alignSelf?: AlignSelf;
|
|
94
|
+
alignContent?: AlignContent;
|
|
95
|
+
position?: Position;
|
|
96
|
+
top?: number | string;
|
|
97
|
+
right?: number | string;
|
|
98
|
+
bottom?: number | string;
|
|
99
|
+
left?: number | string;
|
|
100
|
+
width?: number | string;
|
|
101
|
+
height?: number | string;
|
|
102
|
+
minWidth?: number | string;
|
|
103
|
+
minHeight?: number | string;
|
|
104
|
+
maxWidth?: number | string;
|
|
105
|
+
maxHeight?: number | string;
|
|
106
|
+
margin?: number | string;
|
|
107
|
+
marginTop?: number | string;
|
|
108
|
+
marginRight?: number | string;
|
|
109
|
+
marginBottom?: number | string;
|
|
110
|
+
marginLeft?: number | string;
|
|
111
|
+
marginHorizontal?: number | string;
|
|
112
|
+
marginVertical?: number | string;
|
|
113
|
+
padding?: number | string;
|
|
114
|
+
paddingTop?: number | string;
|
|
115
|
+
paddingRight?: number | string;
|
|
116
|
+
paddingBottom?: number | string;
|
|
117
|
+
paddingLeft?: number | string;
|
|
118
|
+
paddingHorizontal?: number | string;
|
|
119
|
+
paddingVertical?: number | string;
|
|
120
|
+
gap?: number;
|
|
121
|
+
rowGap?: number;
|
|
122
|
+
columnGap?: number;
|
|
123
|
+
direction?: Direction;
|
|
124
|
+
display?: Display;
|
|
125
|
+
overflow?: Overflow;
|
|
126
|
+
zIndex?: number;
|
|
127
|
+
aspectRatio?: number;
|
|
128
|
+
backgroundColor?: string;
|
|
129
|
+
opacity?: number;
|
|
130
|
+
borderWidth?: number;
|
|
131
|
+
borderTopWidth?: number;
|
|
132
|
+
borderRightWidth?: number;
|
|
133
|
+
borderBottomWidth?: number;
|
|
134
|
+
borderLeftWidth?: number;
|
|
135
|
+
borderColor?: string;
|
|
136
|
+
borderTopColor?: string;
|
|
137
|
+
borderRightColor?: string;
|
|
138
|
+
borderBottomColor?: string;
|
|
139
|
+
borderLeftColor?: string;
|
|
140
|
+
borderRadius?: number;
|
|
141
|
+
borderTopLeftRadius?: number;
|
|
142
|
+
borderTopRightRadius?: number;
|
|
143
|
+
borderBottomLeftRadius?: number;
|
|
144
|
+
borderBottomRightRadius?: number;
|
|
145
|
+
borderStyle?: BorderStyle;
|
|
146
|
+
shadowColor?: string;
|
|
147
|
+
shadowOffset?: ShadowOffset;
|
|
148
|
+
shadowOpacity?: number;
|
|
149
|
+
shadowRadius?: number;
|
|
150
|
+
transform?: TransformValue[];
|
|
151
|
+
accessibilityLabel?: string;
|
|
152
|
+
accessibilityRole?: string;
|
|
153
|
+
accessibilityHint?: string;
|
|
154
|
+
accessibilityState?: Record<string, any>;
|
|
155
|
+
accessibilityValue?: Record<string, any>;
|
|
156
|
+
accessible?: boolean;
|
|
157
|
+
importantForAccessibility?: ImportantForAccessibility;
|
|
158
|
+
}
|
|
159
|
+
interface TextStyle extends ViewStyle {
|
|
160
|
+
color?: string;
|
|
161
|
+
fontSize?: number;
|
|
162
|
+
fontWeight?: FontWeight;
|
|
163
|
+
fontFamily?: string;
|
|
164
|
+
fontStyle?: FontStyle;
|
|
165
|
+
lineHeight?: number;
|
|
166
|
+
letterSpacing?: number;
|
|
167
|
+
textAlign?: TextAlign;
|
|
168
|
+
textDecorationLine?: TextDecorationLine;
|
|
169
|
+
textDecorationStyle?: TextDecorationStyle;
|
|
170
|
+
textDecorationColor?: string;
|
|
171
|
+
textTransform?: TextTransform;
|
|
172
|
+
includeFontPadding?: boolean;
|
|
173
|
+
}
|
|
174
|
+
interface ImageStyle extends ViewStyle {
|
|
175
|
+
resizeMode?: ResizeMode;
|
|
176
|
+
tintColor?: string;
|
|
177
|
+
}
|
|
178
|
+
|
|
44
179
|
/**
|
|
45
180
|
* StyleSheet utility for Vue Native.
|
|
46
181
|
*
|
|
@@ -56,6 +191,8 @@ declare const render: _vue_runtime_core.RootRenderFunction<NativeNode>;
|
|
|
56
191
|
declare const validStyleProperties: ReadonlySet<string>;
|
|
57
192
|
/**
|
|
58
193
|
* A single style declaration — a flat object of style properties.
|
|
194
|
+
* Can be a ViewStyle, TextStyle, or ImageStyle from the typed interfaces,
|
|
195
|
+
* or a plain record for backwards compatibility.
|
|
59
196
|
*/
|
|
60
197
|
type StyleProp = Record<string, any>;
|
|
61
198
|
/**
|
|
@@ -65,6 +202,9 @@ type StyleProp = Record<string, any>;
|
|
|
65
202
|
type StyleSheet<T extends Record<string, StyleProp>> = Readonly<{
|
|
66
203
|
[K in keyof T]: Readonly<T[K]>;
|
|
67
204
|
}>;
|
|
205
|
+
|
|
206
|
+
/** Union of all valid style types for createStyleSheet values */
|
|
207
|
+
type AnyStyle = ViewStyle | TextStyle | ImageStyle;
|
|
68
208
|
/**
|
|
69
209
|
* Create a style sheet object. This is the recommended way to define styles
|
|
70
210
|
* for Vue Native components.
|
|
@@ -93,6 +233,233 @@ type StyleSheet<T extends Record<string, StyleProp>> = Readonly<{
|
|
|
93
233
|
*/
|
|
94
234
|
declare function createStyleSheet<T extends Record<string, StyleProp>>(styles: T): StyleSheet<T>;
|
|
95
235
|
|
|
236
|
+
/**
|
|
237
|
+
* TypeScript prop interfaces for Vue Native components.
|
|
238
|
+
*
|
|
239
|
+
* These interfaces describe the props accepted by each built-in component.
|
|
240
|
+
* They can be used for documentation, type-checking render functions,
|
|
241
|
+
* or building abstractions on top of the built-in components.
|
|
242
|
+
*/
|
|
243
|
+
|
|
244
|
+
interface AccessibilityProps {
|
|
245
|
+
accessibilityLabel?: string;
|
|
246
|
+
accessibilityRole?: string;
|
|
247
|
+
accessibilityHint?: string;
|
|
248
|
+
accessibilityState?: Record<string, any>;
|
|
249
|
+
}
|
|
250
|
+
interface VViewProps extends AccessibilityProps {
|
|
251
|
+
style?: ViewStyle;
|
|
252
|
+
testID?: string;
|
|
253
|
+
}
|
|
254
|
+
interface VTextProps extends AccessibilityProps {
|
|
255
|
+
style?: TextStyle;
|
|
256
|
+
numberOfLines?: number;
|
|
257
|
+
selectable?: boolean;
|
|
258
|
+
}
|
|
259
|
+
interface VButtonProps extends AccessibilityProps {
|
|
260
|
+
style?: ViewStyle;
|
|
261
|
+
disabled?: boolean;
|
|
262
|
+
activeOpacity?: number;
|
|
263
|
+
onPress?: () => void;
|
|
264
|
+
onLongPress?: () => void;
|
|
265
|
+
}
|
|
266
|
+
interface VInputProps extends AccessibilityProps {
|
|
267
|
+
modelValue?: string;
|
|
268
|
+
placeholder?: string;
|
|
269
|
+
secureTextEntry?: boolean;
|
|
270
|
+
keyboardType?: 'default' | 'numeric' | 'email-address' | 'phone-pad' | 'number-pad' | 'decimal-pad' | 'url';
|
|
271
|
+
returnKeyType?: 'done' | 'go' | 'next' | 'search' | 'send';
|
|
272
|
+
autoCapitalize?: 'none' | 'sentences' | 'words' | 'characters';
|
|
273
|
+
autoCorrect?: boolean;
|
|
274
|
+
maxLength?: number;
|
|
275
|
+
multiline?: boolean;
|
|
276
|
+
style?: TextStyle;
|
|
277
|
+
}
|
|
278
|
+
interface VSwitchProps extends AccessibilityProps {
|
|
279
|
+
modelValue?: boolean;
|
|
280
|
+
disabled?: boolean;
|
|
281
|
+
onTintColor?: string;
|
|
282
|
+
thumbTintColor?: string;
|
|
283
|
+
style?: ViewStyle;
|
|
284
|
+
}
|
|
285
|
+
interface VImageProps extends AccessibilityProps {
|
|
286
|
+
source: {
|
|
287
|
+
uri: string;
|
|
288
|
+
};
|
|
289
|
+
resizeMode?: ResizeMode;
|
|
290
|
+
style?: ImageStyle;
|
|
291
|
+
testID?: string;
|
|
292
|
+
}
|
|
293
|
+
interface VScrollViewProps extends AccessibilityProps {
|
|
294
|
+
horizontal?: boolean;
|
|
295
|
+
showsVerticalScrollIndicator?: boolean;
|
|
296
|
+
showsHorizontalScrollIndicator?: boolean;
|
|
297
|
+
scrollEnabled?: boolean;
|
|
298
|
+
bounces?: boolean;
|
|
299
|
+
pagingEnabled?: boolean;
|
|
300
|
+
contentContainerStyle?: ViewStyle;
|
|
301
|
+
refreshing?: boolean;
|
|
302
|
+
style?: ViewStyle;
|
|
303
|
+
}
|
|
304
|
+
interface VActivityIndicatorProps {
|
|
305
|
+
animating?: boolean;
|
|
306
|
+
color?: string;
|
|
307
|
+
size?: 'small' | 'medium' | 'large';
|
|
308
|
+
hidesWhenStopped?: boolean;
|
|
309
|
+
style?: ViewStyle;
|
|
310
|
+
}
|
|
311
|
+
interface VSliderProps extends AccessibilityProps {
|
|
312
|
+
modelValue?: number;
|
|
313
|
+
min?: number;
|
|
314
|
+
max?: number;
|
|
315
|
+
style?: ViewStyle;
|
|
316
|
+
}
|
|
317
|
+
interface VListProps {
|
|
318
|
+
data: any[];
|
|
319
|
+
keyExtractor?: (item: any, index: number) => string;
|
|
320
|
+
estimatedItemHeight?: number;
|
|
321
|
+
showsScrollIndicator?: boolean;
|
|
322
|
+
bounces?: boolean;
|
|
323
|
+
horizontal?: boolean;
|
|
324
|
+
style?: ViewStyle;
|
|
325
|
+
}
|
|
326
|
+
interface VModalProps {
|
|
327
|
+
visible?: boolean;
|
|
328
|
+
style?: ViewStyle;
|
|
329
|
+
}
|
|
330
|
+
interface VAlertDialogProps {
|
|
331
|
+
visible?: boolean;
|
|
332
|
+
title?: string;
|
|
333
|
+
message?: string;
|
|
334
|
+
buttons?: Array<{
|
|
335
|
+
label: string;
|
|
336
|
+
style?: 'default' | 'cancel' | 'destructive';
|
|
337
|
+
}>;
|
|
338
|
+
}
|
|
339
|
+
interface VStatusBarProps {
|
|
340
|
+
barStyle?: 'default' | 'light-content' | 'dark-content';
|
|
341
|
+
hidden?: boolean;
|
|
342
|
+
animated?: boolean;
|
|
343
|
+
}
|
|
344
|
+
interface VWebViewProps {
|
|
345
|
+
source: {
|
|
346
|
+
uri?: string;
|
|
347
|
+
html?: string;
|
|
348
|
+
};
|
|
349
|
+
style?: ViewStyle;
|
|
350
|
+
javaScriptEnabled?: boolean;
|
|
351
|
+
}
|
|
352
|
+
interface VProgressBarProps {
|
|
353
|
+
progress?: number;
|
|
354
|
+
progressTintColor?: string;
|
|
355
|
+
trackTintColor?: string;
|
|
356
|
+
animated?: boolean;
|
|
357
|
+
style?: ViewStyle;
|
|
358
|
+
}
|
|
359
|
+
interface VPickerProps {
|
|
360
|
+
mode?: 'date' | 'time' | 'datetime';
|
|
361
|
+
value?: number;
|
|
362
|
+
minimumDate?: number;
|
|
363
|
+
maximumDate?: number;
|
|
364
|
+
minuteInterval?: number;
|
|
365
|
+
style?: ViewStyle;
|
|
366
|
+
}
|
|
367
|
+
interface VSegmentedControlProps {
|
|
368
|
+
values: string[];
|
|
369
|
+
selectedIndex?: number;
|
|
370
|
+
tintColor?: string;
|
|
371
|
+
enabled?: boolean;
|
|
372
|
+
style?: ViewStyle;
|
|
373
|
+
}
|
|
374
|
+
interface VActionSheetProps {
|
|
375
|
+
visible?: boolean;
|
|
376
|
+
title?: string;
|
|
377
|
+
message?: string;
|
|
378
|
+
actions?: Array<{
|
|
379
|
+
label: string;
|
|
380
|
+
style?: 'default' | 'cancel' | 'destructive';
|
|
381
|
+
}>;
|
|
382
|
+
}
|
|
383
|
+
interface VKeyboardAvoidingProps {
|
|
384
|
+
style?: ViewStyle;
|
|
385
|
+
testID?: string;
|
|
386
|
+
}
|
|
387
|
+
interface VSafeAreaProps {
|
|
388
|
+
style?: ViewStyle;
|
|
389
|
+
}
|
|
390
|
+
interface VRefreshControlProps {
|
|
391
|
+
refreshing?: boolean;
|
|
392
|
+
onRefresh?: () => void;
|
|
393
|
+
tintColor?: string;
|
|
394
|
+
title?: string;
|
|
395
|
+
style?: ViewStyle;
|
|
396
|
+
}
|
|
397
|
+
interface VPressableProps extends AccessibilityProps {
|
|
398
|
+
style?: ViewStyle;
|
|
399
|
+
disabled?: boolean;
|
|
400
|
+
activeOpacity?: number;
|
|
401
|
+
onPress?: () => void;
|
|
402
|
+
onPressIn?: () => void;
|
|
403
|
+
onPressOut?: () => void;
|
|
404
|
+
onLongPress?: () => void;
|
|
405
|
+
}
|
|
406
|
+
interface VCheckboxProps extends AccessibilityProps {
|
|
407
|
+
modelValue?: boolean;
|
|
408
|
+
disabled?: boolean;
|
|
409
|
+
label?: string;
|
|
410
|
+
checkColor?: string;
|
|
411
|
+
tintColor?: string;
|
|
412
|
+
style?: ViewStyle;
|
|
413
|
+
}
|
|
414
|
+
interface VRadioProps extends AccessibilityProps {
|
|
415
|
+
modelValue?: string;
|
|
416
|
+
options: Array<{
|
|
417
|
+
label: string;
|
|
418
|
+
value: string;
|
|
419
|
+
}>;
|
|
420
|
+
disabled?: boolean;
|
|
421
|
+
tintColor?: string;
|
|
422
|
+
style?: ViewStyle;
|
|
423
|
+
}
|
|
424
|
+
interface VDropdownProps extends AccessibilityProps {
|
|
425
|
+
modelValue?: string;
|
|
426
|
+
options: Array<{
|
|
427
|
+
label: string;
|
|
428
|
+
value: string;
|
|
429
|
+
}>;
|
|
430
|
+
placeholder?: string;
|
|
431
|
+
disabled?: boolean;
|
|
432
|
+
tintColor?: string;
|
|
433
|
+
style?: ViewStyle;
|
|
434
|
+
}
|
|
435
|
+
interface VVideoProps extends AccessibilityProps {
|
|
436
|
+
source: {
|
|
437
|
+
uri: string;
|
|
438
|
+
};
|
|
439
|
+
autoplay?: boolean;
|
|
440
|
+
loop?: boolean;
|
|
441
|
+
muted?: boolean;
|
|
442
|
+
paused?: boolean;
|
|
443
|
+
controls?: boolean;
|
|
444
|
+
volume?: number;
|
|
445
|
+
resizeMode?: 'cover' | 'contain' | 'stretch' | 'center';
|
|
446
|
+
poster?: string;
|
|
447
|
+
style?: ViewStyle;
|
|
448
|
+
testID?: string;
|
|
449
|
+
}
|
|
450
|
+
interface VSectionListProps {
|
|
451
|
+
sections: Array<{
|
|
452
|
+
title: string;
|
|
453
|
+
data: any[];
|
|
454
|
+
}>;
|
|
455
|
+
keyExtractor?: (item: any, index: number) => string;
|
|
456
|
+
estimatedItemHeight?: number;
|
|
457
|
+
stickySectionHeaders?: boolean;
|
|
458
|
+
showsScrollIndicator?: boolean;
|
|
459
|
+
bounces?: boolean;
|
|
460
|
+
style?: ViewStyle;
|
|
461
|
+
}
|
|
462
|
+
|
|
96
463
|
/**
|
|
97
464
|
* VView — the fundamental container component in Vue Native.
|
|
98
465
|
*
|
|
@@ -107,15 +474,21 @@ declare function createStyleSheet<T extends Record<string, StyleProp>>(styles: T
|
|
|
107
474
|
* ```
|
|
108
475
|
*/
|
|
109
476
|
declare const VView: _vue_runtime_core.DefineComponent<_vue_runtime_core.ExtractPropTypes<{
|
|
110
|
-
style:
|
|
477
|
+
style: PropType<ViewStyle>;
|
|
111
478
|
testID: StringConstructor;
|
|
112
479
|
accessibilityLabel: StringConstructor;
|
|
480
|
+
accessibilityRole: StringConstructor;
|
|
481
|
+
accessibilityHint: StringConstructor;
|
|
482
|
+
accessibilityState: ObjectConstructor;
|
|
113
483
|
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
114
484
|
[key: string]: any;
|
|
115
485
|
}>, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, {}, string, _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
116
|
-
style:
|
|
486
|
+
style: PropType<ViewStyle>;
|
|
117
487
|
testID: StringConstructor;
|
|
118
488
|
accessibilityLabel: StringConstructor;
|
|
489
|
+
accessibilityRole: StringConstructor;
|
|
490
|
+
accessibilityHint: StringConstructor;
|
|
491
|
+
accessibilityState: ObjectConstructor;
|
|
119
492
|
}>> & Readonly<{}>, {}, {}, {}, {}, string, _vue_runtime_core.ComponentProvideOptions, true, {}, any>;
|
|
120
493
|
|
|
121
494
|
/**
|
|
@@ -135,23 +508,29 @@ declare const VView: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extract
|
|
|
135
508
|
* ```
|
|
136
509
|
*/
|
|
137
510
|
declare const VText: _vue_runtime_core.DefineComponent<_vue_runtime_core.ExtractPropTypes<{
|
|
138
|
-
style:
|
|
511
|
+
style: PropType<TextStyle>;
|
|
139
512
|
numberOfLines: NumberConstructor;
|
|
140
513
|
selectable: {
|
|
141
514
|
type: BooleanConstructor;
|
|
142
515
|
default: boolean;
|
|
143
516
|
};
|
|
517
|
+
accessibilityLabel: StringConstructor;
|
|
144
518
|
accessibilityRole: StringConstructor;
|
|
519
|
+
accessibilityHint: StringConstructor;
|
|
520
|
+
accessibilityState: ObjectConstructor;
|
|
145
521
|
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
146
522
|
[key: string]: any;
|
|
147
523
|
}>, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, {}, string, _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
148
|
-
style:
|
|
524
|
+
style: PropType<TextStyle>;
|
|
149
525
|
numberOfLines: NumberConstructor;
|
|
150
526
|
selectable: {
|
|
151
527
|
type: BooleanConstructor;
|
|
152
528
|
default: boolean;
|
|
153
529
|
};
|
|
530
|
+
accessibilityLabel: StringConstructor;
|
|
154
531
|
accessibilityRole: StringConstructor;
|
|
532
|
+
accessibilityHint: StringConstructor;
|
|
533
|
+
accessibilityState: ObjectConstructor;
|
|
155
534
|
}>> & Readonly<{}>, {
|
|
156
535
|
selectable: boolean;
|
|
157
536
|
}, {}, {}, {}, string, _vue_runtime_core.ComponentProvideOptions, true, {}, any>;
|
|
@@ -175,7 +554,7 @@ declare const VText: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extract
|
|
|
175
554
|
* ```
|
|
176
555
|
*/
|
|
177
556
|
declare const VButton: _vue_runtime_core.DefineComponent<_vue_runtime_core.ExtractPropTypes<{
|
|
178
|
-
style:
|
|
557
|
+
style: PropType<ViewStyle>;
|
|
179
558
|
disabled: {
|
|
180
559
|
type: BooleanConstructor;
|
|
181
560
|
default: boolean;
|
|
@@ -184,12 +563,16 @@ declare const VButton: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extra
|
|
|
184
563
|
type: NumberConstructor;
|
|
185
564
|
default: number;
|
|
186
565
|
};
|
|
187
|
-
onPress:
|
|
188
|
-
onLongPress:
|
|
566
|
+
onPress: PropType<() => void>;
|
|
567
|
+
onLongPress: PropType<() => void>;
|
|
568
|
+
accessibilityLabel: StringConstructor;
|
|
569
|
+
accessibilityRole: StringConstructor;
|
|
570
|
+
accessibilityHint: StringConstructor;
|
|
571
|
+
accessibilityState: ObjectConstructor;
|
|
189
572
|
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
190
573
|
[key: string]: any;
|
|
191
574
|
}>, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, {}, string, _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
192
|
-
style:
|
|
575
|
+
style: PropType<ViewStyle>;
|
|
193
576
|
disabled: {
|
|
194
577
|
type: BooleanConstructor;
|
|
195
578
|
default: boolean;
|
|
@@ -198,8 +581,12 @@ declare const VButton: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extra
|
|
|
198
581
|
type: NumberConstructor;
|
|
199
582
|
default: number;
|
|
200
583
|
};
|
|
201
|
-
onPress:
|
|
202
|
-
onLongPress:
|
|
584
|
+
onPress: PropType<() => void>;
|
|
585
|
+
onLongPress: PropType<() => void>;
|
|
586
|
+
accessibilityLabel: StringConstructor;
|
|
587
|
+
accessibilityRole: StringConstructor;
|
|
588
|
+
accessibilityHint: StringConstructor;
|
|
589
|
+
accessibilityState: ObjectConstructor;
|
|
203
590
|
}>> & Readonly<{}>, {
|
|
204
591
|
disabled: boolean;
|
|
205
592
|
activeOpacity: number;
|
|
@@ -257,7 +644,11 @@ declare const VInput: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extrac
|
|
|
257
644
|
type: BooleanConstructor;
|
|
258
645
|
default: boolean;
|
|
259
646
|
};
|
|
260
|
-
style:
|
|
647
|
+
style: PropType<TextStyle>;
|
|
648
|
+
accessibilityLabel: StringConstructor;
|
|
649
|
+
accessibilityRole: StringConstructor;
|
|
650
|
+
accessibilityHint: StringConstructor;
|
|
651
|
+
accessibilityState: ObjectConstructor;
|
|
261
652
|
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
262
653
|
[key: string]: any;
|
|
263
654
|
}>, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, ("update:modelValue" | "focus" | "blur" | "submit")[], "update:modelValue" | "focus" | "blur" | "submit", _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
@@ -291,7 +682,11 @@ declare const VInput: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extrac
|
|
|
291
682
|
type: BooleanConstructor;
|
|
292
683
|
default: boolean;
|
|
293
684
|
};
|
|
294
|
-
style:
|
|
685
|
+
style: PropType<TextStyle>;
|
|
686
|
+
accessibilityLabel: StringConstructor;
|
|
687
|
+
accessibilityRole: StringConstructor;
|
|
688
|
+
accessibilityHint: StringConstructor;
|
|
689
|
+
accessibilityState: ObjectConstructor;
|
|
295
690
|
}>> & Readonly<{
|
|
296
691
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
297
692
|
onFocus?: ((...args: any[]) => any) | undefined;
|
|
@@ -328,7 +723,11 @@ declare const VSwitch: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extra
|
|
|
328
723
|
};
|
|
329
724
|
onTintColor: StringConstructor;
|
|
330
725
|
thumbTintColor: StringConstructor;
|
|
331
|
-
style:
|
|
726
|
+
style: PropType<ViewStyle>;
|
|
727
|
+
accessibilityLabel: StringConstructor;
|
|
728
|
+
accessibilityRole: StringConstructor;
|
|
729
|
+
accessibilityHint: StringConstructor;
|
|
730
|
+
accessibilityState: ObjectConstructor;
|
|
332
731
|
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
333
732
|
[key: string]: any;
|
|
334
733
|
}>, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, ("update:modelValue" | "change")[], "update:modelValue" | "change", _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
@@ -342,7 +741,11 @@ declare const VSwitch: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extra
|
|
|
342
741
|
};
|
|
343
742
|
onTintColor: StringConstructor;
|
|
344
743
|
thumbTintColor: StringConstructor;
|
|
345
|
-
style:
|
|
744
|
+
style: PropType<ViewStyle>;
|
|
745
|
+
accessibilityLabel: StringConstructor;
|
|
746
|
+
accessibilityRole: StringConstructor;
|
|
747
|
+
accessibilityHint: StringConstructor;
|
|
748
|
+
accessibilityState: ObjectConstructor;
|
|
346
749
|
}>> & Readonly<{
|
|
347
750
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
348
751
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -376,7 +779,7 @@ declare const VActivityIndicator: _vue_runtime_core.DefineComponent<_vue_runtime
|
|
|
376
779
|
type: BooleanConstructor;
|
|
377
780
|
default: boolean;
|
|
378
781
|
};
|
|
379
|
-
style:
|
|
782
|
+
style: PropType<ViewStyle>;
|
|
380
783
|
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
381
784
|
[key: string]: any;
|
|
382
785
|
}>, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, {}, string, _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
@@ -393,7 +796,7 @@ declare const VActivityIndicator: _vue_runtime_core.DefineComponent<_vue_runtime
|
|
|
393
796
|
type: BooleanConstructor;
|
|
394
797
|
default: boolean;
|
|
395
798
|
};
|
|
396
|
-
style:
|
|
799
|
+
style: PropType<ViewStyle>;
|
|
397
800
|
}>> & Readonly<{}>, {
|
|
398
801
|
size: string;
|
|
399
802
|
animating: boolean;
|
|
@@ -441,13 +844,17 @@ declare const VScrollView: _vue_runtime_core.DefineComponent<_vue_runtime_core.E
|
|
|
441
844
|
type: BooleanConstructor;
|
|
442
845
|
default: boolean;
|
|
443
846
|
};
|
|
444
|
-
contentContainerStyle:
|
|
847
|
+
contentContainerStyle: PropType<ViewStyle>;
|
|
445
848
|
/** Whether the pull-to-refresh indicator is active */
|
|
446
849
|
refreshing: {
|
|
447
850
|
type: BooleanConstructor;
|
|
448
851
|
default: boolean;
|
|
449
852
|
};
|
|
450
|
-
style:
|
|
853
|
+
style: PropType<ViewStyle>;
|
|
854
|
+
accessibilityLabel: StringConstructor;
|
|
855
|
+
accessibilityRole: StringConstructor;
|
|
856
|
+
accessibilityHint: StringConstructor;
|
|
857
|
+
accessibilityState: ObjectConstructor;
|
|
451
858
|
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
452
859
|
[key: string]: any;
|
|
453
860
|
}>, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, ("scroll" | "refresh")[], "scroll" | "refresh", _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
@@ -475,13 +882,17 @@ declare const VScrollView: _vue_runtime_core.DefineComponent<_vue_runtime_core.E
|
|
|
475
882
|
type: BooleanConstructor;
|
|
476
883
|
default: boolean;
|
|
477
884
|
};
|
|
478
|
-
contentContainerStyle:
|
|
885
|
+
contentContainerStyle: PropType<ViewStyle>;
|
|
479
886
|
/** Whether the pull-to-refresh indicator is active */
|
|
480
887
|
refreshing: {
|
|
481
888
|
type: BooleanConstructor;
|
|
482
889
|
default: boolean;
|
|
483
890
|
};
|
|
484
|
-
style:
|
|
891
|
+
style: PropType<ViewStyle>;
|
|
892
|
+
accessibilityLabel: StringConstructor;
|
|
893
|
+
accessibilityRole: StringConstructor;
|
|
894
|
+
accessibilityHint: StringConstructor;
|
|
895
|
+
accessibilityState: ObjectConstructor;
|
|
485
896
|
}>> & Readonly<{
|
|
486
897
|
onScroll?: ((...args: any[]) => any) | undefined;
|
|
487
898
|
onRefresh?: ((...args: any[]) => any) | undefined;
|
|
@@ -520,9 +931,12 @@ declare const VImage: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extrac
|
|
|
520
931
|
type: () => "cover" | "contain" | "stretch" | "center";
|
|
521
932
|
default: string;
|
|
522
933
|
};
|
|
523
|
-
style:
|
|
934
|
+
style: PropType<ImageStyle>;
|
|
524
935
|
testID: StringConstructor;
|
|
525
936
|
accessibilityLabel: StringConstructor;
|
|
937
|
+
accessibilityRole: StringConstructor;
|
|
938
|
+
accessibilityHint: StringConstructor;
|
|
939
|
+
accessibilityState: ObjectConstructor;
|
|
526
940
|
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
527
941
|
[key: string]: any;
|
|
528
942
|
}>, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, ("load" | "error")[], "load" | "error", _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
@@ -533,9 +947,12 @@ declare const VImage: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extrac
|
|
|
533
947
|
type: () => "cover" | "contain" | "stretch" | "center";
|
|
534
948
|
default: string;
|
|
535
949
|
};
|
|
536
|
-
style:
|
|
950
|
+
style: PropType<ImageStyle>;
|
|
537
951
|
testID: StringConstructor;
|
|
538
952
|
accessibilityLabel: StringConstructor;
|
|
953
|
+
accessibilityRole: StringConstructor;
|
|
954
|
+
accessibilityHint: StringConstructor;
|
|
955
|
+
accessibilityState: ObjectConstructor;
|
|
539
956
|
}>> & Readonly<{
|
|
540
957
|
onLoad?: ((...args: any[]) => any) | undefined;
|
|
541
958
|
onError?: ((...args: any[]) => any) | undefined;
|
|
@@ -558,29 +975,29 @@ declare const VImage: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extrac
|
|
|
558
975
|
* ```
|
|
559
976
|
*/
|
|
560
977
|
declare const VKeyboardAvoiding: _vue_runtime_core.DefineComponent<_vue_runtime_core.ExtractPropTypes<{
|
|
561
|
-
style:
|
|
978
|
+
style: PropType<ViewStyle>;
|
|
562
979
|
testID: StringConstructor;
|
|
563
980
|
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
564
981
|
[key: string]: any;
|
|
565
982
|
}>, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, {}, string, _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
566
|
-
style:
|
|
983
|
+
style: PropType<ViewStyle>;
|
|
567
984
|
testID: StringConstructor;
|
|
568
985
|
}>> & Readonly<{}>, {}, {}, {}, {}, string, _vue_runtime_core.ComponentProvideOptions, true, {}, any>;
|
|
569
986
|
|
|
570
987
|
declare const VSafeArea: _vue_runtime_core.DefineComponent<_vue_runtime_core.ExtractPropTypes<{
|
|
571
988
|
style: {
|
|
572
|
-
type:
|
|
989
|
+
type: PropType<ViewStyle>;
|
|
573
990
|
default: () => {};
|
|
574
991
|
};
|
|
575
992
|
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
576
993
|
[key: string]: any;
|
|
577
994
|
}>, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, {}, string, _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
578
995
|
style: {
|
|
579
|
-
type:
|
|
996
|
+
type: PropType<ViewStyle>;
|
|
580
997
|
default: () => {};
|
|
581
998
|
};
|
|
582
999
|
}>> & Readonly<{}>, {
|
|
583
|
-
style:
|
|
1000
|
+
style: ViewStyle;
|
|
584
1001
|
}, {}, {}, {}, string, _vue_runtime_core.ComponentProvideOptions, true, {}, any>;
|
|
585
1002
|
|
|
586
1003
|
declare const VSlider: _vue_runtime_core.DefineComponent<_vue_runtime_core.ExtractPropTypes<{
|
|
@@ -597,9 +1014,13 @@ declare const VSlider: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extra
|
|
|
597
1014
|
default: number;
|
|
598
1015
|
};
|
|
599
1016
|
style: {
|
|
600
|
-
type:
|
|
1017
|
+
type: PropType<ViewStyle>;
|
|
601
1018
|
default: () => {};
|
|
602
1019
|
};
|
|
1020
|
+
accessibilityLabel: StringConstructor;
|
|
1021
|
+
accessibilityRole: StringConstructor;
|
|
1022
|
+
accessibilityHint: StringConstructor;
|
|
1023
|
+
accessibilityState: ObjectConstructor;
|
|
603
1024
|
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
604
1025
|
[key: string]: any;
|
|
605
1026
|
}>, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, ("update:modelValue" | "change")[], "update:modelValue" | "change", _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
@@ -616,14 +1037,18 @@ declare const VSlider: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extra
|
|
|
616
1037
|
default: number;
|
|
617
1038
|
};
|
|
618
1039
|
style: {
|
|
619
|
-
type:
|
|
1040
|
+
type: PropType<ViewStyle>;
|
|
620
1041
|
default: () => {};
|
|
621
1042
|
};
|
|
1043
|
+
accessibilityLabel: StringConstructor;
|
|
1044
|
+
accessibilityRole: StringConstructor;
|
|
1045
|
+
accessibilityHint: StringConstructor;
|
|
1046
|
+
accessibilityState: ObjectConstructor;
|
|
622
1047
|
}>> & Readonly<{
|
|
623
1048
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
624
1049
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
625
1050
|
}>, {
|
|
626
|
-
style:
|
|
1051
|
+
style: ViewStyle;
|
|
627
1052
|
modelValue: number;
|
|
628
1053
|
min: number;
|
|
629
1054
|
max: number;
|
|
@@ -681,7 +1106,7 @@ declare const VList: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extract
|
|
|
681
1106
|
default: boolean;
|
|
682
1107
|
};
|
|
683
1108
|
style: {
|
|
684
|
-
type:
|
|
1109
|
+
type: PropType<ViewStyle>;
|
|
685
1110
|
default: () => {};
|
|
686
1111
|
};
|
|
687
1112
|
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
@@ -718,14 +1143,14 @@ declare const VList: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extract
|
|
|
718
1143
|
default: boolean;
|
|
719
1144
|
};
|
|
720
1145
|
style: {
|
|
721
|
-
type:
|
|
1146
|
+
type: PropType<ViewStyle>;
|
|
722
1147
|
default: () => {};
|
|
723
1148
|
};
|
|
724
1149
|
}>> & Readonly<{
|
|
725
1150
|
onScroll?: ((...args: any[]) => any) | undefined;
|
|
726
1151
|
onEndReached?: ((...args: any[]) => any) | undefined;
|
|
727
1152
|
}>, {
|
|
728
|
-
style:
|
|
1153
|
+
style: ViewStyle;
|
|
729
1154
|
horizontal: boolean;
|
|
730
1155
|
bounces: boolean;
|
|
731
1156
|
keyExtractor: (item: any, index: number) => string;
|
|
@@ -748,7 +1173,7 @@ declare const VModal: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extrac
|
|
|
748
1173
|
default: boolean;
|
|
749
1174
|
};
|
|
750
1175
|
style: {
|
|
751
|
-
type:
|
|
1176
|
+
type: PropType<ViewStyle>;
|
|
752
1177
|
default: () => {};
|
|
753
1178
|
};
|
|
754
1179
|
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
@@ -759,13 +1184,13 @@ declare const VModal: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extrac
|
|
|
759
1184
|
default: boolean;
|
|
760
1185
|
};
|
|
761
1186
|
style: {
|
|
762
|
-
type:
|
|
1187
|
+
type: PropType<ViewStyle>;
|
|
763
1188
|
default: () => {};
|
|
764
1189
|
};
|
|
765
1190
|
}>> & Readonly<{
|
|
766
1191
|
onDismiss?: ((...args: any[]) => any) | undefined;
|
|
767
1192
|
}>, {
|
|
768
|
-
style:
|
|
1193
|
+
style: ViewStyle;
|
|
769
1194
|
visible: boolean;
|
|
770
1195
|
}, {}, {}, {}, string, _vue_runtime_core.ComponentProvideOptions, true, {}, any>;
|
|
771
1196
|
|
|
@@ -890,7 +1315,7 @@ declare const VWebView: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extr
|
|
|
890
1315
|
required: true;
|
|
891
1316
|
};
|
|
892
1317
|
style: {
|
|
893
|
-
type:
|
|
1318
|
+
type: PropType<ViewStyle>;
|
|
894
1319
|
default: () => {};
|
|
895
1320
|
};
|
|
896
1321
|
javaScriptEnabled: {
|
|
@@ -905,7 +1330,7 @@ declare const VWebView: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extr
|
|
|
905
1330
|
required: true;
|
|
906
1331
|
};
|
|
907
1332
|
style: {
|
|
908
|
-
type:
|
|
1333
|
+
type: PropType<ViewStyle>;
|
|
909
1334
|
default: () => {};
|
|
910
1335
|
};
|
|
911
1336
|
javaScriptEnabled: {
|
|
@@ -917,7 +1342,7 @@ declare const VWebView: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extr
|
|
|
917
1342
|
onError?: ((...args: any[]) => any) | undefined;
|
|
918
1343
|
onMessage?: ((...args: any[]) => any) | undefined;
|
|
919
1344
|
}>, {
|
|
920
|
-
style:
|
|
1345
|
+
style: ViewStyle;
|
|
921
1346
|
javaScriptEnabled: boolean;
|
|
922
1347
|
}, {}, {}, {}, string, _vue_runtime_core.ComponentProvideOptions, true, {}, any>;
|
|
923
1348
|
|
|
@@ -945,7 +1370,7 @@ declare const VProgressBar: _vue_runtime_core.DefineComponent<_vue_runtime_core.
|
|
|
945
1370
|
default: boolean;
|
|
946
1371
|
};
|
|
947
1372
|
style: {
|
|
948
|
-
type:
|
|
1373
|
+
type: PropType<ViewStyle>;
|
|
949
1374
|
default: () => {};
|
|
950
1375
|
};
|
|
951
1376
|
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
@@ -968,11 +1393,11 @@ declare const VProgressBar: _vue_runtime_core.DefineComponent<_vue_runtime_core.
|
|
|
968
1393
|
default: boolean;
|
|
969
1394
|
};
|
|
970
1395
|
style: {
|
|
971
|
-
type:
|
|
1396
|
+
type: PropType<ViewStyle>;
|
|
972
1397
|
default: () => {};
|
|
973
1398
|
};
|
|
974
1399
|
}>> & Readonly<{}>, {
|
|
975
|
-
style:
|
|
1400
|
+
style: ViewStyle;
|
|
976
1401
|
animated: boolean;
|
|
977
1402
|
progress: number;
|
|
978
1403
|
progressTintColor: string;
|
|
@@ -1007,7 +1432,7 @@ declare const VPicker: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extra
|
|
|
1007
1432
|
default: number;
|
|
1008
1433
|
};
|
|
1009
1434
|
style: {
|
|
1010
|
-
type:
|
|
1435
|
+
type: PropType<ViewStyle>;
|
|
1011
1436
|
default: () => {};
|
|
1012
1437
|
};
|
|
1013
1438
|
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
@@ -1034,13 +1459,13 @@ declare const VPicker: _vue_runtime_core.DefineComponent<_vue_runtime_core.Extra
|
|
|
1034
1459
|
default: number;
|
|
1035
1460
|
};
|
|
1036
1461
|
style: {
|
|
1037
|
-
type:
|
|
1462
|
+
type: PropType<ViewStyle>;
|
|
1038
1463
|
default: () => {};
|
|
1039
1464
|
};
|
|
1040
1465
|
}>> & Readonly<{
|
|
1041
1466
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
1042
1467
|
}>, {
|
|
1043
|
-
style:
|
|
1468
|
+
style: ViewStyle;
|
|
1044
1469
|
mode: "date" | "time" | "datetime";
|
|
1045
1470
|
value: number;
|
|
1046
1471
|
minimumDate: number;
|
|
@@ -1076,7 +1501,7 @@ declare const VSegmentedControl: _vue_runtime_core.DefineComponent<_vue_runtime_
|
|
|
1076
1501
|
default: boolean;
|
|
1077
1502
|
};
|
|
1078
1503
|
style: {
|
|
1079
|
-
type:
|
|
1504
|
+
type: PropType<ViewStyle>;
|
|
1080
1505
|
default: () => {};
|
|
1081
1506
|
};
|
|
1082
1507
|
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
@@ -1099,13 +1524,13 @@ declare const VSegmentedControl: _vue_runtime_core.DefineComponent<_vue_runtime_
|
|
|
1099
1524
|
default: boolean;
|
|
1100
1525
|
};
|
|
1101
1526
|
style: {
|
|
1102
|
-
type:
|
|
1527
|
+
type: PropType<ViewStyle>;
|
|
1103
1528
|
default: () => {};
|
|
1104
1529
|
};
|
|
1105
1530
|
}>> & Readonly<{
|
|
1106
1531
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
1107
1532
|
}>, {
|
|
1108
|
-
style:
|
|
1533
|
+
style: ViewStyle;
|
|
1109
1534
|
selectedIndex: number;
|
|
1110
1535
|
tintColor: string;
|
|
1111
1536
|
enabled: boolean;
|
|
@@ -1178,100 +1603,650 @@ declare const VActionSheet: _vue_runtime_core.DefineComponent<_vue_runtime_core.
|
|
|
1178
1603
|
}, {}, {}, {}, string, _vue_runtime_core.ComponentProvideOptions, true, {}, any>;
|
|
1179
1604
|
|
|
1180
1605
|
/**
|
|
1181
|
-
*
|
|
1182
|
-
* Maps to the 'hidden' prop on native views (view.isHidden in Swift).
|
|
1183
|
-
*/
|
|
1184
|
-
declare const vShow: Directive<NativeNode>;
|
|
1185
|
-
|
|
1186
|
-
/**
|
|
1187
|
-
* Haptic feedback composable.
|
|
1188
|
-
*
|
|
1189
|
-
* Wraps the native Haptics module to provide tactile feedback.
|
|
1606
|
+
* VRefreshControl — a pull-to-refresh indicator component.
|
|
1190
1607
|
*
|
|
1191
|
-
*
|
|
1192
|
-
*
|
|
1193
|
-
*
|
|
1194
|
-
* vibrate('medium')
|
|
1195
|
-
* ```
|
|
1196
|
-
*/
|
|
1197
|
-
declare function useHaptics(): {
|
|
1198
|
-
vibrate: (style?: "light" | "medium" | "heavy" | "rigid" | "soft") => Promise<void>;
|
|
1199
|
-
notificationFeedback: (type?: "success" | "warning" | "error") => Promise<void>;
|
|
1200
|
-
selectionChanged: () => Promise<void>;
|
|
1201
|
-
};
|
|
1202
|
-
|
|
1203
|
-
/**
|
|
1204
|
-
* Async key-value storage composable backed by UserDefaults.
|
|
1608
|
+
* Designed to be used as a child of VScrollView or VList. When the user
|
|
1609
|
+
* pulls down past the scroll boundary, the onRefresh callback fires.
|
|
1610
|
+
* Set the refreshing prop to true while loading data, then false when done.
|
|
1205
1611
|
*
|
|
1206
|
-
*
|
|
1612
|
+
* On iOS this attaches a UIRefreshControl to the parent UIScrollView.
|
|
1613
|
+
* On Android this configures the parent SwipeRefreshLayout.
|
|
1207
1614
|
*
|
|
1208
1615
|
* @example
|
|
1209
|
-
* ```
|
|
1210
|
-
*
|
|
1211
|
-
*
|
|
1212
|
-
*
|
|
1616
|
+
* ```vue
|
|
1617
|
+
* <VScrollView :style="{ flex: 1 }">
|
|
1618
|
+
* <VRefreshControl
|
|
1619
|
+
* :refreshing="isLoading"
|
|
1620
|
+
* :onRefresh="handleRefresh"
|
|
1621
|
+
* tintColor="#007AFF"
|
|
1622
|
+
* />
|
|
1623
|
+
* <VText>Content here</VText>
|
|
1624
|
+
* </VScrollView>
|
|
1213
1625
|
* ```
|
|
1214
1626
|
*/
|
|
1215
|
-
declare
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1627
|
+
declare const VRefreshControl: _vue_runtime_core.DefineComponent<_vue_runtime_core.ExtractPropTypes<{
|
|
1628
|
+
refreshing: {
|
|
1629
|
+
type: BooleanConstructor;
|
|
1630
|
+
default: boolean;
|
|
1631
|
+
};
|
|
1632
|
+
onRefresh: PropType<() => void>;
|
|
1633
|
+
tintColor: StringConstructor;
|
|
1634
|
+
title: StringConstructor;
|
|
1635
|
+
style: PropType<ViewStyle>;
|
|
1636
|
+
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
1637
|
+
[key: string]: any;
|
|
1638
|
+
}>, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, {}, string, _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
1639
|
+
refreshing: {
|
|
1640
|
+
type: BooleanConstructor;
|
|
1641
|
+
default: boolean;
|
|
1642
|
+
};
|
|
1643
|
+
onRefresh: PropType<() => void>;
|
|
1644
|
+
tintColor: StringConstructor;
|
|
1645
|
+
title: StringConstructor;
|
|
1646
|
+
style: PropType<ViewStyle>;
|
|
1647
|
+
}>> & Readonly<{}>, {
|
|
1648
|
+
refreshing: boolean;
|
|
1649
|
+
}, {}, {}, {}, string, _vue_runtime_core.ComponentProvideOptions, true, {}, any>;
|
|
1222
1650
|
|
|
1223
1651
|
/**
|
|
1224
|
-
*
|
|
1225
|
-
*
|
|
1226
|
-
* `content` is a reactive ref that updates when `paste()` is called.
|
|
1652
|
+
* VPressable — a generic pressable container component.
|
|
1227
1653
|
*
|
|
1228
|
-
*
|
|
1229
|
-
*
|
|
1230
|
-
*
|
|
1231
|
-
* await copy('Hello, World!')
|
|
1232
|
-
* const text = await paste()
|
|
1233
|
-
* ```
|
|
1234
|
-
*/
|
|
1235
|
-
declare function useClipboard(): {
|
|
1236
|
-
copy: (text: string) => Promise<void>;
|
|
1237
|
-
paste: () => Promise<string>;
|
|
1238
|
-
content: _vue_reactivity.Ref<string, string>;
|
|
1239
|
-
};
|
|
1240
|
-
|
|
1241
|
-
/**
|
|
1242
|
-
* Device information composable.
|
|
1654
|
+
* Like VButton but without any default styling or built-in text label.
|
|
1655
|
+
* Wraps any children in a touchable container with configurable press
|
|
1656
|
+
* feedback. Supports press, long press, pressIn, and pressOut events.
|
|
1243
1657
|
*
|
|
1244
|
-
*
|
|
1658
|
+
* On iOS this maps to a TouchableView (custom UIView) with opacity animation.
|
|
1659
|
+
* On Android this maps to a TouchableView (FlexboxLayout subclass).
|
|
1245
1660
|
*
|
|
1246
1661
|
* @example
|
|
1247
|
-
* ```
|
|
1248
|
-
*
|
|
1662
|
+
* ```vue
|
|
1663
|
+
* <VPressable
|
|
1664
|
+
* :style="{ padding: 16 }"
|
|
1665
|
+
* :onPress="handlePress"
|
|
1666
|
+
* :onLongPress="handleLongPress"
|
|
1667
|
+
* :activeOpacity="0.6"
|
|
1668
|
+
* >
|
|
1669
|
+
* <VView :style="{ flexDirection: 'row', alignItems: 'center' }">
|
|
1670
|
+
* <VImage :source="{ uri: icon }" :style="{ width: 24, height: 24 }" />
|
|
1671
|
+
* <VText :style="{ marginLeft: 8 }">Press me</VText>
|
|
1672
|
+
* </VView>
|
|
1673
|
+
* </VPressable>
|
|
1249
1674
|
* ```
|
|
1250
1675
|
*/
|
|
1251
|
-
declare
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1676
|
+
declare const VPressable: _vue_runtime_core.DefineComponent<_vue_runtime_core.ExtractPropTypes<{
|
|
1677
|
+
style: PropType<ViewStyle>;
|
|
1678
|
+
disabled: {
|
|
1679
|
+
type: BooleanConstructor;
|
|
1680
|
+
default: boolean;
|
|
1681
|
+
};
|
|
1682
|
+
activeOpacity: {
|
|
1683
|
+
type: NumberConstructor;
|
|
1684
|
+
default: number;
|
|
1685
|
+
};
|
|
1686
|
+
onPress: PropType<() => void>;
|
|
1687
|
+
onPressIn: PropType<() => void>;
|
|
1688
|
+
onPressOut: PropType<() => void>;
|
|
1689
|
+
onLongPress: PropType<() => void>;
|
|
1690
|
+
accessibilityLabel: StringConstructor;
|
|
1691
|
+
accessibilityRole: StringConstructor;
|
|
1692
|
+
accessibilityHint: StringConstructor;
|
|
1693
|
+
accessibilityState: ObjectConstructor;
|
|
1694
|
+
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
1695
|
+
[key: string]: any;
|
|
1696
|
+
}>, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, {}, string, _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
1697
|
+
style: PropType<ViewStyle>;
|
|
1698
|
+
disabled: {
|
|
1699
|
+
type: BooleanConstructor;
|
|
1700
|
+
default: boolean;
|
|
1701
|
+
};
|
|
1702
|
+
activeOpacity: {
|
|
1703
|
+
type: NumberConstructor;
|
|
1704
|
+
default: number;
|
|
1705
|
+
};
|
|
1706
|
+
onPress: PropType<() => void>;
|
|
1707
|
+
onPressIn: PropType<() => void>;
|
|
1708
|
+
onPressOut: PropType<() => void>;
|
|
1709
|
+
onLongPress: PropType<() => void>;
|
|
1710
|
+
accessibilityLabel: StringConstructor;
|
|
1711
|
+
accessibilityRole: StringConstructor;
|
|
1712
|
+
accessibilityHint: StringConstructor;
|
|
1713
|
+
accessibilityState: ObjectConstructor;
|
|
1714
|
+
}>> & Readonly<{}>, {
|
|
1715
|
+
disabled: boolean;
|
|
1716
|
+
activeOpacity: number;
|
|
1717
|
+
}, {}, {}, {}, string, _vue_runtime_core.ComponentProvideOptions, true, {}, any>;
|
|
1262
1718
|
|
|
1263
1719
|
/**
|
|
1264
|
-
*
|
|
1720
|
+
* VSectionList — A sectioned list component backed by UITableView with sections on iOS.
|
|
1265
1721
|
*
|
|
1266
|
-
*
|
|
1267
|
-
*
|
|
1268
|
-
* dispatched through a special keyboard node.
|
|
1722
|
+
* Renders grouped data with section headers. Each section has a title and
|
|
1723
|
+
* an array of data items rendered via the #item slot.
|
|
1269
1724
|
*
|
|
1270
1725
|
* @example
|
|
1271
|
-
*
|
|
1272
|
-
*
|
|
1273
|
-
*
|
|
1274
|
-
|
|
1726
|
+
* <VSectionList
|
|
1727
|
+
* :sections="[
|
|
1728
|
+
* { title: 'Fruits', data: ['Apple', 'Banana'] },
|
|
1729
|
+
* { title: 'Vegetables', data: ['Carrot', 'Pea'] },
|
|
1730
|
+
* ]"
|
|
1731
|
+
* :estimatedItemHeight="48"
|
|
1732
|
+
* :style="{ flex: 1 }"
|
|
1733
|
+
* >
|
|
1734
|
+
* <template #sectionHeader="{ section }">
|
|
1735
|
+
* <VText :style="{ fontWeight: 'bold', padding: 8 }">{{ section.title }}</VText>
|
|
1736
|
+
* </template>
|
|
1737
|
+
* <template #item="{ item, index, section }">
|
|
1738
|
+
* <VText :style="{ padding: 12 }">{{ item }}</VText>
|
|
1739
|
+
* </template>
|
|
1740
|
+
* </VSectionList>
|
|
1741
|
+
*/
|
|
1742
|
+
interface Section {
|
|
1743
|
+
title: string;
|
|
1744
|
+
data: any[];
|
|
1745
|
+
}
|
|
1746
|
+
declare const VSectionList: _vue_runtime_core.DefineComponent<_vue_runtime_core.ExtractPropTypes<{
|
|
1747
|
+
/** Array of section objects, each with a title and data array */
|
|
1748
|
+
sections: {
|
|
1749
|
+
type: () => Section[];
|
|
1750
|
+
required: true;
|
|
1751
|
+
};
|
|
1752
|
+
/** Extract a unique key from each item. Defaults to index as string. */
|
|
1753
|
+
keyExtractor: {
|
|
1754
|
+
type: () => (item: any, index: number) => string;
|
|
1755
|
+
default: (_item: any, index: number) => string;
|
|
1756
|
+
};
|
|
1757
|
+
/** Estimated height per row in points. Default: 44 */
|
|
1758
|
+
estimatedItemHeight: {
|
|
1759
|
+
type: NumberConstructor;
|
|
1760
|
+
default: number;
|
|
1761
|
+
};
|
|
1762
|
+
/** Whether section headers stick to the top when scrolling. Default: true */
|
|
1763
|
+
stickySectionHeaders: {
|
|
1764
|
+
type: BooleanConstructor;
|
|
1765
|
+
default: boolean;
|
|
1766
|
+
};
|
|
1767
|
+
/** Show vertical scroll indicator. Default: true */
|
|
1768
|
+
showsScrollIndicator: {
|
|
1769
|
+
type: BooleanConstructor;
|
|
1770
|
+
default: boolean;
|
|
1771
|
+
};
|
|
1772
|
+
/** Enable bounce at scroll boundaries. Default: true */
|
|
1773
|
+
bounces: {
|
|
1774
|
+
type: BooleanConstructor;
|
|
1775
|
+
default: boolean;
|
|
1776
|
+
};
|
|
1777
|
+
style: {
|
|
1778
|
+
type: ObjectConstructor;
|
|
1779
|
+
default: () => {};
|
|
1780
|
+
};
|
|
1781
|
+
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
1782
|
+
[key: string]: any;
|
|
1783
|
+
}>, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, ("scroll" | "endReached")[], "scroll" | "endReached", _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
1784
|
+
/** Array of section objects, each with a title and data array */
|
|
1785
|
+
sections: {
|
|
1786
|
+
type: () => Section[];
|
|
1787
|
+
required: true;
|
|
1788
|
+
};
|
|
1789
|
+
/** Extract a unique key from each item. Defaults to index as string. */
|
|
1790
|
+
keyExtractor: {
|
|
1791
|
+
type: () => (item: any, index: number) => string;
|
|
1792
|
+
default: (_item: any, index: number) => string;
|
|
1793
|
+
};
|
|
1794
|
+
/** Estimated height per row in points. Default: 44 */
|
|
1795
|
+
estimatedItemHeight: {
|
|
1796
|
+
type: NumberConstructor;
|
|
1797
|
+
default: number;
|
|
1798
|
+
};
|
|
1799
|
+
/** Whether section headers stick to the top when scrolling. Default: true */
|
|
1800
|
+
stickySectionHeaders: {
|
|
1801
|
+
type: BooleanConstructor;
|
|
1802
|
+
default: boolean;
|
|
1803
|
+
};
|
|
1804
|
+
/** Show vertical scroll indicator. Default: true */
|
|
1805
|
+
showsScrollIndicator: {
|
|
1806
|
+
type: BooleanConstructor;
|
|
1807
|
+
default: boolean;
|
|
1808
|
+
};
|
|
1809
|
+
/** Enable bounce at scroll boundaries. Default: true */
|
|
1810
|
+
bounces: {
|
|
1811
|
+
type: BooleanConstructor;
|
|
1812
|
+
default: boolean;
|
|
1813
|
+
};
|
|
1814
|
+
style: {
|
|
1815
|
+
type: ObjectConstructor;
|
|
1816
|
+
default: () => {};
|
|
1817
|
+
};
|
|
1818
|
+
}>> & Readonly<{
|
|
1819
|
+
onScroll?: ((...args: any[]) => any) | undefined;
|
|
1820
|
+
onEndReached?: ((...args: any[]) => any) | undefined;
|
|
1821
|
+
}>, {
|
|
1822
|
+
style: Record<string, any>;
|
|
1823
|
+
bounces: boolean;
|
|
1824
|
+
keyExtractor: (item: any, index: number) => string;
|
|
1825
|
+
estimatedItemHeight: number;
|
|
1826
|
+
showsScrollIndicator: boolean;
|
|
1827
|
+
stickySectionHeaders: boolean;
|
|
1828
|
+
}, {}, {}, {}, string, _vue_runtime_core.ComponentProvideOptions, true, {}, any>;
|
|
1829
|
+
|
|
1830
|
+
/**
|
|
1831
|
+
* VCheckbox — a boolean checkbox component with optional label.
|
|
1832
|
+
*
|
|
1833
|
+
* Maps to a custom checkbox view on iOS, CheckBox on Android.
|
|
1834
|
+
* Supports v-model for two-way binding.
|
|
1835
|
+
*
|
|
1836
|
+
* @example
|
|
1837
|
+
* ```vue
|
|
1838
|
+
* <VCheckbox v-model="accepted" label="I accept the terms" />
|
|
1839
|
+
* ```
|
|
1840
|
+
*/
|
|
1841
|
+
declare const VCheckbox: _vue_runtime_core.DefineComponent<_vue_runtime_core.ExtractPropTypes<{
|
|
1842
|
+
modelValue: {
|
|
1843
|
+
type: BooleanConstructor;
|
|
1844
|
+
default: boolean;
|
|
1845
|
+
};
|
|
1846
|
+
disabled: {
|
|
1847
|
+
type: BooleanConstructor;
|
|
1848
|
+
default: boolean;
|
|
1849
|
+
};
|
|
1850
|
+
label: {
|
|
1851
|
+
type: StringConstructor;
|
|
1852
|
+
default: undefined;
|
|
1853
|
+
};
|
|
1854
|
+
checkColor: StringConstructor;
|
|
1855
|
+
tintColor: StringConstructor;
|
|
1856
|
+
style: ObjectConstructor;
|
|
1857
|
+
accessibilityLabel: StringConstructor;
|
|
1858
|
+
accessibilityHint: StringConstructor;
|
|
1859
|
+
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
1860
|
+
[key: string]: any;
|
|
1861
|
+
}>, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, ("update:modelValue" | "change")[], "update:modelValue" | "change", _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
1862
|
+
modelValue: {
|
|
1863
|
+
type: BooleanConstructor;
|
|
1864
|
+
default: boolean;
|
|
1865
|
+
};
|
|
1866
|
+
disabled: {
|
|
1867
|
+
type: BooleanConstructor;
|
|
1868
|
+
default: boolean;
|
|
1869
|
+
};
|
|
1870
|
+
label: {
|
|
1871
|
+
type: StringConstructor;
|
|
1872
|
+
default: undefined;
|
|
1873
|
+
};
|
|
1874
|
+
checkColor: StringConstructor;
|
|
1875
|
+
tintColor: StringConstructor;
|
|
1876
|
+
style: ObjectConstructor;
|
|
1877
|
+
accessibilityLabel: StringConstructor;
|
|
1878
|
+
accessibilityHint: StringConstructor;
|
|
1879
|
+
}>> & Readonly<{
|
|
1880
|
+
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
1881
|
+
onChange?: ((...args: any[]) => any) | undefined;
|
|
1882
|
+
}>, {
|
|
1883
|
+
disabled: boolean;
|
|
1884
|
+
modelValue: boolean;
|
|
1885
|
+
label: string;
|
|
1886
|
+
}, {}, {}, {}, string, _vue_runtime_core.ComponentProvideOptions, true, {}, any>;
|
|
1887
|
+
|
|
1888
|
+
interface RadioOption {
|
|
1889
|
+
label: string;
|
|
1890
|
+
value: string;
|
|
1891
|
+
}
|
|
1892
|
+
/**
|
|
1893
|
+
* VRadio — a radio button group component.
|
|
1894
|
+
*
|
|
1895
|
+
* Maps to a custom UIStackView with radio circles on iOS,
|
|
1896
|
+
* RadioGroup + RadioButton on Android.
|
|
1897
|
+
*
|
|
1898
|
+
* @example
|
|
1899
|
+
* ```vue
|
|
1900
|
+
* <VRadio
|
|
1901
|
+
* v-model="size"
|
|
1902
|
+
* :options="[
|
|
1903
|
+
* { label: 'Small', value: 'sm' },
|
|
1904
|
+
* { label: 'Medium', value: 'md' },
|
|
1905
|
+
* { label: 'Large', value: 'lg' },
|
|
1906
|
+
* ]"
|
|
1907
|
+
* />
|
|
1908
|
+
* ```
|
|
1909
|
+
*/
|
|
1910
|
+
declare const VRadio: _vue_runtime_core.DefineComponent<_vue_runtime_core.ExtractPropTypes<{
|
|
1911
|
+
modelValue: {
|
|
1912
|
+
type: StringConstructor;
|
|
1913
|
+
default: undefined;
|
|
1914
|
+
};
|
|
1915
|
+
options: {
|
|
1916
|
+
type: PropType<RadioOption[]>;
|
|
1917
|
+
required: true;
|
|
1918
|
+
};
|
|
1919
|
+
disabled: {
|
|
1920
|
+
type: BooleanConstructor;
|
|
1921
|
+
default: boolean;
|
|
1922
|
+
};
|
|
1923
|
+
tintColor: StringConstructor;
|
|
1924
|
+
style: ObjectConstructor;
|
|
1925
|
+
accessibilityLabel: StringConstructor;
|
|
1926
|
+
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
1927
|
+
[key: string]: any;
|
|
1928
|
+
}>, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, ("update:modelValue" | "change")[], "update:modelValue" | "change", _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
1929
|
+
modelValue: {
|
|
1930
|
+
type: StringConstructor;
|
|
1931
|
+
default: undefined;
|
|
1932
|
+
};
|
|
1933
|
+
options: {
|
|
1934
|
+
type: PropType<RadioOption[]>;
|
|
1935
|
+
required: true;
|
|
1936
|
+
};
|
|
1937
|
+
disabled: {
|
|
1938
|
+
type: BooleanConstructor;
|
|
1939
|
+
default: boolean;
|
|
1940
|
+
};
|
|
1941
|
+
tintColor: StringConstructor;
|
|
1942
|
+
style: ObjectConstructor;
|
|
1943
|
+
accessibilityLabel: StringConstructor;
|
|
1944
|
+
}>> & Readonly<{
|
|
1945
|
+
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
1946
|
+
onChange?: ((...args: any[]) => any) | undefined;
|
|
1947
|
+
}>, {
|
|
1948
|
+
disabled: boolean;
|
|
1949
|
+
modelValue: string;
|
|
1950
|
+
}, {}, {}, {}, string, _vue_runtime_core.ComponentProvideOptions, true, {}, any>;
|
|
1951
|
+
|
|
1952
|
+
interface DropdownOption {
|
|
1953
|
+
label: string;
|
|
1954
|
+
value: string;
|
|
1955
|
+
}
|
|
1956
|
+
/**
|
|
1957
|
+
* VDropdown — a dropdown/picker selection component.
|
|
1958
|
+
*
|
|
1959
|
+
* Maps to UIMenu (iOS 14+) or UIPickerView on iOS, Spinner on Android.
|
|
1960
|
+
*
|
|
1961
|
+
* @example
|
|
1962
|
+
* ```vue
|
|
1963
|
+
* <VDropdown
|
|
1964
|
+
* v-model="country"
|
|
1965
|
+
* placeholder="Select country"
|
|
1966
|
+
* :options="[
|
|
1967
|
+
* { label: 'United States', value: 'us' },
|
|
1968
|
+
* { label: 'Canada', value: 'ca' },
|
|
1969
|
+
* { label: 'Mexico', value: 'mx' },
|
|
1970
|
+
* ]"
|
|
1971
|
+
* />
|
|
1972
|
+
* ```
|
|
1973
|
+
*/
|
|
1974
|
+
declare const VDropdown: _vue_runtime_core.DefineComponent<_vue_runtime_core.ExtractPropTypes<{
|
|
1975
|
+
modelValue: {
|
|
1976
|
+
type: StringConstructor;
|
|
1977
|
+
default: undefined;
|
|
1978
|
+
};
|
|
1979
|
+
options: {
|
|
1980
|
+
type: PropType<DropdownOption[]>;
|
|
1981
|
+
required: true;
|
|
1982
|
+
};
|
|
1983
|
+
placeholder: {
|
|
1984
|
+
type: StringConstructor;
|
|
1985
|
+
default: string;
|
|
1986
|
+
};
|
|
1987
|
+
disabled: {
|
|
1988
|
+
type: BooleanConstructor;
|
|
1989
|
+
default: boolean;
|
|
1990
|
+
};
|
|
1991
|
+
tintColor: StringConstructor;
|
|
1992
|
+
style: ObjectConstructor;
|
|
1993
|
+
accessibilityLabel: StringConstructor;
|
|
1994
|
+
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
1995
|
+
[key: string]: any;
|
|
1996
|
+
}>, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, ("update:modelValue" | "change")[], "update:modelValue" | "change", _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
1997
|
+
modelValue: {
|
|
1998
|
+
type: StringConstructor;
|
|
1999
|
+
default: undefined;
|
|
2000
|
+
};
|
|
2001
|
+
options: {
|
|
2002
|
+
type: PropType<DropdownOption[]>;
|
|
2003
|
+
required: true;
|
|
2004
|
+
};
|
|
2005
|
+
placeholder: {
|
|
2006
|
+
type: StringConstructor;
|
|
2007
|
+
default: string;
|
|
2008
|
+
};
|
|
2009
|
+
disabled: {
|
|
2010
|
+
type: BooleanConstructor;
|
|
2011
|
+
default: boolean;
|
|
2012
|
+
};
|
|
2013
|
+
tintColor: StringConstructor;
|
|
2014
|
+
style: ObjectConstructor;
|
|
2015
|
+
accessibilityLabel: StringConstructor;
|
|
2016
|
+
}>> & Readonly<{
|
|
2017
|
+
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
2018
|
+
onChange?: ((...args: any[]) => any) | undefined;
|
|
2019
|
+
}>, {
|
|
2020
|
+
disabled: boolean;
|
|
2021
|
+
placeholder: string;
|
|
2022
|
+
modelValue: string;
|
|
2023
|
+
}, {}, {}, {}, string, _vue_runtime_core.ComponentProvideOptions, true, {}, any>;
|
|
2024
|
+
|
|
2025
|
+
/**
|
|
2026
|
+
* VVideo — the video playback component in Vue Native.
|
|
2027
|
+
*
|
|
2028
|
+
* Maps to AVPlayer on iOS and MediaPlayer on Android.
|
|
2029
|
+
* Supports inline video playback with progress reporting.
|
|
2030
|
+
*
|
|
2031
|
+
* @example
|
|
2032
|
+
* ```vue
|
|
2033
|
+
* <VVideo
|
|
2034
|
+
* :source="{ uri: 'https://example.com/video.mp4' }"
|
|
2035
|
+
* :autoplay="true"
|
|
2036
|
+
* :loop="false"
|
|
2037
|
+
* :muted="false"
|
|
2038
|
+
* resizeMode="cover"
|
|
2039
|
+
* :style="{ width: '100%', height: 200 }"
|
|
2040
|
+
* @ready="onReady"
|
|
2041
|
+
* @progress="onProgress"
|
|
2042
|
+
* @end="onEnd"
|
|
2043
|
+
* />
|
|
2044
|
+
* ```
|
|
2045
|
+
*/
|
|
2046
|
+
declare const VVideo: _vue_runtime_core.DefineComponent<_vue_runtime_core.ExtractPropTypes<{
|
|
2047
|
+
source: () => {
|
|
2048
|
+
uri: string;
|
|
2049
|
+
};
|
|
2050
|
+
autoplay: {
|
|
2051
|
+
type: BooleanConstructor;
|
|
2052
|
+
default: boolean;
|
|
2053
|
+
};
|
|
2054
|
+
loop: {
|
|
2055
|
+
type: BooleanConstructor;
|
|
2056
|
+
default: boolean;
|
|
2057
|
+
};
|
|
2058
|
+
muted: {
|
|
2059
|
+
type: BooleanConstructor;
|
|
2060
|
+
default: boolean;
|
|
2061
|
+
};
|
|
2062
|
+
paused: {
|
|
2063
|
+
type: BooleanConstructor;
|
|
2064
|
+
default: boolean;
|
|
2065
|
+
};
|
|
2066
|
+
controls: {
|
|
2067
|
+
type: BooleanConstructor;
|
|
2068
|
+
default: boolean;
|
|
2069
|
+
};
|
|
2070
|
+
volume: {
|
|
2071
|
+
type: NumberConstructor;
|
|
2072
|
+
default: number;
|
|
2073
|
+
};
|
|
2074
|
+
resizeMode: {
|
|
2075
|
+
type: () => "cover" | "contain" | "stretch" | "center";
|
|
2076
|
+
default: string;
|
|
2077
|
+
};
|
|
2078
|
+
poster: StringConstructor;
|
|
2079
|
+
style: PropType<ViewStyle>;
|
|
2080
|
+
testID: StringConstructor;
|
|
2081
|
+
accessibilityLabel: StringConstructor;
|
|
2082
|
+
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
2083
|
+
[key: string]: any;
|
|
2084
|
+
}>, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, ("error" | "progress" | "ready" | "play" | "pause" | "end")[], "error" | "progress" | "ready" | "play" | "pause" | "end", _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
2085
|
+
source: () => {
|
|
2086
|
+
uri: string;
|
|
2087
|
+
};
|
|
2088
|
+
autoplay: {
|
|
2089
|
+
type: BooleanConstructor;
|
|
2090
|
+
default: boolean;
|
|
2091
|
+
};
|
|
2092
|
+
loop: {
|
|
2093
|
+
type: BooleanConstructor;
|
|
2094
|
+
default: boolean;
|
|
2095
|
+
};
|
|
2096
|
+
muted: {
|
|
2097
|
+
type: BooleanConstructor;
|
|
2098
|
+
default: boolean;
|
|
2099
|
+
};
|
|
2100
|
+
paused: {
|
|
2101
|
+
type: BooleanConstructor;
|
|
2102
|
+
default: boolean;
|
|
2103
|
+
};
|
|
2104
|
+
controls: {
|
|
2105
|
+
type: BooleanConstructor;
|
|
2106
|
+
default: boolean;
|
|
2107
|
+
};
|
|
2108
|
+
volume: {
|
|
2109
|
+
type: NumberConstructor;
|
|
2110
|
+
default: number;
|
|
2111
|
+
};
|
|
2112
|
+
resizeMode: {
|
|
2113
|
+
type: () => "cover" | "contain" | "stretch" | "center";
|
|
2114
|
+
default: string;
|
|
2115
|
+
};
|
|
2116
|
+
poster: StringConstructor;
|
|
2117
|
+
style: PropType<ViewStyle>;
|
|
2118
|
+
testID: StringConstructor;
|
|
2119
|
+
accessibilityLabel: StringConstructor;
|
|
2120
|
+
}>> & Readonly<{
|
|
2121
|
+
onError?: ((...args: any[]) => any) | undefined;
|
|
2122
|
+
onProgress?: ((...args: any[]) => any) | undefined;
|
|
2123
|
+
onReady?: ((...args: any[]) => any) | undefined;
|
|
2124
|
+
onPlay?: ((...args: any[]) => any) | undefined;
|
|
2125
|
+
onPause?: ((...args: any[]) => any) | undefined;
|
|
2126
|
+
onEnd?: ((...args: any[]) => any) | undefined;
|
|
2127
|
+
}>, {
|
|
2128
|
+
resizeMode: "cover" | "contain" | "stretch" | "center";
|
|
2129
|
+
autoplay: boolean;
|
|
2130
|
+
loop: boolean;
|
|
2131
|
+
muted: boolean;
|
|
2132
|
+
paused: boolean;
|
|
2133
|
+
controls: boolean;
|
|
2134
|
+
volume: number;
|
|
2135
|
+
}, {}, {}, {}, string, _vue_runtime_core.ComponentProvideOptions, true, {}, any>;
|
|
2136
|
+
|
|
2137
|
+
declare const ErrorBoundary: _vue_runtime_core.DefineComponent<_vue_runtime_core.ExtractPropTypes<{
|
|
2138
|
+
onError: PropType<(error: Error, info: string) => void>;
|
|
2139
|
+
resetKeys: {
|
|
2140
|
+
type: PropType<any[]>;
|
|
2141
|
+
default: () => never[];
|
|
2142
|
+
};
|
|
2143
|
+
}>, () => _vue_runtime_core.VNode<_vue_runtime_core.RendererNode, _vue_runtime_core.RendererElement, {
|
|
2144
|
+
[key: string]: any;
|
|
2145
|
+
}>[] | undefined, {}, {}, {}, _vue_runtime_core.ComponentOptionsMixin, _vue_runtime_core.ComponentOptionsMixin, {}, string, _vue_runtime_core.PublicProps, Readonly<_vue_runtime_core.ExtractPropTypes<{
|
|
2146
|
+
onError: PropType<(error: Error, info: string) => void>;
|
|
2147
|
+
resetKeys: {
|
|
2148
|
+
type: PropType<any[]>;
|
|
2149
|
+
default: () => never[];
|
|
2150
|
+
};
|
|
2151
|
+
}>> & Readonly<{}>, {
|
|
2152
|
+
resetKeys: any[];
|
|
2153
|
+
}, {}, {}, {}, string, _vue_runtime_core.ComponentProvideOptions, true, {}, any>;
|
|
2154
|
+
|
|
2155
|
+
/**
|
|
2156
|
+
* v-show directive for Vue Native.
|
|
2157
|
+
* Maps to the 'hidden' prop on native views (view.isHidden in Swift).
|
|
2158
|
+
*/
|
|
2159
|
+
declare const vShow: Directive<NativeNode>;
|
|
2160
|
+
|
|
2161
|
+
/**
|
|
2162
|
+
* Haptic feedback composable.
|
|
2163
|
+
*
|
|
2164
|
+
* Wraps the native Haptics module to provide tactile feedback.
|
|
2165
|
+
*
|
|
2166
|
+
* @example
|
|
2167
|
+
* ```ts
|
|
2168
|
+
* const { vibrate, selectionChanged } = useHaptics()
|
|
2169
|
+
* vibrate('medium')
|
|
2170
|
+
* ```
|
|
2171
|
+
*/
|
|
2172
|
+
declare function useHaptics(): {
|
|
2173
|
+
vibrate: (style?: "light" | "medium" | "heavy" | "rigid" | "soft") => Promise<void>;
|
|
2174
|
+
notificationFeedback: (type?: "success" | "warning" | "error") => Promise<void>;
|
|
2175
|
+
selectionChanged: () => Promise<void>;
|
|
2176
|
+
};
|
|
2177
|
+
|
|
2178
|
+
/**
|
|
2179
|
+
* Async key-value storage composable backed by UserDefaults.
|
|
2180
|
+
*
|
|
2181
|
+
* All operations are Promise-based and run on a background thread.
|
|
2182
|
+
*
|
|
2183
|
+
* @example
|
|
2184
|
+
* ```ts
|
|
2185
|
+
* const storage = useAsyncStorage()
|
|
2186
|
+
* await storage.setItem('theme', 'dark')
|
|
2187
|
+
* const theme = await storage.getItem('theme')
|
|
2188
|
+
* ```
|
|
2189
|
+
*/
|
|
2190
|
+
declare function useAsyncStorage(): {
|
|
2191
|
+
getItem: (key: string) => Promise<string | null>;
|
|
2192
|
+
setItem: (key: string, value: string) => Promise<void>;
|
|
2193
|
+
removeItem: (key: string) => Promise<void>;
|
|
2194
|
+
getAllKeys: () => Promise<string[]>;
|
|
2195
|
+
clear: () => Promise<void>;
|
|
2196
|
+
};
|
|
2197
|
+
|
|
2198
|
+
/**
|
|
2199
|
+
* Clipboard composable providing read/write access to UIPasteboard.
|
|
2200
|
+
*
|
|
2201
|
+
* `content` is a reactive ref that updates when `paste()` is called.
|
|
2202
|
+
*
|
|
2203
|
+
* @example
|
|
2204
|
+
* ```ts
|
|
2205
|
+
* const { copy, paste, content } = useClipboard()
|
|
2206
|
+
* await copy('Hello, World!')
|
|
2207
|
+
* const text = await paste()
|
|
2208
|
+
* ```
|
|
2209
|
+
*/
|
|
2210
|
+
declare function useClipboard(): {
|
|
2211
|
+
copy: (text: string) => Promise<void>;
|
|
2212
|
+
paste: () => Promise<string>;
|
|
2213
|
+
content: _vue_reactivity.Ref<string, string>;
|
|
2214
|
+
};
|
|
2215
|
+
|
|
2216
|
+
/**
|
|
2217
|
+
* Device information composable.
|
|
2218
|
+
*
|
|
2219
|
+
* Fetches device info once on mount and exposes reactive refs.
|
|
2220
|
+
*
|
|
2221
|
+
* @example
|
|
2222
|
+
* ```ts
|
|
2223
|
+
* const { model, screenWidth, screenHeight } = useDeviceInfo()
|
|
2224
|
+
* ```
|
|
2225
|
+
*/
|
|
2226
|
+
declare function useDeviceInfo(): {
|
|
2227
|
+
model: _vue_reactivity.Ref<string, string>;
|
|
2228
|
+
systemVersion: _vue_reactivity.Ref<string, string>;
|
|
2229
|
+
systemName: _vue_reactivity.Ref<string, string>;
|
|
2230
|
+
name: _vue_reactivity.Ref<string, string>;
|
|
2231
|
+
screenWidth: _vue_reactivity.Ref<number, number>;
|
|
2232
|
+
screenHeight: _vue_reactivity.Ref<number, number>;
|
|
2233
|
+
scale: _vue_reactivity.Ref<number, number>;
|
|
2234
|
+
isLoaded: _vue_reactivity.Ref<boolean, boolean>;
|
|
2235
|
+
fetchInfo: () => Promise<void>;
|
|
2236
|
+
};
|
|
2237
|
+
|
|
2238
|
+
/**
|
|
2239
|
+
* Keyboard state composable.
|
|
2240
|
+
*
|
|
2241
|
+
* Provides reactive keyboard visibility state and a dismiss function.
|
|
2242
|
+
* The `isVisible` and `height` refs are updated by native keyboard events
|
|
2243
|
+
* dispatched through a special keyboard node.
|
|
2244
|
+
*
|
|
2245
|
+
* @example
|
|
2246
|
+
* ```ts
|
|
2247
|
+
* const { isVisible, height, dismiss } = useKeyboard()
|
|
2248
|
+
* ```
|
|
2249
|
+
*/
|
|
1275
2250
|
declare function useKeyboard(): {
|
|
1276
2251
|
isVisible: _vue_reactivity.Ref<boolean, boolean>;
|
|
1277
2252
|
height: _vue_reactivity.Ref<number, number>;
|
|
@@ -1502,17 +2477,60 @@ interface CameraResult {
|
|
|
1502
2477
|
type: string;
|
|
1503
2478
|
didCancel?: boolean;
|
|
1504
2479
|
}
|
|
2480
|
+
interface VideoCaptureOptions {
|
|
2481
|
+
/** Video quality: 'low' | 'medium' | 'high'. Default: 'medium' */
|
|
2482
|
+
quality?: 'low' | 'medium' | 'high';
|
|
2483
|
+
/** Maximum recording duration in seconds */
|
|
2484
|
+
maxDuration?: number;
|
|
2485
|
+
/** Use front camera. Default: false */
|
|
2486
|
+
frontCamera?: boolean;
|
|
2487
|
+
}
|
|
2488
|
+
interface VideoCaptureResult {
|
|
2489
|
+
uri: string;
|
|
2490
|
+
duration: number;
|
|
2491
|
+
type: string;
|
|
2492
|
+
didCancel?: boolean;
|
|
2493
|
+
}
|
|
2494
|
+
interface QRCodeResult {
|
|
2495
|
+
/** Decoded QR code / barcode data */
|
|
2496
|
+
data: string;
|
|
2497
|
+
/** Barcode type (e.g. "org.iso.QRCode", "org.gs1.EAN-13") */
|
|
2498
|
+
type: string;
|
|
2499
|
+
/** Bounding rectangle of the detected code in normalized coordinates (0-1) */
|
|
2500
|
+
bounds: {
|
|
2501
|
+
x: number;
|
|
2502
|
+
y: number;
|
|
2503
|
+
width: number;
|
|
2504
|
+
height: number;
|
|
2505
|
+
};
|
|
2506
|
+
}
|
|
1505
2507
|
/**
|
|
1506
|
-
*
|
|
2508
|
+
* Camera composable for photo capture, video recording, and QR code scanning.
|
|
1507
2509
|
*
|
|
1508
2510
|
* @example
|
|
1509
|
-
* const { launchCamera, launchImageLibrary } = useCamera()
|
|
1510
|
-
*
|
|
1511
|
-
*
|
|
2511
|
+
* const { launchCamera, launchImageLibrary, captureVideo, scanQRCode, stopQRScan, onQRCodeDetected } = useCamera()
|
|
2512
|
+
*
|
|
2513
|
+
* // Photo
|
|
2514
|
+
* const photo = await launchCamera()
|
|
2515
|
+
* if (!photo.didCancel) imageUri.value = photo.uri
|
|
2516
|
+
*
|
|
2517
|
+
* // Video
|
|
2518
|
+
* const video = await captureVideo({ quality: 'high', maxDuration: 30 })
|
|
2519
|
+
* if (!video.didCancel) videoUri.value = video.uri
|
|
2520
|
+
*
|
|
2521
|
+
* // QR scanning
|
|
2522
|
+
* onQRCodeDetected((result) => {
|
|
2523
|
+
* console.log('Scanned:', result.data)
|
|
2524
|
+
* })
|
|
2525
|
+
* await scanQRCode()
|
|
1512
2526
|
*/
|
|
1513
2527
|
declare function useCamera(): {
|
|
1514
2528
|
launchCamera: (options?: CameraOptions) => Promise<CameraResult>;
|
|
1515
2529
|
launchImageLibrary: (options?: CameraOptions) => Promise<CameraResult>;
|
|
2530
|
+
captureVideo: (options?: VideoCaptureOptions) => Promise<VideoCaptureResult>;
|
|
2531
|
+
scanQRCode: () => Promise<void>;
|
|
2532
|
+
stopQRScan: () => Promise<void>;
|
|
2533
|
+
onQRCodeDetected: (callback: (result: QRCodeResult) => void) => () => void;
|
|
1516
2534
|
};
|
|
1517
2535
|
|
|
1518
2536
|
interface LocalNotification {
|
|
@@ -1531,13 +2549,28 @@ interface NotificationPayload {
|
|
|
1531
2549
|
data: Record<string, any>;
|
|
1532
2550
|
action?: string;
|
|
1533
2551
|
}
|
|
2552
|
+
interface PushNotificationPayload {
|
|
2553
|
+
title: string;
|
|
2554
|
+
body: string;
|
|
2555
|
+
data: Record<string, any>;
|
|
2556
|
+
remote: true;
|
|
2557
|
+
}
|
|
1534
2558
|
/**
|
|
1535
|
-
* Local
|
|
2559
|
+
* Local and push notification management.
|
|
1536
2560
|
*
|
|
1537
2561
|
* @example
|
|
2562
|
+
* // Local notifications
|
|
1538
2563
|
* const { requestPermission, scheduleLocal, onNotification } = useNotifications()
|
|
1539
2564
|
* await requestPermission()
|
|
1540
2565
|
* await scheduleLocal({ title: 'Reminder', body: 'Don\'t forget!', delay: 5 })
|
|
2566
|
+
*
|
|
2567
|
+
* // Push notifications
|
|
2568
|
+
* const { registerForPush, getToken, onPushReceived } = useNotifications()
|
|
2569
|
+
* await registerForPush()
|
|
2570
|
+
* const token = await getToken()
|
|
2571
|
+
* onPushReceived((notification) => {
|
|
2572
|
+
* console.log('Push:', notification.title, notification.body)
|
|
2573
|
+
* })
|
|
1541
2574
|
*/
|
|
1542
2575
|
declare function useNotifications(): {
|
|
1543
2576
|
isGranted: _vue_reactivity.Ref<boolean, boolean>;
|
|
@@ -1547,6 +2580,11 @@ declare function useNotifications(): {
|
|
|
1547
2580
|
cancel: (id: string) => Promise<void>;
|
|
1548
2581
|
cancelAll: () => Promise<void>;
|
|
1549
2582
|
onNotification: (handler: (payload: NotificationPayload) => void) => () => void;
|
|
2583
|
+
pushToken: _vue_reactivity.Ref<string | null, string | null>;
|
|
2584
|
+
registerForPush: () => Promise<void>;
|
|
2585
|
+
getToken: () => Promise<string | null>;
|
|
2586
|
+
onPushToken: (handler: (token: string) => void) => () => void;
|
|
2587
|
+
onPushReceived: (handler: (payload: PushNotificationPayload) => void) => () => void;
|
|
1550
2588
|
};
|
|
1551
2589
|
|
|
1552
2590
|
type BiometryType = 'faceID' | 'touchID' | 'opticID' | 'none';
|
|
@@ -1572,6 +2610,17 @@ interface HttpRequestConfig {
|
|
|
1572
2610
|
baseURL?: string;
|
|
1573
2611
|
headers?: Record<string, string>;
|
|
1574
2612
|
timeout?: number;
|
|
2613
|
+
/**
|
|
2614
|
+
* Certificate pinning configuration.
|
|
2615
|
+
* Maps domain names to arrays of SHA-256 pin hashes.
|
|
2616
|
+
* Each pin must be in the format "sha256/<base64-encoded-hash>".
|
|
2617
|
+
*
|
|
2618
|
+
* @example
|
|
2619
|
+
* pins: {
|
|
2620
|
+
* 'api.example.com': ['sha256/AAAAAAA...', 'sha256/BBBBBBB...'],
|
|
2621
|
+
* }
|
|
2622
|
+
*/
|
|
2623
|
+
pins?: Record<string, string[]>;
|
|
1575
2624
|
}
|
|
1576
2625
|
interface HttpResponse<T = any> {
|
|
1577
2626
|
data: T;
|
|
@@ -1634,6 +2683,768 @@ declare function useColorScheme(): {
|
|
|
1634
2683
|
*/
|
|
1635
2684
|
declare function useBackHandler(handler: () => boolean): void;
|
|
1636
2685
|
|
|
2686
|
+
/**
|
|
2687
|
+
* Secure key-value storage composable backed by Keychain (iOS) and
|
|
2688
|
+
* EncryptedSharedPreferences (Android).
|
|
2689
|
+
*
|
|
2690
|
+
* All operations are Promise-based and run on a background thread.
|
|
2691
|
+
*
|
|
2692
|
+
* @example
|
|
2693
|
+
* ```ts
|
|
2694
|
+
* const secureStorage = useSecureStorage()
|
|
2695
|
+
* await secureStorage.setItem('token', 'abc123')
|
|
2696
|
+
* const token = await secureStorage.getItem('token')
|
|
2697
|
+
* ```
|
|
2698
|
+
*/
|
|
2699
|
+
declare function useSecureStorage(): {
|
|
2700
|
+
getItem: (key: string) => Promise<string | null>;
|
|
2701
|
+
setItem: (key: string, value: string) => Promise<void>;
|
|
2702
|
+
removeItem: (key: string) => Promise<void>;
|
|
2703
|
+
clear: () => Promise<void>;
|
|
2704
|
+
};
|
|
2705
|
+
|
|
2706
|
+
declare function useI18n(): {
|
|
2707
|
+
isRTL: _vue_reactivity.Ref<boolean, boolean>;
|
|
2708
|
+
locale: _vue_reactivity.Ref<string, string>;
|
|
2709
|
+
};
|
|
2710
|
+
|
|
2711
|
+
type Platform = 'ios' | 'android';
|
|
2712
|
+
/**
|
|
2713
|
+
* Returns the current platform ('ios' or 'android').
|
|
2714
|
+
*
|
|
2715
|
+
* Relies on the `__PLATFORM__` compile-time constant injected by the Vite plugin.
|
|
2716
|
+
* Falls back to 'ios' if not defined.
|
|
2717
|
+
*
|
|
2718
|
+
* @example
|
|
2719
|
+
* ```ts
|
|
2720
|
+
* const { platform, isIOS, isAndroid } = usePlatform()
|
|
2721
|
+
* ```
|
|
2722
|
+
*/
|
|
2723
|
+
declare function usePlatform(): {
|
|
2724
|
+
platform: Platform;
|
|
2725
|
+
isIOS: boolean;
|
|
2726
|
+
isAndroid: boolean;
|
|
2727
|
+
};
|
|
2728
|
+
|
|
2729
|
+
interface Dimensions {
|
|
2730
|
+
width: number;
|
|
2731
|
+
height: number;
|
|
2732
|
+
scale: number;
|
|
2733
|
+
}
|
|
2734
|
+
/**
|
|
2735
|
+
* Reactive screen dimensions composable.
|
|
2736
|
+
*
|
|
2737
|
+
* Fetches initial dimensions from DeviceInfo on mount, then listens for
|
|
2738
|
+
* orientation/resize changes via the 'dimensionsChange' global event.
|
|
2739
|
+
*
|
|
2740
|
+
* @example
|
|
2741
|
+
* ```ts
|
|
2742
|
+
* const { width, height, scale } = useDimensions()
|
|
2743
|
+
* ```
|
|
2744
|
+
*/
|
|
2745
|
+
declare function useDimensions(): {
|
|
2746
|
+
width: _vue_reactivity.Ref<number, number>;
|
|
2747
|
+
height: _vue_reactivity.Ref<number, number>;
|
|
2748
|
+
scale: _vue_reactivity.Ref<number, number>;
|
|
2749
|
+
};
|
|
2750
|
+
|
|
2751
|
+
type WebSocketStatus = 'CLOSED' | 'CONNECTING' | 'OPEN' | 'CLOSING';
|
|
2752
|
+
interface WebSocketOptions {
|
|
2753
|
+
/** Automatically connect on creation. Defaults to true. */
|
|
2754
|
+
autoConnect?: boolean;
|
|
2755
|
+
/** Automatically reconnect on close. Defaults to false. */
|
|
2756
|
+
autoReconnect?: boolean;
|
|
2757
|
+
/** Max reconnect attempts. Defaults to 3. */
|
|
2758
|
+
maxReconnectAttempts?: number;
|
|
2759
|
+
/** Reconnect interval in ms. Defaults to 1000. */
|
|
2760
|
+
reconnectInterval?: number;
|
|
2761
|
+
}
|
|
2762
|
+
/**
|
|
2763
|
+
* Reactive WebSocket connection.
|
|
2764
|
+
*
|
|
2765
|
+
* @example
|
|
2766
|
+
* const { status, lastMessage, send, open, close } = useWebSocket('wss://echo.example.com')
|
|
2767
|
+
*
|
|
2768
|
+
* watch(lastMessage, (msg) => {
|
|
2769
|
+
* console.log('Received:', msg)
|
|
2770
|
+
* })
|
|
2771
|
+
*
|
|
2772
|
+
* send('Hello!')
|
|
2773
|
+
* send({ type: 'ping' }) // Objects are auto-stringified
|
|
2774
|
+
*/
|
|
2775
|
+
declare function useWebSocket(url: string, options?: WebSocketOptions): {
|
|
2776
|
+
status: _vue_reactivity.Ref<WebSocketStatus, WebSocketStatus>;
|
|
2777
|
+
lastMessage: _vue_reactivity.Ref<string | null, string | null>;
|
|
2778
|
+
error: _vue_reactivity.Ref<string | null, string | null>;
|
|
2779
|
+
send: (data: string | object) => void;
|
|
2780
|
+
close: (code?: number, reason?: string) => void;
|
|
2781
|
+
open: () => void;
|
|
2782
|
+
};
|
|
2783
|
+
|
|
2784
|
+
/**
|
|
2785
|
+
* File system access composable for reading, writing, and managing files.
|
|
2786
|
+
*
|
|
2787
|
+
* All operations are Promise-based and execute on a background thread.
|
|
2788
|
+
* Paths should be absolute — use getDocumentsPath() or getCachesPath()
|
|
2789
|
+
* to obtain app-scoped directories.
|
|
2790
|
+
*
|
|
2791
|
+
* @example
|
|
2792
|
+
* ```ts
|
|
2793
|
+
* const fs = useFileSystem()
|
|
2794
|
+
* const docsDir = await fs.getDocumentsPath()
|
|
2795
|
+
* await fs.writeFile(`${docsDir}/notes.txt`, 'Hello world')
|
|
2796
|
+
* const content = await fs.readFile(`${docsDir}/notes.txt`)
|
|
2797
|
+
* ```
|
|
2798
|
+
*/
|
|
2799
|
+
interface FileStat {
|
|
2800
|
+
size: number;
|
|
2801
|
+
isDirectory: boolean;
|
|
2802
|
+
/** Last modified time in milliseconds since epoch */
|
|
2803
|
+
modified: number;
|
|
2804
|
+
}
|
|
2805
|
+
declare function useFileSystem(): {
|
|
2806
|
+
readFile: (path: string, encoding?: "utf8" | "base64") => Promise<string>;
|
|
2807
|
+
writeFile: (path: string, content: string, encoding?: "utf8" | "base64") => Promise<void>;
|
|
2808
|
+
deleteFile: (path: string) => Promise<void>;
|
|
2809
|
+
exists: (path: string) => Promise<boolean>;
|
|
2810
|
+
listDirectory: (path: string) => Promise<string[]>;
|
|
2811
|
+
downloadFile: (url: string, destPath: string) => Promise<string>;
|
|
2812
|
+
getDocumentsPath: () => Promise<string>;
|
|
2813
|
+
getCachesPath: () => Promise<string>;
|
|
2814
|
+
stat: (path: string) => Promise<FileStat>;
|
|
2815
|
+
mkdir: (path: string) => Promise<void>;
|
|
2816
|
+
copyFile: (srcPath: string, destPath: string) => Promise<void>;
|
|
2817
|
+
moveFile: (srcPath: string, destPath: string) => Promise<void>;
|
|
2818
|
+
};
|
|
2819
|
+
|
|
2820
|
+
interface SensorOptions {
|
|
2821
|
+
/** Update interval in milliseconds. Default: 100 */
|
|
2822
|
+
interval?: number;
|
|
2823
|
+
}
|
|
2824
|
+
interface SensorData {
|
|
2825
|
+
x: number;
|
|
2826
|
+
y: number;
|
|
2827
|
+
z: number;
|
|
2828
|
+
}
|
|
2829
|
+
/**
|
|
2830
|
+
* Reactive accelerometer data. Reads device acceleration (including gravity)
|
|
2831
|
+
* via CMMotionManager on iOS and SensorManager on Android.
|
|
2832
|
+
*
|
|
2833
|
+
* @example
|
|
2834
|
+
* const { x, y, z, isAvailable, start, stop } = useAccelerometer({ interval: 50 })
|
|
2835
|
+
*/
|
|
2836
|
+
declare function useAccelerometer(options?: SensorOptions): {
|
|
2837
|
+
x: _vue_reactivity.Ref<number, number>;
|
|
2838
|
+
y: _vue_reactivity.Ref<number, number>;
|
|
2839
|
+
z: _vue_reactivity.Ref<number, number>;
|
|
2840
|
+
isAvailable: _vue_reactivity.Ref<boolean, boolean>;
|
|
2841
|
+
start: () => void;
|
|
2842
|
+
stop: () => void;
|
|
2843
|
+
};
|
|
2844
|
+
/**
|
|
2845
|
+
* Reactive gyroscope data. Reads device rotation rate
|
|
2846
|
+
* via CMMotionManager on iOS and SensorManager on Android.
|
|
2847
|
+
*
|
|
2848
|
+
* @example
|
|
2849
|
+
* const { x, y, z, isAvailable, start, stop } = useGyroscope({ interval: 50 })
|
|
2850
|
+
*/
|
|
2851
|
+
declare function useGyroscope(options?: SensorOptions): {
|
|
2852
|
+
x: _vue_reactivity.Ref<number, number>;
|
|
2853
|
+
y: _vue_reactivity.Ref<number, number>;
|
|
2854
|
+
z: _vue_reactivity.Ref<number, number>;
|
|
2855
|
+
isAvailable: _vue_reactivity.Ref<boolean, boolean>;
|
|
2856
|
+
start: () => void;
|
|
2857
|
+
stop: () => void;
|
|
2858
|
+
};
|
|
2859
|
+
|
|
2860
|
+
interface AudioPlayOptions {
|
|
2861
|
+
/** Volume 0.0–1.0. Default 1.0. */
|
|
2862
|
+
volume?: number;
|
|
2863
|
+
/** Loop playback. Default false. */
|
|
2864
|
+
loop?: boolean;
|
|
2865
|
+
}
|
|
2866
|
+
interface AudioRecordOptions {
|
|
2867
|
+
/** Recording quality. Default "medium". */
|
|
2868
|
+
quality?: 'low' | 'medium' | 'high';
|
|
2869
|
+
/** Output format. Default "m4a". */
|
|
2870
|
+
format?: 'm4a' | 'wav';
|
|
2871
|
+
}
|
|
2872
|
+
interface AudioRecordResult {
|
|
2873
|
+
uri: string;
|
|
2874
|
+
duration: number;
|
|
2875
|
+
}
|
|
2876
|
+
/**
|
|
2877
|
+
* Audio playback and recording composable.
|
|
2878
|
+
*
|
|
2879
|
+
* @example
|
|
2880
|
+
* ```ts
|
|
2881
|
+
* const { play, pause, stop, seek, duration, position, isPlaying } = useAudio()
|
|
2882
|
+
*
|
|
2883
|
+
* // Play a remote file
|
|
2884
|
+
* await play('https://example.com/song.mp3')
|
|
2885
|
+
*
|
|
2886
|
+
* // Seek to 30 seconds
|
|
2887
|
+
* await seek(30)
|
|
2888
|
+
*
|
|
2889
|
+
* // Record audio
|
|
2890
|
+
* const { startRecording, stopRecording, isRecording } = useAudio()
|
|
2891
|
+
* await startRecording({ quality: 'high' })
|
|
2892
|
+
* const result = await stopRecording() // { uri, duration }
|
|
2893
|
+
* ```
|
|
2894
|
+
*/
|
|
2895
|
+
declare function useAudio(): {
|
|
2896
|
+
play: (uri: string, options?: AudioPlayOptions) => Promise<void>;
|
|
2897
|
+
pause: () => Promise<void>;
|
|
2898
|
+
resume: () => Promise<void>;
|
|
2899
|
+
stop: () => Promise<void>;
|
|
2900
|
+
seek: (positionSec: number) => Promise<void>;
|
|
2901
|
+
setVolume: (volume: number) => Promise<void>;
|
|
2902
|
+
startRecording: (options?: AudioRecordOptions) => Promise<string>;
|
|
2903
|
+
stopRecording: () => Promise<AudioRecordResult>;
|
|
2904
|
+
pauseRecording: () => Promise<void>;
|
|
2905
|
+
resumeRecording: () => Promise<void>;
|
|
2906
|
+
duration: _vue_reactivity.Ref<number, number>;
|
|
2907
|
+
position: _vue_reactivity.Ref<number, number>;
|
|
2908
|
+
isPlaying: _vue_reactivity.Ref<boolean, boolean>;
|
|
2909
|
+
isRecording: _vue_reactivity.Ref<boolean, boolean>;
|
|
2910
|
+
error: _vue_reactivity.Ref<string | null, string | null>;
|
|
2911
|
+
};
|
|
2912
|
+
|
|
2913
|
+
interface ExecuteResult {
|
|
2914
|
+
rowsAffected: number;
|
|
2915
|
+
insertId?: number;
|
|
2916
|
+
}
|
|
2917
|
+
type Row = Record<string, any>;
|
|
2918
|
+
interface TransactionContext {
|
|
2919
|
+
execute: (sql: string, params?: any[]) => Promise<ExecuteResult>;
|
|
2920
|
+
query: <T extends Row = Row>(sql: string, params?: any[]) => Promise<T[]>;
|
|
2921
|
+
}
|
|
2922
|
+
/**
|
|
2923
|
+
* Reactive SQLite database access. Opens a named database on first use
|
|
2924
|
+
* and auto-closes on component unmount.
|
|
2925
|
+
*
|
|
2926
|
+
* @param name - Database name (defaults to "default"). Stored as `<name>.sqlite`.
|
|
2927
|
+
*
|
|
2928
|
+
* @example
|
|
2929
|
+
* const db = useDatabase('myapp')
|
|
2930
|
+
*
|
|
2931
|
+
* // Create table
|
|
2932
|
+
* await db.execute('CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY, name TEXT)')
|
|
2933
|
+
*
|
|
2934
|
+
* // Insert
|
|
2935
|
+
* const { insertId } = await db.execute('INSERT INTO users (name) VALUES (?)', ['Alice'])
|
|
2936
|
+
*
|
|
2937
|
+
* // Query
|
|
2938
|
+
* const users = await db.query<{ id: number; name: string }>('SELECT * FROM users')
|
|
2939
|
+
*
|
|
2940
|
+
* // Transaction
|
|
2941
|
+
* await db.transaction(async ({ execute }) => {
|
|
2942
|
+
* await execute('INSERT INTO users (name) VALUES (?)', ['Bob'])
|
|
2943
|
+
* await execute('INSERT INTO users (name) VALUES (?)', ['Charlie'])
|
|
2944
|
+
* })
|
|
2945
|
+
*/
|
|
2946
|
+
declare function useDatabase(name?: string): {
|
|
2947
|
+
execute: (sql: string, params?: any[]) => Promise<ExecuteResult>;
|
|
2948
|
+
query: <T extends Row = Row>(sql: string, params?: any[]) => Promise<T[]>;
|
|
2949
|
+
transaction: (callback: (ctx: TransactionContext) => Promise<void>) => Promise<void>;
|
|
2950
|
+
close: () => Promise<void>;
|
|
2951
|
+
isOpen: _vue_reactivity.Ref<boolean, boolean>;
|
|
2952
|
+
};
|
|
2953
|
+
|
|
2954
|
+
interface PerformanceMetrics {
|
|
2955
|
+
fps: number;
|
|
2956
|
+
memoryMB: number;
|
|
2957
|
+
bridgeOps: number;
|
|
2958
|
+
timestamp: number;
|
|
2959
|
+
}
|
|
2960
|
+
/**
|
|
2961
|
+
* Performance profiler composable.
|
|
2962
|
+
*
|
|
2963
|
+
* Starts/stops native performance profiling (FPS via CADisplayLink/Choreographer,
|
|
2964
|
+
* memory via task_info/Runtime, bridge operation count). While profiling is active,
|
|
2965
|
+
* reactive refs are updated every second via `perf:metrics` global events.
|
|
2966
|
+
*
|
|
2967
|
+
* @example
|
|
2968
|
+
* const { startProfiling, stopProfiling, fps, memoryMB, isProfiling } = usePerformance()
|
|
2969
|
+
*
|
|
2970
|
+
* await startProfiling()
|
|
2971
|
+
* // fps.value, memoryMB.value update every second
|
|
2972
|
+
* await stopProfiling()
|
|
2973
|
+
*/
|
|
2974
|
+
declare function usePerformance(): {
|
|
2975
|
+
startProfiling: () => Promise<void>;
|
|
2976
|
+
stopProfiling: () => Promise<void>;
|
|
2977
|
+
getMetrics: () => Promise<PerformanceMetrics>;
|
|
2978
|
+
isProfiling: _vue_reactivity.Ref<boolean, boolean>;
|
|
2979
|
+
fps: _vue_reactivity.Ref<number, number>;
|
|
2980
|
+
memoryMB: _vue_reactivity.Ref<number, number>;
|
|
2981
|
+
bridgeOps: _vue_reactivity.Ref<number, number>;
|
|
2982
|
+
};
|
|
2983
|
+
|
|
2984
|
+
interface SharedElementFrame {
|
|
2985
|
+
x: number;
|
|
2986
|
+
y: number;
|
|
2987
|
+
width: number;
|
|
2988
|
+
height: number;
|
|
2989
|
+
}
|
|
2990
|
+
interface SharedElementRegistration {
|
|
2991
|
+
/** The shared element identifier. */
|
|
2992
|
+
id: string;
|
|
2993
|
+
/** The native view ID this registration is bound to. */
|
|
2994
|
+
viewId: number;
|
|
2995
|
+
}
|
|
2996
|
+
/**
|
|
2997
|
+
* Register a native view as a shared element for transitions.
|
|
2998
|
+
*
|
|
2999
|
+
* Call this composable with a unique identifier. When navigating with
|
|
3000
|
+
* `router.push('Detail', { sharedElements: ['hero-image'] })`, elements
|
|
3001
|
+
* registered with the same id on both source and destination screens
|
|
3002
|
+
* will animate their position and size between the two locations.
|
|
3003
|
+
*
|
|
3004
|
+
* @example
|
|
3005
|
+
* const { register, unregister } = useSharedElementTransition('hero-image')
|
|
3006
|
+
*
|
|
3007
|
+
* // In setup, after the view is mounted:
|
|
3008
|
+
* register(viewId)
|
|
3009
|
+
*
|
|
3010
|
+
* // Cleanup happens automatically on unmount
|
|
3011
|
+
*/
|
|
3012
|
+
declare function useSharedElementTransition(elementId: string): {
|
|
3013
|
+
id: string;
|
|
3014
|
+
viewId: _vue_reactivity.Ref<number | null, number | null>;
|
|
3015
|
+
register: (nativeViewId: number) => void;
|
|
3016
|
+
unregister: () => void;
|
|
3017
|
+
};
|
|
3018
|
+
/**
|
|
3019
|
+
* Measure the frame (position + size) of a native view.
|
|
3020
|
+
* Used internally by the shared element transition system.
|
|
3021
|
+
*/
|
|
3022
|
+
declare function measureViewFrame(nativeViewId: number): Promise<SharedElementFrame>;
|
|
3023
|
+
/**
|
|
3024
|
+
* Get the registered native view ID for a shared element.
|
|
3025
|
+
*/
|
|
3026
|
+
declare function getSharedElementViewId(elementId: string): number | undefined;
|
|
3027
|
+
/**
|
|
3028
|
+
* Get all currently registered shared element IDs.
|
|
3029
|
+
*/
|
|
3030
|
+
declare function getRegisteredSharedElements(): string[];
|
|
3031
|
+
/**
|
|
3032
|
+
* Clear all shared element registrations. Used during navigation transitions
|
|
3033
|
+
* to reset state.
|
|
3034
|
+
*/
|
|
3035
|
+
declare function clearSharedElementRegistry(): void;
|
|
3036
|
+
|
|
3037
|
+
type ProductType = 'consumable' | 'nonConsumable' | 'autoRenewable' | 'nonRenewable';
|
|
3038
|
+
type TransactionState = 'purchasing' | 'purchased' | 'failed' | 'restored' | 'deferred';
|
|
3039
|
+
interface Product {
|
|
3040
|
+
id: string;
|
|
3041
|
+
displayName: string;
|
|
3042
|
+
description: string;
|
|
3043
|
+
price: number;
|
|
3044
|
+
displayPrice: string;
|
|
3045
|
+
currencyCode: string;
|
|
3046
|
+
type: ProductType;
|
|
3047
|
+
}
|
|
3048
|
+
interface Purchase {
|
|
3049
|
+
productId: string;
|
|
3050
|
+
transactionId: string;
|
|
3051
|
+
originalTransactionId?: string;
|
|
3052
|
+
purchaseDate: string;
|
|
3053
|
+
expiresDate?: string;
|
|
3054
|
+
}
|
|
3055
|
+
interface TransactionUpdate {
|
|
3056
|
+
productId: string;
|
|
3057
|
+
state: TransactionState;
|
|
3058
|
+
transactionId?: string;
|
|
3059
|
+
error?: string;
|
|
3060
|
+
}
|
|
3061
|
+
/**
|
|
3062
|
+
* In-App Purchases composable backed by StoreKit 2 (iOS) and Google Play Billing (Android).
|
|
3063
|
+
*
|
|
3064
|
+
* @example
|
|
3065
|
+
* const { products, getProducts, purchase, restorePurchases, isReady, error } = useIAP()
|
|
3066
|
+
*
|
|
3067
|
+
* // Load products
|
|
3068
|
+
* await getProducts(['com.app.premium', 'com.app.coins100'])
|
|
3069
|
+
*
|
|
3070
|
+
* // Purchase
|
|
3071
|
+
* const result = await purchase('com.app.premium')
|
|
3072
|
+
*
|
|
3073
|
+
* // Restore
|
|
3074
|
+
* const restored = await restorePurchases()
|
|
3075
|
+
*/
|
|
3076
|
+
declare function useIAP(): {
|
|
3077
|
+
products: _vue_reactivity.Ref<{
|
|
3078
|
+
id: string;
|
|
3079
|
+
displayName: string;
|
|
3080
|
+
description: string;
|
|
3081
|
+
price: number;
|
|
3082
|
+
displayPrice: string;
|
|
3083
|
+
currencyCode: string;
|
|
3084
|
+
type: ProductType;
|
|
3085
|
+
}[], Product[] | {
|
|
3086
|
+
id: string;
|
|
3087
|
+
displayName: string;
|
|
3088
|
+
description: string;
|
|
3089
|
+
price: number;
|
|
3090
|
+
displayPrice: string;
|
|
3091
|
+
currencyCode: string;
|
|
3092
|
+
type: ProductType;
|
|
3093
|
+
}[]>;
|
|
3094
|
+
isReady: _vue_reactivity.Ref<boolean, boolean>;
|
|
3095
|
+
error: _vue_reactivity.Ref<string | null, string | null>;
|
|
3096
|
+
getProducts: (skus: string[]) => Promise<Product[]>;
|
|
3097
|
+
purchase: (sku: string) => Promise<Purchase | null>;
|
|
3098
|
+
restorePurchases: () => Promise<Purchase[]>;
|
|
3099
|
+
getActiveSubscriptions: () => Promise<Purchase[]>;
|
|
3100
|
+
onTransactionUpdate: (callback: (update: TransactionUpdate) => void) => () => void;
|
|
3101
|
+
};
|
|
3102
|
+
|
|
3103
|
+
interface SocialUser {
|
|
3104
|
+
userId: string;
|
|
3105
|
+
email?: string;
|
|
3106
|
+
fullName?: string;
|
|
3107
|
+
identityToken?: string;
|
|
3108
|
+
authorizationCode?: string;
|
|
3109
|
+
provider: 'apple' | 'google';
|
|
3110
|
+
}
|
|
3111
|
+
interface AuthResult {
|
|
3112
|
+
success: boolean;
|
|
3113
|
+
user?: SocialUser;
|
|
3114
|
+
error?: string;
|
|
3115
|
+
}
|
|
3116
|
+
/**
|
|
3117
|
+
* Apple Sign In composable backed by ASAuthorizationAppleIDProvider (iOS).
|
|
3118
|
+
*
|
|
3119
|
+
* @example
|
|
3120
|
+
* const { signIn, signOut, user, isAuthenticated, error } = useAppleSignIn()
|
|
3121
|
+
*
|
|
3122
|
+
* async function handleLogin() {
|
|
3123
|
+
* const result = await signIn()
|
|
3124
|
+
* if (result.success) {
|
|
3125
|
+
* console.log('Welcome', result.user.fullName)
|
|
3126
|
+
* }
|
|
3127
|
+
* }
|
|
3128
|
+
*/
|
|
3129
|
+
declare function useAppleSignIn(): {
|
|
3130
|
+
signIn: () => Promise<AuthResult>;
|
|
3131
|
+
signOut: () => Promise<void>;
|
|
3132
|
+
user: _vue_reactivity.Ref<{
|
|
3133
|
+
userId: string;
|
|
3134
|
+
email?: string | undefined;
|
|
3135
|
+
fullName?: string | undefined;
|
|
3136
|
+
identityToken?: string | undefined;
|
|
3137
|
+
authorizationCode?: string | undefined;
|
|
3138
|
+
provider: "apple" | "google";
|
|
3139
|
+
} | null, SocialUser | {
|
|
3140
|
+
userId: string;
|
|
3141
|
+
email?: string | undefined;
|
|
3142
|
+
fullName?: string | undefined;
|
|
3143
|
+
identityToken?: string | undefined;
|
|
3144
|
+
authorizationCode?: string | undefined;
|
|
3145
|
+
provider: "apple" | "google";
|
|
3146
|
+
} | null>;
|
|
3147
|
+
isAuthenticated: _vue_reactivity.Ref<boolean, boolean>;
|
|
3148
|
+
error: _vue_reactivity.Ref<string | null, string | null>;
|
|
3149
|
+
};
|
|
3150
|
+
|
|
3151
|
+
/**
|
|
3152
|
+
* Google Sign In composable backed by Google Sign In SDK (iOS) and
|
|
3153
|
+
* Credential Manager API (Android).
|
|
3154
|
+
*
|
|
3155
|
+
* @param clientId - Your Google OAuth 2.0 client ID.
|
|
3156
|
+
*
|
|
3157
|
+
* @example
|
|
3158
|
+
* const { signIn, signOut, user, isAuthenticated, error } = useGoogleSignIn('your-client-id.apps.googleusercontent.com')
|
|
3159
|
+
*
|
|
3160
|
+
* async function handleLogin() {
|
|
3161
|
+
* const result = await signIn()
|
|
3162
|
+
* if (result.success) {
|
|
3163
|
+
* console.log('Welcome', result.user.fullName)
|
|
3164
|
+
* }
|
|
3165
|
+
* }
|
|
3166
|
+
*/
|
|
3167
|
+
declare function useGoogleSignIn(clientId: string): {
|
|
3168
|
+
signIn: () => Promise<AuthResult>;
|
|
3169
|
+
signOut: () => Promise<void>;
|
|
3170
|
+
user: _vue_reactivity.Ref<{
|
|
3171
|
+
userId: string;
|
|
3172
|
+
email?: string | undefined;
|
|
3173
|
+
fullName?: string | undefined;
|
|
3174
|
+
identityToken?: string | undefined;
|
|
3175
|
+
authorizationCode?: string | undefined;
|
|
3176
|
+
provider: "apple" | "google";
|
|
3177
|
+
} | null, SocialUser | {
|
|
3178
|
+
userId: string;
|
|
3179
|
+
email?: string | undefined;
|
|
3180
|
+
fullName?: string | undefined;
|
|
3181
|
+
identityToken?: string | undefined;
|
|
3182
|
+
authorizationCode?: string | undefined;
|
|
3183
|
+
provider: "apple" | "google";
|
|
3184
|
+
} | null>;
|
|
3185
|
+
isAuthenticated: _vue_reactivity.Ref<boolean, boolean>;
|
|
3186
|
+
error: _vue_reactivity.Ref<string | null, string | null>;
|
|
3187
|
+
};
|
|
3188
|
+
|
|
3189
|
+
type BackgroundTaskType = 'refresh' | 'processing';
|
|
3190
|
+
interface BackgroundTaskOptions {
|
|
3191
|
+
/** Task type: 'refresh' for short tasks, 'processing' for long-running tasks. */
|
|
3192
|
+
type?: BackgroundTaskType;
|
|
3193
|
+
/** Earliest time the task can begin (Unix timestamp in ms). */
|
|
3194
|
+
earliestBeginDate?: number;
|
|
3195
|
+
/** Whether the task requires network connectivity. */
|
|
3196
|
+
requiresNetworkConnectivity?: boolean;
|
|
3197
|
+
/** Whether the task requires the device to be charging. */
|
|
3198
|
+
requiresExternalPower?: boolean;
|
|
3199
|
+
/** Interval in minutes for periodic tasks (Android only, type must be 'processing'). */
|
|
3200
|
+
interval?: number;
|
|
3201
|
+
}
|
|
3202
|
+
/**
|
|
3203
|
+
* Composable for scheduling and managing background tasks.
|
|
3204
|
+
*
|
|
3205
|
+
* Uses BGTaskScheduler on iOS and WorkManager on Android.
|
|
3206
|
+
*
|
|
3207
|
+
* @example
|
|
3208
|
+
* ```ts
|
|
3209
|
+
* const { scheduleTask, cancelTask, onTaskExecute } = useBackgroundTask()
|
|
3210
|
+
*
|
|
3211
|
+
* onTaskExecute((taskId) => {
|
|
3212
|
+
* // Perform work, then signal completion
|
|
3213
|
+
* doWork().then(() => completeTask(taskId))
|
|
3214
|
+
* })
|
|
3215
|
+
*
|
|
3216
|
+
* await scheduleTask('com.myapp.sync', {
|
|
3217
|
+
* type: 'refresh',
|
|
3218
|
+
* requiresNetworkConnectivity: true,
|
|
3219
|
+
* })
|
|
3220
|
+
* ```
|
|
3221
|
+
*/
|
|
3222
|
+
declare function useBackgroundTask(): {
|
|
3223
|
+
registerTask: (taskId: string) => Promise<void>;
|
|
3224
|
+
scheduleTask: (taskId: string, options?: BackgroundTaskOptions) => Promise<void>;
|
|
3225
|
+
cancelTask: (taskId: string) => Promise<void>;
|
|
3226
|
+
cancelAllTasks: () => Promise<void>;
|
|
3227
|
+
completeTask: (taskId: string, success?: boolean) => Promise<void>;
|
|
3228
|
+
onTaskExecute: (handler: (taskId: string) => void, taskId?: string) => () => void;
|
|
3229
|
+
};
|
|
3230
|
+
|
|
3231
|
+
interface UpdateInfo {
|
|
3232
|
+
/** Whether an update is available. */
|
|
3233
|
+
updateAvailable: boolean;
|
|
3234
|
+
/** Version string of the available update. */
|
|
3235
|
+
version: string;
|
|
3236
|
+
/** URL to download the update bundle. */
|
|
3237
|
+
downloadUrl: string;
|
|
3238
|
+
/** SHA-256 hash of the bundle for integrity verification. */
|
|
3239
|
+
hash: string;
|
|
3240
|
+
/** Size of the update in bytes. */
|
|
3241
|
+
size: number;
|
|
3242
|
+
/** Release notes for the update. */
|
|
3243
|
+
releaseNotes: string;
|
|
3244
|
+
}
|
|
3245
|
+
interface VersionInfo {
|
|
3246
|
+
/** Current bundle version identifier. */
|
|
3247
|
+
version: string;
|
|
3248
|
+
/** Whether the app is currently running an OTA bundle. */
|
|
3249
|
+
isUsingOTA: boolean;
|
|
3250
|
+
/** Path to the active OTA bundle, or empty string if using embedded. */
|
|
3251
|
+
bundlePath: string;
|
|
3252
|
+
}
|
|
3253
|
+
type UpdateStatus = 'idle' | 'checking' | 'downloading' | 'ready' | 'error';
|
|
3254
|
+
/**
|
|
3255
|
+
* Composable for managing Over-The-Air (OTA) JS bundle updates.
|
|
3256
|
+
*
|
|
3257
|
+
* Downloads new JS bundles from a server, verifies integrity via SHA-256,
|
|
3258
|
+
* and applies them on the next app launch.
|
|
3259
|
+
*
|
|
3260
|
+
* @param serverUrl - URL of the update server endpoint
|
|
3261
|
+
*
|
|
3262
|
+
* @example
|
|
3263
|
+
* ```ts
|
|
3264
|
+
* const {
|
|
3265
|
+
* checkForUpdate, downloadUpdate, applyUpdate, rollback,
|
|
3266
|
+
* currentVersion, availableVersion, downloadProgress,
|
|
3267
|
+
* isChecking, isDownloading, error,
|
|
3268
|
+
* } = useOTAUpdate('https://updates.myapp.com/check')
|
|
3269
|
+
*
|
|
3270
|
+
* await checkForUpdate()
|
|
3271
|
+
* if (availableVersion.value) {
|
|
3272
|
+
* await downloadUpdate()
|
|
3273
|
+
* await applyUpdate()
|
|
3274
|
+
* // Restart app to load new bundle
|
|
3275
|
+
* }
|
|
3276
|
+
* ```
|
|
3277
|
+
*/
|
|
3278
|
+
declare function useOTAUpdate(serverUrl: string): {
|
|
3279
|
+
checkForUpdate: () => Promise<UpdateInfo>;
|
|
3280
|
+
downloadUpdate: (url?: string, hash?: string) => Promise<void>;
|
|
3281
|
+
applyUpdate: () => Promise<void>;
|
|
3282
|
+
rollback: () => Promise<void>;
|
|
3283
|
+
getCurrentVersion: () => Promise<VersionInfo>;
|
|
3284
|
+
currentVersion: _vue_reactivity.Ref<string, string>;
|
|
3285
|
+
availableVersion: _vue_reactivity.Ref<string | null, string | null>;
|
|
3286
|
+
downloadProgress: _vue_reactivity.Ref<number, number>;
|
|
3287
|
+
isChecking: _vue_reactivity.Ref<boolean, boolean>;
|
|
3288
|
+
isDownloading: _vue_reactivity.Ref<boolean, boolean>;
|
|
3289
|
+
status: _vue_reactivity.Ref<UpdateStatus, UpdateStatus>;
|
|
3290
|
+
error: _vue_reactivity.Ref<string | null, string | null>;
|
|
3291
|
+
};
|
|
3292
|
+
|
|
3293
|
+
interface BLEDevice {
|
|
3294
|
+
id: string;
|
|
3295
|
+
name: string;
|
|
3296
|
+
rssi: number;
|
|
3297
|
+
}
|
|
3298
|
+
interface BLECharacteristic {
|
|
3299
|
+
value: string;
|
|
3300
|
+
characteristicUUID: string;
|
|
3301
|
+
serviceUUID: string;
|
|
3302
|
+
}
|
|
3303
|
+
interface BLECharacteristicChange {
|
|
3304
|
+
deviceId: string;
|
|
3305
|
+
serviceUUID: string;
|
|
3306
|
+
characteristicUUID: string;
|
|
3307
|
+
value: string;
|
|
3308
|
+
}
|
|
3309
|
+
type BLEState = 'poweredOn' | 'poweredOff' | 'unauthorized' | 'unsupported' | 'resetting' | 'unknown';
|
|
3310
|
+
/**
|
|
3311
|
+
* Bluetooth Low Energy (BLE) composable for scanning, connecting,
|
|
3312
|
+
* and communicating with BLE peripherals.
|
|
3313
|
+
*
|
|
3314
|
+
* @example
|
|
3315
|
+
* const { scan, connect, devices, connectedDevice, isScanning } = useBluetooth()
|
|
3316
|
+
*
|
|
3317
|
+
* // Scan for devices
|
|
3318
|
+
* await scan()
|
|
3319
|
+
*
|
|
3320
|
+
* // Connect to a device
|
|
3321
|
+
* await connect(devices.value[0].id)
|
|
3322
|
+
*
|
|
3323
|
+
* // Read a characteristic
|
|
3324
|
+
* const data = await read(deviceId, serviceUUID, charUUID)
|
|
3325
|
+
*/
|
|
3326
|
+
declare function useBluetooth(): {
|
|
3327
|
+
scan: (serviceUUIDs?: string[]) => Promise<void>;
|
|
3328
|
+
stopScan: () => Promise<void>;
|
|
3329
|
+
connect: (deviceId: string) => Promise<BLEDevice>;
|
|
3330
|
+
disconnect: (deviceId: string) => Promise<void>;
|
|
3331
|
+
read: (deviceId: string, serviceUUID: string, charUUID: string) => Promise<BLECharacteristic>;
|
|
3332
|
+
write: (deviceId: string, serviceUUID: string, charUUID: string, data: string) => Promise<void>;
|
|
3333
|
+
subscribe: (deviceId: string, serviceUUID: string, charUUID: string, callback: (change: BLECharacteristicChange) => void) => Promise<() => void>;
|
|
3334
|
+
devices: _vue_reactivity.Ref<{
|
|
3335
|
+
id: string;
|
|
3336
|
+
name: string;
|
|
3337
|
+
rssi: number;
|
|
3338
|
+
}[], BLEDevice[] | {
|
|
3339
|
+
id: string;
|
|
3340
|
+
name: string;
|
|
3341
|
+
rssi: number;
|
|
3342
|
+
}[]>;
|
|
3343
|
+
connectedDevice: _vue_reactivity.Ref<{
|
|
3344
|
+
id: string;
|
|
3345
|
+
name: string;
|
|
3346
|
+
rssi: number;
|
|
3347
|
+
} | null, BLEDevice | {
|
|
3348
|
+
id: string;
|
|
3349
|
+
name: string;
|
|
3350
|
+
rssi: number;
|
|
3351
|
+
} | null>;
|
|
3352
|
+
isScanning: _vue_reactivity.Ref<boolean, boolean>;
|
|
3353
|
+
isAvailable: _vue_reactivity.Ref<boolean, boolean>;
|
|
3354
|
+
error: _vue_reactivity.Ref<string | null, string | null>;
|
|
3355
|
+
};
|
|
3356
|
+
|
|
3357
|
+
interface CalendarEvent {
|
|
3358
|
+
id: string;
|
|
3359
|
+
title: string;
|
|
3360
|
+
startDate: number;
|
|
3361
|
+
endDate: number;
|
|
3362
|
+
isAllDay: boolean;
|
|
3363
|
+
calendarId: string;
|
|
3364
|
+
notes?: string;
|
|
3365
|
+
location?: string;
|
|
3366
|
+
}
|
|
3367
|
+
interface Calendar {
|
|
3368
|
+
id: string;
|
|
3369
|
+
title: string;
|
|
3370
|
+
color: string;
|
|
3371
|
+
type: string;
|
|
3372
|
+
isImmutable?: boolean;
|
|
3373
|
+
}
|
|
3374
|
+
interface CreateEventOptions {
|
|
3375
|
+
title: string;
|
|
3376
|
+
startDate: number;
|
|
3377
|
+
endDate: number;
|
|
3378
|
+
notes?: string;
|
|
3379
|
+
calendarId?: string;
|
|
3380
|
+
}
|
|
3381
|
+
/**
|
|
3382
|
+
* Calendar access composable for reading and writing calendar events.
|
|
3383
|
+
*
|
|
3384
|
+
* @example
|
|
3385
|
+
* const { requestAccess, getEvents, createEvent } = useCalendar()
|
|
3386
|
+
*
|
|
3387
|
+
* await requestAccess()
|
|
3388
|
+
* const events = await getEvents(Date.now(), Date.now() + 86400000)
|
|
3389
|
+
*/
|
|
3390
|
+
declare function useCalendar(): {
|
|
3391
|
+
requestAccess: () => Promise<boolean>;
|
|
3392
|
+
getEvents: (startDate: number, endDate: number) => Promise<CalendarEvent[]>;
|
|
3393
|
+
createEvent: (options: CreateEventOptions) => Promise<{
|
|
3394
|
+
eventId: string;
|
|
3395
|
+
}>;
|
|
3396
|
+
deleteEvent: (eventId: string) => Promise<void>;
|
|
3397
|
+
getCalendars: () => Promise<Calendar[]>;
|
|
3398
|
+
hasAccess: _vue_reactivity.Ref<boolean, boolean>;
|
|
3399
|
+
error: _vue_reactivity.Ref<string | null, string | null>;
|
|
3400
|
+
};
|
|
3401
|
+
|
|
3402
|
+
interface ContactField {
|
|
3403
|
+
label: string;
|
|
3404
|
+
value: string;
|
|
3405
|
+
}
|
|
3406
|
+
interface Contact {
|
|
3407
|
+
id: string;
|
|
3408
|
+
givenName: string;
|
|
3409
|
+
familyName: string;
|
|
3410
|
+
middleName: string;
|
|
3411
|
+
organizationName: string;
|
|
3412
|
+
jobTitle: string;
|
|
3413
|
+
hasImage: boolean;
|
|
3414
|
+
emailAddresses?: ContactField[];
|
|
3415
|
+
phoneNumbers?: ContactField[];
|
|
3416
|
+
}
|
|
3417
|
+
interface CreateContactData {
|
|
3418
|
+
givenName?: string;
|
|
3419
|
+
familyName?: string;
|
|
3420
|
+
middleName?: string;
|
|
3421
|
+
organizationName?: string;
|
|
3422
|
+
jobTitle?: string;
|
|
3423
|
+
note?: string;
|
|
3424
|
+
emailAddresses?: ContactField[];
|
|
3425
|
+
phoneNumbers?: ContactField[];
|
|
3426
|
+
}
|
|
3427
|
+
/**
|
|
3428
|
+
* Contacts access composable for reading and writing device contacts.
|
|
3429
|
+
*
|
|
3430
|
+
* @example
|
|
3431
|
+
* const { requestAccess, getContacts, createContact } = useContacts()
|
|
3432
|
+
*
|
|
3433
|
+
* await requestAccess()
|
|
3434
|
+
* const contacts = await getContacts('John')
|
|
3435
|
+
*/
|
|
3436
|
+
declare function useContacts(): {
|
|
3437
|
+
requestAccess: () => Promise<boolean>;
|
|
3438
|
+
getContacts: (query?: string) => Promise<Contact[]>;
|
|
3439
|
+
getContact: (id: string) => Promise<Contact>;
|
|
3440
|
+
createContact: (data: CreateContactData) => Promise<{
|
|
3441
|
+
id: string;
|
|
3442
|
+
}>;
|
|
3443
|
+
deleteContact: (id: string) => Promise<void>;
|
|
3444
|
+
hasAccess: _vue_reactivity.Ref<boolean, boolean>;
|
|
3445
|
+
error: _vue_reactivity.Ref<string | null, string | null>;
|
|
3446
|
+
};
|
|
3447
|
+
|
|
1637
3448
|
/**
|
|
1638
3449
|
* NativeBridge -- the communication layer between JavaScript and Swift/UIKit.
|
|
1639
3450
|
*
|
|
@@ -1841,4 +3652,4 @@ interface NativeApp extends App {
|
|
|
1841
3652
|
*/
|
|
1842
3653
|
declare function createApp(rootComponent: Component, rootProps?: Record<string, any>): NativeApp;
|
|
1843
3654
|
|
|
1844
|
-
export { type ActionSheetAction, type AlertButton, type AppStateStatus, type BiometryResult, type BiometryType, type CameraOptions, type CameraResult, type ColorScheme, type ConnectionType, type GeoCoordinates, type HttpRequestConfig, type HttpResponse, type LocalNotification, type NativeApp, NativeBridge, type NativeNode, type NetworkState, type NotificationPayload, type Permission, type PermissionStatus, type ShareContent, type ShareResult, type SpringOptions, type StatusBarStyle, type StyleProp, type StyleSheet, type TimingOptions, VActionSheet, VActivityIndicator, VAlertDialog, VButton, VImage, VInput, VKeyboardAvoiding, VList, VModal, VPicker, VProgressBar, VSafeArea, VScrollView, VSegmentedControl, VSlider, VStatusBar, VSwitch, VText, VView, VWebView, type WebViewSource, createApp, createCommentNode, createNativeNode, createStyleSheet, createTextNode, render, resetNodeId, useAnimation, useAppState, useAsyncStorage, useBackHandler, useBiometry, useCamera, useClipboard, useColorScheme, useDeviceInfo, useGeolocation, useHaptics, useHttp, useKeyboard, useLinking, useNetwork, useNotifications, usePermissions, useShare, vShow, validStyleProperties };
|
|
3655
|
+
export { type AccessibilityProps, type ActionSheetAction, type AlertButton, type AlignContent, type AlignItems, type AlignSelf, type AnyStyle, type AppStateStatus, type AudioPlayOptions, type AudioRecordOptions, type AudioRecordResult, type AuthResult, type BLECharacteristic, type BLECharacteristicChange, type BLEDevice, type BLEState, type BackgroundTaskOptions, type BackgroundTaskType, type BiometryResult, type BiometryType, type BorderStyle, type Calendar, type CalendarEvent, type CameraOptions, type CameraResult, type ColorScheme, type ConnectionType, type Contact, type ContactField, type CreateContactData, type CreateEventOptions, type Dimensions, type Direction, type Display, type DropdownOption, ErrorBoundary, type ExecuteResult, type FileStat, type FlexDirection, type FlexWrap, type FontStyle, type FontWeight, type GeoCoordinates, type HttpRequestConfig, type HttpResponse, type ImageStyle, type ImportantForAccessibility, type JustifyContent, type LocalNotification, type NativeApp, NativeBridge, type NativeNode, type NetworkState, type NotificationPayload, type Overflow, type PerformanceMetrics, type Permission, type PermissionStatus, type Platform, type Position, type Product, type ProductType, type Purchase, type PushNotificationPayload, type QRCodeResult, type RadioOption, type ResizeMode, type Row, type SensorData, type SensorOptions, type ShadowOffset, type ShareContent, type ShareResult, type SharedElementFrame, type SharedElementRegistration, type SocialUser, type SpringOptions, type StatusBarStyle, type StyleProp, type StyleSheet, type TextAlign, type TextDecorationLine, type TextDecorationStyle, type TextStyle, type TextTransform, type TimingOptions, type TransactionContext, type TransactionState, type TransactionUpdate, type TransformValue, type UpdateInfo, type UpdateStatus, VActionSheet, type VActionSheetProps, VActivityIndicator, type VActivityIndicatorProps, VAlertDialog, type VAlertDialogProps, VButton, type VButtonProps, VCheckbox, type VCheckboxProps, VDropdown, type VDropdownProps, VImage, type VImageProps, VInput, type VInputProps, VKeyboardAvoiding, type VKeyboardAvoidingProps, VList, type VListProps, VModal, type VModalProps, VPicker, type VPickerProps, VPressable, type VPressableProps, VProgressBar, type VProgressBarProps, VRadio, type VRadioProps, VRefreshControl, type VRefreshControlProps, VSafeArea, type VSafeAreaProps, VScrollView, type VScrollViewProps, VSectionList, type VSectionListProps, VSegmentedControl, type VSegmentedControlProps, VSlider, type VSliderProps, VStatusBar, type VStatusBarProps, VSwitch, type VSwitchProps, VText, type VTextProps, VVideo, type VVideoProps, VView, type VViewProps, VWebView, type VWebViewProps, type VersionInfo, type VideoCaptureOptions, type VideoCaptureResult, type ViewStyle, type WebSocketOptions, type WebSocketStatus, type WebViewSource, clearSharedElementRegistry, createApp, createCommentNode, createNativeNode, createStyleSheet, createTextNode, getRegisteredSharedElements, getSharedElementViewId, measureViewFrame, render, resetNodeId, useAccelerometer, useAnimation, useAppState, useAppleSignIn, useAsyncStorage, useAudio, useBackHandler, useBackgroundTask, useBiometry, useBluetooth, useCalendar, useCamera, useClipboard, useColorScheme, useContacts, useDatabase, useDeviceInfo, useDimensions, useFileSystem, useGeolocation, useGoogleSignIn, useGyroscope, useHaptics, useHttp, useI18n, useIAP, useKeyboard, useLinking, useNetwork, useNotifications, useOTAUpdate, usePerformance, usePermissions, usePlatform, useSecureStorage, useShare, useSharedElementTransition, useWebSocket, vShow, validStyleProperties };
|