@ng-native/expo 0.1.3 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/README.md +32 -382
  2. package/dist/async-storage.d.ts +15 -0
  3. package/dist/async-storage.js +29 -0
  4. package/dist/async-storage.js.map +1 -0
  5. package/dist/audio.d.ts +10 -0
  6. package/dist/audio.js +26 -0
  7. package/dist/audio.js.map +1 -0
  8. package/dist/expo-ui-components.d.ts +142 -10
  9. package/dist/expo-ui-components.js +362 -39
  10. package/dist/expo-ui-components.js.map +1 -1
  11. package/dist/expo-ui.js +9 -6
  12. package/dist/expo-ui.js.map +1 -1
  13. package/dist/foldable.d.ts +78 -0
  14. package/dist/foldable.js +87 -0
  15. package/dist/foldable.js.map +1 -0
  16. package/dist/fonts.d.ts +3 -0
  17. package/dist/fonts.js +7 -2
  18. package/dist/fonts.js.map +1 -1
  19. package/dist/image-picker.js +3 -9
  20. package/dist/image-picker.js.map +1 -1
  21. package/dist/index.d.ts +1 -1
  22. package/dist/index.js +1 -1
  23. package/dist/index.js.map +1 -1
  24. package/dist/live-activity.d.ts +88 -0
  25. package/dist/live-activity.js +150 -0
  26. package/dist/live-activity.js.map +1 -0
  27. package/dist/location.js +2 -7
  28. package/dist/location.js.map +1 -1
  29. package/dist/media-library.js +1 -3
  30. package/dist/media-library.js.map +1 -1
  31. package/dist/native.d.ts +4 -1
  32. package/dist/native.js +60 -4
  33. package/dist/native.js.map +1 -1
  34. package/dist/notifications.js +2 -4
  35. package/dist/notifications.js.map +1 -1
  36. package/dist/permissions.d.ts +2 -0
  37. package/dist/permissions.js +6 -0
  38. package/dist/permissions.js.map +1 -1
  39. package/dist/player.d.ts +24 -11
  40. package/dist/player.js +7 -26
  41. package/dist/player.js.map +1 -1
  42. package/dist/register-expo-view.d.ts +5 -0
  43. package/dist/register-expo-view.js +5 -1
  44. package/dist/register-expo-view.js.map +1 -1
  45. package/dist/screen-capture.js +2 -4
  46. package/dist/screen-capture.js.map +1 -1
  47. package/dist/secure-store.d.ts +15 -0
  48. package/dist/secure-store.js +30 -0
  49. package/dist/secure-store.js.map +1 -0
  50. package/dist/store.d.ts +5 -10
  51. package/dist/store.js +5 -36
  52. package/dist/store.js.map +1 -1
  53. package/dist/tracking.d.ts +1 -1
  54. package/dist/tracking.js +3 -5
  55. package/dist/tracking.js.map +1 -1
  56. package/dist/video.d.ts +5 -0
  57. package/dist/video.js +21 -0
  58. package/dist/video.js.map +1 -0
  59. package/dist/watch.d.ts +103 -0
  60. package/dist/watch.js +228 -0
  61. package/dist/watch.js.map +1 -0
  62. package/package.json +49 -4
@@ -35,8 +35,12 @@ export declare class UiMenu {
35
35
  static ɵfac: i0.ɵɵFactoryDeclaration<UiMenu, never>;
36
36
  static ɵcmp: i0.ɵɵComponentDeclaration<UiMenu, "ui-menu", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "systemImage": { "alias": "systemImage"; "required": false; "isSignal": true; }; "accessibilityLabel": { "alias": "accessibilityLabel"; "required": false; "isSignal": true; }; "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
37
37
  }
38
- /** A SwiftUI `Button`, as a menu item or on its own. */
38
+ /**
39
+ * A SwiftUI `Button`, as a menu item or on its own, or Compose's on Android, which draws `label` as
40
+ * text inside it. `systemImage` and `role` are SwiftUI's alone.
41
+ */
39
42
  export declare class UiButton {
43
+ protected readonly android: boolean;
40
44
  readonly label: import("@angular/core").InputSignal<string | undefined>;
41
45
  /** An SF Symbol name. */
42
46
  readonly systemImage: import("@angular/core").InputSignal<string | undefined>;
@@ -46,7 +50,7 @@ export declare class UiButton {
46
50
  static ɵfac: i0.ɵɵFactoryDeclaration<UiButton, never>;
47
51
  static ɵcmp: i0.ɵɵComponentDeclaration<UiButton, "ui-button", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "systemImage": { "alias": "systemImage"; "required": false; "isSignal": true; }; "role": { "alias": "role"; "required": false; "isSignal": true; }; "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, { "buttonPress": "buttonPress"; }, never, ["*"], true, never>;
48
52
  }
49
- /** A SwiftUI `Divider`: a separator between groups of menu items. */
53
+ /** A SwiftUI `Divider`, or Compose's `HorizontalDivider`: a separator between groups of items. */
50
54
  export declare class UiDivider {
51
55
  readonly modifiers: import("@angular/core").InputSignal<readonly UiModifier[] | undefined>;
52
56
  static ɵfac: i0.ɵɵFactoryDeclaration<UiDivider, never>;
@@ -58,6 +62,7 @@ export declare class UiDivider {
58
62
  * `allowsFullSwipe`.
59
63
  */
60
64
  export declare class UiSlot {
65
+ protected readonly android: boolean;
61
66
  readonly name: import("@angular/core").InputSignal<string>;
62
67
  readonly extraProps: import("@angular/core").InputSignal<Readonly<Record<string, unknown>> | undefined>;
63
68
  static ɵfac: i0.ɵɵFactoryDeclaration<UiSlot, never>;
@@ -87,8 +92,8 @@ export type UiSliderChangeEvent = NativeSyntheticEvent<{
87
92
  readonly value: number;
88
93
  }>;
89
94
  /**
90
- * A SwiftUI `Slider`, iOS only. `valueChanged` reports each new value as the thumb moves; note the
91
- * d, which the native event has and `@expo/ui`'s React prop does not.
95
+ * A SwiftUI `Slider`, or Compose's on Android. `valueChanged` reports each new value as the thumb
96
+ * moves; note the d, which SwiftUI's event has and `@expo/ui`'s React prop does not.
92
97
  */
93
98
  export declare class UiSlider {
94
99
  readonly value: import("@angular/core").InputSignalWithTransform<number | undefined, unknown>;
@@ -98,14 +103,28 @@ export declare class UiSlider {
98
103
  readonly steps: import("@angular/core").InputSignalWithTransform<number | undefined, unknown>;
99
104
  readonly modifiers: import("@angular/core").InputSignal<readonly UiModifier[] | undefined>;
100
105
  readonly valueChanged: import("@angular/core").OutputEmitterRef<UiSliderChangeEvent>;
106
+ protected readonly android: boolean;
107
+ /** A whole number of steps, which is all Compose can draw. */
108
+ private readonly wholeSteps;
109
+ /** SwiftUI takes a step size, and draws 0 to 1 unless it has both ends. */
110
+ protected readonly stepSize: import("@angular/core").Signal<number | undefined>;
111
+ /** Compose takes the number of points between the ends. */
112
+ protected readonly stepsBetween: import("@angular/core").Signal<number | undefined>;
101
113
  static ɵfac: i0.ɵɵFactoryDeclaration<UiSlider, never>;
102
114
  static ɵcmp: i0.ɵɵComponentDeclaration<UiSlider, "ui-slider", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "steps": { "alias": "steps"; "required": false; "isSignal": true; }; "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, { "valueChanged": "valueChanged"; }, never, never, true, never>;
103
115
  }
104
- /** A SwiftUI `VStack`. */
116
+ /**
117
+ * A SwiftUI `VStack`, or Compose's `Column` on Android, centred, as SwiftUI's is, unless `alignment`
118
+ * says otherwise. Without `spacing`, SwiftUI puts its own default spacing between children and Compose
119
+ * puts none.
120
+ */
105
121
  export declare class UiVStack {
106
122
  readonly alignment: import("@angular/core").InputSignal<"leading" | "center" | "trailing" | undefined>;
107
123
  readonly spacing: import("@angular/core").InputSignalWithTransform<number | undefined, unknown>;
108
124
  readonly modifiers: import("@angular/core").InputSignal<readonly UiModifier[] | undefined>;
125
+ protected readonly android: boolean;
126
+ protected readonly spacedBy: typeof spacedBy;
127
+ protected composeAlignment(alignment: 'leading' | 'center' | 'trailing' | undefined): "center" | "start" | "end";
109
128
  static ɵfac: i0.ɵɵFactoryDeclaration<UiVStack, never>;
110
129
  static ɵcmp: i0.ɵɵComponentDeclaration<UiVStack, "ui-vstack", never, { "alignment": { "alias": "alignment"; "required": false; "isSignal": true; }; "spacing": { "alias": "spacing"; "required": false; "isSignal": true; }; "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
111
130
  }
@@ -119,12 +138,15 @@ export declare class UiImage {
119
138
  static ɵfac: i0.ɵɵFactoryDeclaration<UiImage, never>;
120
139
  static ɵcmp: i0.ɵɵComponentDeclaration<UiImage, "ui-image", never, { "systemName": { "alias": "systemName"; "required": false; "isSignal": true; }; "uiImage": { "alias": "uiImage"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
121
140
  }
122
- /** A SwiftUI `Text`. */
141
+ /**
142
+ * A SwiftUI `Text`, or Compose's on Android. Its text is what is written inside it,
143
+ * `<ui-text>Us {{ score }}</ui-text>`, as `<text>` takes its own, or `text`, which wins over it.
144
+ */
123
145
  export declare class UiText {
124
146
  readonly text: import("@angular/core").InputSignal<string | undefined>;
125
147
  readonly modifiers: import("@angular/core").InputSignal<readonly UiModifier[] | undefined>;
126
148
  static ɵfac: i0.ɵɵFactoryDeclaration<UiText, never>;
127
- static ɵcmp: i0.ɵɵComponentDeclaration<UiText, "ui-text", never, { "text": { "alias": "text"; "required": false; "isSignal": true; }; "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
149
+ static ɵcmp: i0.ɵɵComponentDeclaration<UiText, "ui-text", never, { "text": { "alias": "text"; "required": false; "isSignal": true; }; "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
128
150
  }
129
151
  /**
130
152
  * What `ui-date-picker` sends when the user picks: the chosen moment, which SwiftUI reports in
@@ -216,12 +238,21 @@ export declare class UiPicker {
216
238
  export type UiToggleChangeEvent = NativeSyntheticEvent<{
217
239
  readonly isOn: boolean;
218
240
  }>;
219
- /** A SwiftUI `Toggle`. `isOnChange` reports each flip. */
241
+ /**
242
+ * A SwiftUI `Toggle`, or Compose's `Switch` on Android. `isOnChange` reports each flip. Bound to
243
+ * `isOn`, it shows what `isOn` says; without it, it switches itself. `label` is SwiftUI's alone.
244
+ */
220
245
  export declare class UiToggle {
221
246
  readonly isOn: import("@angular/core").InputSignalWithTransform<boolean | undefined, unknown>;
222
247
  readonly label: import("@angular/core").InputSignal<string | undefined>;
223
248
  readonly modifiers: import("@angular/core").InputSignal<readonly UiModifier[] | undefined>;
224
249
  readonly isOnChange: import("@angular/core").OutputEmitterRef<UiToggleChangeEvent>;
250
+ protected readonly android: boolean;
251
+ /** What Compose's switch shows without `isOn`: SwiftUI's keeps this itself, Compose's does not. */
252
+ protected readonly switchedOn: import("@angular/core").WritableSignal<boolean>;
253
+ protected checked(event: NativeSyntheticEvent<{
254
+ readonly value: boolean;
255
+ }>): void;
225
256
  static ɵfac: i0.ɵɵFactoryDeclaration<UiToggle, never>;
226
257
  static ɵcmp: i0.ɵɵComponentDeclaration<UiToggle, "ui-toggle", never, { "isOn": { "alias": "isOn"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, { "isOnChange": "isOnChange"; }, never, ["*"], true, never>;
227
258
  }
@@ -284,27 +315,127 @@ export declare class UiGauge {
284
315
  static ɵfac: i0.ɵɵFactoryDeclaration<UiGauge, never>;
285
316
  static ɵcmp: i0.ɵɵComponentDeclaration<UiGauge, "ui-gauge", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "currentValueLabel": { "alias": "currentValueLabel"; "required": false; "isSignal": true; }; "minimumValueLabel": { "alias": "minimumValueLabel"; "required": false; "isSignal": true; }; "maximumValueLabel": { "alias": "maximumValueLabel"; "required": false; "isSignal": true; }; "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
286
317
  }
287
- /** A SwiftUI `ProgressView`: a bar filled to `value`, from 0 to 1, or a spinner without one. */
318
+ /**
319
+ * A SwiftUI `ProgressView`: a bar filled to `value`, from 0 to 1, or a spinner without one. On
320
+ * Android, Compose's `LinearProgressIndicator`, a moving bar rather than a spinner without a value.
321
+ */
288
322
  export declare class UiProgress {
323
+ protected readonly android: boolean;
289
324
  readonly value: import("@angular/core").InputSignalWithTransform<number | undefined, unknown>;
290
325
  readonly modifiers: import("@angular/core").InputSignal<readonly UiModifier[] | undefined>;
291
326
  static ɵfac: i0.ɵɵFactoryDeclaration<UiProgress, never>;
292
327
  static ɵcmp: i0.ɵɵComponentDeclaration<UiProgress, "ui-progress", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
293
328
  }
294
- /** A SwiftUI `HStack`. */
329
+ /**
330
+ * A SwiftUI `HStack`, or Compose's `Row` on Android, centred, as SwiftUI's is, unless `alignment`
331
+ * says otherwise. Compose has no `firstTextBaseline`, and centres instead. Without `spacing`, SwiftUI
332
+ * puts its own default spacing between children and Compose puts none.
333
+ */
295
334
  export declare class UiHStack {
296
335
  readonly alignment: import("@angular/core").InputSignal<"center" | "top" | "bottom" | "firstTextBaseline" | undefined>;
297
336
  readonly spacing: import("@angular/core").InputSignalWithTransform<number | undefined, unknown>;
298
337
  readonly modifiers: import("@angular/core").InputSignal<readonly UiModifier[] | undefined>;
338
+ protected readonly android: boolean;
339
+ protected readonly spacedBy: typeof spacedBy;
340
+ protected composeAlignment(alignment: 'top' | 'center' | 'bottom' | 'firstTextBaseline' | undefined): "center" | "top" | "bottom";
299
341
  static ɵfac: i0.ɵɵFactoryDeclaration<UiHStack, never>;
300
342
  static ɵcmp: i0.ɵɵComponentDeclaration<UiHStack, "ui-hstack", never, { "alignment": { "alias": "alignment"; "required": false; "isSignal": true; }; "spacing": { "alias": "spacing"; "required": false; "isSignal": true; }; "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
301
343
  }
344
+ declare function spacedBy(spacing: number | undefined): {
345
+ spacedBy: number;
346
+ } | undefined;
302
347
  /** A SwiftUI `Spacer`: the room left over in its stack. */
303
348
  export declare class UiSpacer {
304
349
  readonly modifiers: import("@angular/core").InputSignal<readonly UiModifier[] | undefined>;
305
350
  static ɵfac: i0.ɵɵFactoryDeclaration<UiSpacer, never>;
306
351
  static ɵcmp: i0.ɵɵComponentDeclaration<UiSpacer, "ui-spacer", never, { "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
307
352
  }
353
+ /** Where `ui-zstack` puts its layers, as SwiftUI names it. */
354
+ export type UiZStackAlignment = 'center' | 'leading' | 'trailing' | 'top' | 'bottom' | 'topLeading' | 'topTrailing' | 'bottomLeading' | 'bottomTrailing';
355
+ /**
356
+ * A SwiftUI `ZStack`: its children drawn over one another, the first at the back. On Android,
357
+ * Compose's `Box`, centred, as SwiftUI's is, unless `alignment` says otherwise.
358
+ */
359
+ export declare class UiZStack {
360
+ readonly alignment: import("@angular/core").InputSignal<UiZStackAlignment | undefined>;
361
+ readonly modifiers: import("@angular/core").InputSignal<readonly UiModifier[] | undefined>;
362
+ protected readonly android: boolean;
363
+ protected readonly contentAlignment: Record<UiZStackAlignment, string>;
364
+ static ɵfac: i0.ɵɵFactoryDeclaration<UiZStack, never>;
365
+ static ɵcmp: i0.ɵɵComponentDeclaration<UiZStack, "ui-zstack", never, { "alignment": { "alias": "alignment"; "required": false; "isSignal": true; }; "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
366
+ }
367
+ /** A SwiftUI `Rectangle`, filling the space it is given. Colour it with `foregroundStyle`. */
368
+ export declare class UiRectangle {
369
+ readonly modifiers: import("@angular/core").InputSignal<readonly UiModifier[] | undefined>;
370
+ static ɵfac: i0.ɵɵFactoryDeclaration<UiRectangle, never>;
371
+ static ɵcmp: i0.ɵɵComponentDeclaration<UiRectangle, "ui-rectangle", never, { "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
372
+ }
373
+ /** A SwiftUI `RoundedRectangle`, its corners rounded by `cornerRadius`. */
374
+ export declare class UiRoundedRectangle {
375
+ readonly cornerRadius: import("@angular/core").InputSignalWithTransform<number | undefined, unknown>;
376
+ readonly modifiers: import("@angular/core").InputSignal<readonly UiModifier[] | undefined>;
377
+ static ɵfac: i0.ɵɵFactoryDeclaration<UiRoundedRectangle, never>;
378
+ static ɵcmp: i0.ɵɵComponentDeclaration<UiRoundedRectangle, "ui-rounded-rectangle", never, { "cornerRadius": { "alias": "cornerRadius"; "required": false; "isSignal": true; }; "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
379
+ }
380
+ /** A SwiftUI `UnevenRoundedRectangle`: a rectangle with a radius of its own for each corner. */
381
+ export declare class UiUnevenRoundedRectangle {
382
+ readonly topLeadingRadius: import("@angular/core").InputSignalWithTransform<number | undefined, unknown>;
383
+ readonly topTrailingRadius: import("@angular/core").InputSignalWithTransform<number | undefined, unknown>;
384
+ readonly bottomLeadingRadius: import("@angular/core").InputSignalWithTransform<number | undefined, unknown>;
385
+ readonly bottomTrailingRadius: import("@angular/core").InputSignalWithTransform<number | undefined, unknown>;
386
+ readonly modifiers: import("@angular/core").InputSignal<readonly UiModifier[] | undefined>;
387
+ static ɵfac: i0.ɵɵFactoryDeclaration<UiUnevenRoundedRectangle, never>;
388
+ static ɵcmp: i0.ɵɵComponentDeclaration<UiUnevenRoundedRectangle, "ui-uneven-rounded-rectangle", never, { "topLeadingRadius": { "alias": "topLeadingRadius"; "required": false; "isSignal": true; }; "topTrailingRadius": { "alias": "topTrailingRadius"; "required": false; "isSignal": true; }; "bottomLeadingRadius": { "alias": "bottomLeadingRadius"; "required": false; "isSignal": true; }; "bottomTrailingRadius": { "alias": "bottomTrailingRadius"; "required": false; "isSignal": true; }; "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
389
+ }
390
+ /** A SwiftUI `Capsule`: a rectangle with fully rounded ends. */
391
+ export declare class UiCapsule {
392
+ readonly cornerStyle: import("@angular/core").InputSignal<"continuous" | "circular" | undefined>;
393
+ readonly modifiers: import("@angular/core").InputSignal<readonly UiModifier[] | undefined>;
394
+ static ɵfac: i0.ɵɵFactoryDeclaration<UiCapsule, never>;
395
+ static ɵcmp: i0.ɵɵComponentDeclaration<UiCapsule, "ui-capsule", never, { "cornerStyle": { "alias": "cornerStyle"; "required": false; "isSignal": true; }; "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
396
+ }
397
+ /** A SwiftUI `Circle`, as large as fits the space it is given. */
398
+ export declare class UiCircle {
399
+ readonly modifiers: import("@angular/core").InputSignal<readonly UiModifier[] | undefined>;
400
+ static ɵfac: i0.ɵɵFactoryDeclaration<UiCircle, never>;
401
+ static ɵcmp: i0.ɵɵComponentDeclaration<UiCircle, "ui-circle", never, { "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
402
+ }
403
+ /** A SwiftUI `Ellipse`, filling the space it is given. */
404
+ export declare class UiEllipse {
405
+ readonly modifiers: import("@angular/core").InputSignal<readonly UiModifier[] | undefined>;
406
+ static ɵfac: i0.ɵɵFactoryDeclaration<UiEllipse, never>;
407
+ static ɵcmp: i0.ɵɵComponentDeclaration<UiEllipse, "ui-ellipse", never, { "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
408
+ }
409
+ /**
410
+ * WidgetKit's `AccessoryWidgetBackground`: the system's backdrop for a lock screen widget, the
411
+ * translucent disc or panel behind its content.
412
+ */
413
+ export declare class UiAccessoryWidgetBackground {
414
+ readonly modifiers: import("@angular/core").InputSignal<readonly UiModifier[] | undefined>;
415
+ static ɵfac: i0.ɵɵFactoryDeclaration<UiAccessoryWidgetBackground, never>;
416
+ static ɵcmp: i0.ɵɵComponentDeclaration<UiAccessoryWidgetBackground, "ui-accessory-widget-background", never, { "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
417
+ }
418
+ /** A SwiftUI `Label`: a title beside an SF Symbol. */
419
+ export declare class UiLabel {
420
+ readonly title: import("@angular/core").InputSignal<string | undefined>;
421
+ /** An SF Symbol name. */
422
+ readonly systemImage: import("@angular/core").InputSignal<string | undefined>;
423
+ readonly color: import("@angular/core").InputSignal<string | undefined>;
424
+ readonly modifiers: import("@angular/core").InputSignal<readonly UiModifier[] | undefined>;
425
+ static ɵfac: i0.ɵɵFactoryDeclaration<UiLabel, never>;
426
+ static ɵcmp: i0.ɵɵComponentDeclaration<UiLabel, "ui-label", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "systemImage": { "alias": "systemImage"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
427
+ }
428
+ /**
429
+ * A SwiftUI `Link`: opens `destination`, a URL, when tapped. It shows `label`, or the views
430
+ * written inside it. In a widget, a link is how a tap opens the app at a deep link.
431
+ */
432
+ export declare class UiLink {
433
+ readonly destination: import("@angular/core").InputSignal<string>;
434
+ readonly label: import("@angular/core").InputSignal<string | undefined>;
435
+ readonly modifiers: import("@angular/core").InputSignal<readonly UiModifier[] | undefined>;
436
+ static ɵfac: i0.ɵɵFactoryDeclaration<UiLink, never>;
437
+ static ɵcmp: i0.ɵɵComponentDeclaration<UiLink, "ui-link", never, { "destination": { "alias": "destination"; "required": true; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
438
+ }
308
439
  /** A SwiftUI `LabeledContent`: a label, and its content beside it. */
309
440
  export declare class UiLabeledContent {
310
441
  readonly label: import("@angular/core").InputSignal<string | undefined>;
@@ -325,3 +456,4 @@ export declare class UiSection {
325
456
  static ɵfac: i0.ɵɵFactoryDeclaration<UiSection, never>;
326
457
  static ɵcmp: i0.ɵɵComponentDeclaration<UiSection, "ui-section", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "modifiers": { "alias": "modifiers"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
327
458
  }
459
+ export {};