@satinhq/kit 0.1.0-beta.3 → 0.1.0-beta.4
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/NOTICE +1 -1
- package/README.md +1 -2
- package/dist/acknowledgements/inventory.json +1 -1
- package/dist/actions/RowActions.d.ts +2 -2
- package/dist/actions/RowActions.js +91 -25
- package/dist/actions/fullSwipeContact.d.ts +73 -0
- package/dist/actions/fullSwipeContact.js +186 -0
- package/dist/actions/rowScrub.d.ts +7 -4
- package/dist/actions/rowScrub.js +39 -37
- package/dist/actions/types.d.ts +13 -7
- package/dist/app/InstallComponents.d.ts +4 -7
- package/dist/app/InstallComponents.js +7 -7
- package/dist/app/InstallationDiagnostics.d.ts +2 -1
- package/dist/app/InstallationDiagnostics.js +2 -1
- package/dist/app/appearance.d.ts +5 -3
- package/dist/app/appearance.js +5 -3
- package/dist/app/appearanceStore.d.ts +3 -2
- package/dist/app/buildInfo.d.ts +4 -4
- package/dist/app/buildInfo.js +2 -2
- package/dist/app/definition.d.ts +11 -3
- package/dist/app/definition.js +2 -0
- package/dist/app/head.d.ts +2 -1
- package/dist/app/head.js +13 -16
- package/dist/app/inlineCSP.d.ts +6 -0
- package/dist/app/inlineCSP.js +25 -0
- package/dist/app/install.d.ts +1 -0
- package/dist/app/install.js +5 -2
- package/dist/app/installCheck.js +32 -86
- package/dist/app/installContext.d.ts +10 -5
- package/dist/app/installContext.js +2 -0
- package/dist/app/installCustom.js +1 -0
- package/dist/app/installExperience.js +0 -60
- package/dist/app/installationFailure.d.ts +3 -2
- package/dist/app/installationFailure.js +1 -1
- package/dist/app/launchScreen.d.ts +6 -2
- package/dist/app/launchScreen.js +104 -1
- package/dist/app/launchScreenRuntime.d.ts +31 -4
- package/dist/app/launchScreenRuntime.js +150 -22
- package/dist/app/launchWatchdog.js +25 -65
- package/dist/app/platformScripts.js +11 -0
- package/dist/app/styles.d.ts +3 -0
- package/dist/app/styles.js +42 -0
- package/dist/app/viewportValue.d.ts +2 -1
- package/dist/app/vite.d.ts +4 -0
- package/dist/app/vite.js +22 -24
- package/dist/content/content.d.ts +35 -30
- package/dist/content/content.js +19 -16
- package/dist/content/layout.d.ts +10 -2
- package/dist/content/layout.js +4 -2
- package/dist/content/scaledMetric.d.ts +2 -1
- package/dist/content/scaledMetric.js +2 -1
- package/dist/controls/ColorPicker.d.ts +2 -4
- package/dist/controls/ColorPicker.js +2 -4
- package/dist/controls/DatePicker.d.ts +4 -4
- package/dist/controls/DatePicker.js +2 -2
- package/dist/controls/ProgressView.d.ts +4 -4
- package/dist/controls/ProgressView.js +1 -2
- package/dist/data/database.d.ts +9 -8
- package/dist/data/database.js +4 -4
- package/dist/docs/reference.md +982 -964
- package/dist/docs/tailwind.md +76 -0
- package/dist/docs/tokens.md +1 -1
- package/dist/gestures/GestureView.d.ts +3 -1
- package/dist/gestures/GestureView.js +2 -1
- package/dist/gestures/gesture.d.ts +22 -2
- package/dist/gestures/gesture.js +7 -2
- package/dist/glass/GlassEffect.d.ts +2 -1
- package/dist/glass/GlassEffect.js +2 -1
- package/dist/glass/GlassPresentation.d.ts +1 -0
- package/dist/glass/GlassPresentation.js +21 -4
- package/dist/glass/TabBar.js +23 -1
- package/dist/glass/errorAlert.js +2 -1
- package/dist/glass/errors.d.ts +3 -1
- package/dist/glass/fallback/runtime.d.ts +1 -0
- package/dist/glass/fallback/runtime.js +8 -1
- package/dist/glass/liquidContext.d.ts +2 -0
- package/dist/glass/menuPresenter.d.ts +2 -0
- package/dist/glass/regions.d.ts +2 -1
- package/dist/glass/renderSpecs.d.ts +1 -0
- package/dist/glass/renderSpecs.js +1 -0
- package/dist/glass/webgpu/controlRim.d.ts +29 -0
- package/dist/glass/webgpu/controlRim.js +68 -0
- package/dist/glass/webgpu/passes.d.ts +2 -2
- package/dist/glass/webgpu/production.d.ts +1 -0
- package/dist/glass/webgpu/production.js +27 -1
- package/dist/glass/webgpu/rasterUniforms.js +9 -0
- package/dist/glass/webgpu/shaders.d.ts +2 -2
- package/dist/glass/webgpu/shaders.js +5 -1
- package/dist/haptics/SensoryButton.d.ts +4 -4
- package/dist/haptics/SensoryButton.js +3 -3
- package/dist/image/Image.d.ts +6 -3
- package/dist/image/Image.js +4 -3
- package/dist/image/asset.d.ts +2 -1
- package/dist/keyboard/adapter.d.ts +3 -4
- package/dist/keyboard/geometry.d.ts +1 -1
- package/dist/list-form/ListForm.d.ts +8 -7
- package/dist/list-form/ListForm.js +2 -2
- package/dist/list-form/editing.d.ts +5 -6
- package/dist/list-form/editing.js +4 -5
- package/dist/list-form/offsets.d.ts +2 -2
- package/dist/list-form/offsets.js +2 -2
- package/dist/media/react.d.ts +2 -1
- package/dist/media/react.js +2 -1
- package/dist/media/types.d.ts +6 -3
- package/dist/motion/TransitionView.d.ts +4 -2
- package/dist/motion/TransitionView.js +3 -2
- package/dist/motion/animationValue.d.ts +1 -1
- package/dist/motion/matchedGeometry.d.ts +6 -5
- package/dist/motion/matchedGeometry.js +2 -1
- package/dist/motion/transition.d.ts +4 -1
- package/dist/motion/transition.js +2 -0
- package/dist/navigation/DetailList.d.ts +1 -1
- package/dist/navigation/DetailList.js +1 -1
- package/dist/navigation/Sidebar.d.ts +3 -1
- package/dist/navigation/Sidebar.js +1 -1
- package/dist/navigation/SidebarSymbol.d.ts +2 -1
- package/dist/navigation/SidebarSymbol.js +2 -1
- package/dist/navigation/navigationContext.d.ts +2 -1
- package/dist/navigation/navigationContext.js +2 -1
- package/dist/navigation/splitContext.d.ts +2 -1
- package/dist/navigation/splitContext.js +2 -1
- package/dist/navigation/toolbarMinimization.d.ts +4 -3
- package/dist/navigation/types.d.ts +7 -5
- package/dist/presentation/Presentation.d.ts +8 -7
- package/dist/presentation/Presentation.js +3 -2
- package/dist/presentation/model.d.ts +2 -1
- package/dist/press/Pressable.d.ts +5 -1
- package/dist/press/Pressable.js +2 -0
- package/dist/press/stateMachine.d.ts +1 -1
- package/dist/public/Label.d.ts +2 -1
- package/dist/public/Label.js +2 -1
- package/dist/public/Screen.d.ts +4 -6
- package/dist/public/actions.d.ts +2 -1
- package/dist/public/actions.js +2 -1
- package/dist/public/buttonBorderShape.d.ts +2 -1
- package/dist/public/colors.d.ts +7 -4
- package/dist/public/colors.js +3 -2
- package/dist/public/controlStyle.d.ts +17 -14
- package/dist/public/controls.d.ts +27 -26
- package/dist/public/controls.js +20 -19
- package/dist/public/deviceActions.d.ts +6 -4
- package/dist/public/deviceActions.js +4 -2
- package/dist/public/environment.d.ts +16 -13
- package/dist/public/environment.js +11 -9
- package/dist/public/filePickers.d.ts +6 -4
- package/dist/public/filePickers.js +3 -2
- package/dist/public/glass.d.ts +6 -3
- package/dist/public/glass.js +2 -1
- package/dist/public/glassValue.d.ts +3 -4
- package/dist/public/glassValue.js +3 -4
- package/dist/public/keyboard.d.ts +4 -1
- package/dist/public/keyboard.js +2 -1
- package/dist/public/navigationTransition.d.ts +5 -5
- package/dist/public/navigationTransition.js +2 -2
- package/dist/public/presentation.d.ts +8 -7
- package/dist/public/presentation.js +5 -5
- package/dist/public/runtime.d.ts +9 -8
- package/dist/public/runtime.js +7 -7
- package/dist/public/scroll.d.ts +6 -3
- package/dist/public/scroll.js +3 -1
- package/dist/public/structure.d.ts +2 -2
- package/dist/public/toolbar.d.ts +15 -11
- package/dist/public/toolbar.js +12 -7
- package/dist/reachability/model.d.ts +4 -3
- package/dist/reachability/react.d.ts +4 -1
- package/dist/reachability/react.js +2 -1
- package/dist/root/SatinRoot.d.ts +3 -3
- package/dist/root/SatinRoot.js +12 -36
- package/dist/root/mountSatin.d.ts +1 -1
- package/dist/root/mountSatin.js +26 -35
- package/dist/root/runtimeContext.d.ts +2 -1
- package/dist/root/runtimeContext.js +2 -1
- package/dist/safe-area/Overlay.d.ts +3 -2
- package/dist/safe-area/Overlay.js +2 -1
- package/dist/safe-area/SafeAreaInset.d.ts +11 -7
- package/dist/safe-area/SafeAreaInset.js +7 -6
- package/dist/safe-area/context.d.ts +3 -3
- package/dist/safe-area/context.js +1 -1
- package/dist/safe-area/displayCorners.d.ts +4 -2
- package/dist/safe-area/displayCorners.js +4 -2
- package/dist/safe-area/modifiers.d.ts +14 -10
- package/dist/safe-area/modifiers.js +8 -4
- package/dist/scroll/ScrollSurface.js +5 -1
- package/dist/scroll/ScrollTarget.d.ts +1 -1
- package/dist/scroll/ScrollTarget.js +1 -1
- package/dist/scroll/edgePolicy.d.ts +2 -2
- package/dist/scroll/position.d.ts +5 -3
- package/dist/scroll/types.d.ts +1 -1
- package/dist/search/PadSearchDrawer.d.ts +7 -0
- package/dist/search/PadSearchDrawer.js +8 -0
- package/dist/search/PadSearchPresentationContext.d.ts +6 -0
- package/dist/search/PadSearchPresentationContext.js +4 -0
- package/dist/search/SearchDrawer.d.ts +1 -1
- package/dist/search/SearchDrawer.js +6 -1
- package/dist/search/SearchSuggestionsPopover.d.ts +6 -0
- package/dist/search/SearchSuggestionsPopover.js +42 -0
- package/dist/search/SearchToolbarField.d.ts +2 -1
- package/dist/search/SearchToolbarField.js +28 -7
- package/dist/search/padSearchBarMotion.d.ts +69 -0
- package/dist/search/padSearchBarMotion.js +73 -0
- package/dist/search/padSearchFieldSamples.json +491 -0
- package/dist/search/searchPlacement.d.ts +3 -0
- package/dist/search/searchPlacement.js +7 -0
- package/dist/search/searchable.d.ts +14 -12
- package/dist/search/usePadSearchFieldMotion.d.ts +4 -0
- package/dist/search/usePadSearchFieldMotion.js +100 -0
- package/dist/search/useSearchPresentation.d.ts +2 -1
- package/dist/search/useSearchPresentation.js +23 -5
- package/dist/server.d.ts +4 -4
- package/dist/server.js +4 -4
- package/dist/shapes/corners.d.ts +3 -3
- package/dist/shapes/corners.js +1 -2
- package/dist/styles.css +8289 -8244
- package/dist/sw/vite.d.ts +4 -0
- package/dist/sw/vite.js +2 -0
- package/dist/symbols/Symbol.d.ts +7 -5
- package/dist/symbols/Symbol.js +5 -3
- package/dist/symbols/catalogue.d.ts +1 -1
- package/dist/symbols/types.d.ts +6 -4
- package/dist/tabs/TabSection.d.ts +3 -2
- package/dist/tabs/TabSection.js +2 -1
- package/dist/tabs/TabView.js +54 -51
- package/dist/tasks/useTask.d.ts +5 -4
- package/dist/tasks/useTask.js +4 -3
- package/dist/testing.d.ts +3 -2
- package/dist/testing.js +3 -2
- package/dist/text-input/focusChain.d.ts +4 -3
- package/dist/text-input/focusChain.js +3 -2
- package/dist/text-input/kinds.d.ts +1 -1
- package/dist/web/WebView.d.ts +10 -3
- package/dist/web/WebView.js +3 -2
- package/dist/web/authentication.d.ts +12 -1
- package/dist/web/authentication.js +2 -1
- package/dist/web/openURL.d.ts +10 -4
- package/dist/web/openURL.js +4 -2
- package/dist/web/useWebAuthentication.d.ts +2 -1
- package/dist/web/useWebAuthentication.js +2 -1
- package/dist/zoom/Zoomable.d.ts +3 -3
- package/dist/zoom/Zoomable.js +2 -2
- package/package.json +1 -1
package/dist/docs/reference.md
CHANGED
|
@@ -6,1013 +6,1031 @@ Generated from package declarations and reviewed behavior metadata. Run `pnpm --
|
|
|
6
6
|
|
|
7
7
|
Coverage: 943 named exports across 9 declaration entry points. 151 exports have reviewed behavior metadata. 792 type and integration declarations are identified separately in the behavior review inventory. CSS is a stylesheet, not a named export.
|
|
8
8
|
|
|
9
|
-
An API description establishes the supported contract. It does not certify pixels, motion, touch or installed-app lifecycle behavior. Experimental entry points remain experimental.
|
|
9
|
+
An API description establishes the supported contract. It does not certify pixels, motion, touch or installed-app lifecycle behavior. Experimental entry points remain experimental. An empty Limits cell means there are no limits beyond what the declaration states.
|
|
10
10
|
|
|
11
11
|
## Core API
|
|
12
12
|
|
|
13
13
|
Module: `@satinhq/kit`
|
|
14
14
|
|
|
15
|
+
Components, hooks and types for building the app.
|
|
16
|
+
|
|
15
17
|
| Satin export | Behavior | Limits | Also known as |
|
|
16
18
|
| --- | --- | --- | --- |
|
|
17
|
-
| [`Action`](../actions/types.d.ts) |
|
|
18
|
-
| [`ActionItem`](../actions/types.d.ts) | A
|
|
19
|
-
| [`AdaptiveGridItemOptions`](../content/content.d.ts) | Bounds for
|
|
20
|
-
| [`Alert`](../presentation/Presentation.d.ts) |
|
|
21
|
-
| [`AlertProps`](../presentation/Presentation.d.ts) | An alert's presentation binding, message
|
|
22
|
-
| [`AlertTextFieldProps`](../presentation/Presentation.d.ts) | The
|
|
23
|
-
| [`Animation`](../motion/animationValue.d.ts) | An opaque spring timing value for `withAnimation`. Use a named value or `Animation.spring`. | Other state and style changes do not animate.
|
|
24
|
-
| [`AppCapability`](../app/definition.d.ts) | A
|
|
25
|
-
| [`AppDefinition`](../app/definition.d.ts) |
|
|
26
|
-
| [`AppDefinitionInput`](../public/definition.d.ts) | What an app declares about itself: identity, install metadata and launch appearance. |
|
|
27
|
-
| [`AppIcon`](../app/definition.d.ts) |
|
|
28
|
-
| [`AppOrientation`](../app/definition.d.ts) | An orientation that the app supports. |
|
|
29
|
-
| [`AsyncImage`](../image/Image.d.ts) |
|
|
30
|
-
| [`AsyncImagePhase`](../image/Image.d.ts) |
|
|
31
|
-
| [`AsyncImageProps`](../image/Image.d.ts) | An `ImageProps` whose source is a remote URL. |
|
|
32
|
-
| [`BuildInfo`](../app/buildInfo.d.ts) |
|
|
33
|
-
| [`BuiltInButtonStyle`](../public/controlStyle.d.ts) |
|
|
34
|
-
| [`BuiltInLabelStyle`](../public/controlStyle.d.ts) |
|
|
35
|
-
| [`BuiltInToggleStyle`](../public/controlStyle.d.ts) |
|
|
36
|
-
| [`Button`](../public/controls.d.ts) |
|
|
37
|
-
| [`ButtonBorderShape`](../public/buttonBorderShape.d.ts) |
|
|
38
|
-
| [`ButtonProps`](../public/controls.d.ts) | Button's action, label and control properties. An `iconOnly` button needs an `aria-label`. |
|
|
39
|
-
| [`ButtonRole`](../public/controlStyle.d.ts) |
|
|
40
|
-
| [`ButtonStyle`](../public/controlStyle.d.ts) | A custom
|
|
41
|
-
| [`ButtonStyleConfiguration`](../public/controlStyle.d.ts) |
|
|
42
|
-
| [`Choice`](../list-form/ListForm.d.ts) | One option of a `Picker`. |
|
|
43
|
-
| [`collection`](../data/database.d.ts) | Declares a collection of records keyed by one string field
|
|
44
|
-
| [`Collection`](../data/database.d.ts) | One collection of a database (`db.notes`). Once loaded, writes publish to memory at once, so `useQuery` sees them immediately; the returned promise settles after the durable commit. |
|
|
45
|
-
| [`CollectionDefinition`](../data/database.d.ts) | A collection's record type, key and indexes, made by `collection` for `defineDatabase`. |
|
|
46
|
-
| [`CollectionIndexes`](../data/database.d.ts) | A mapping from declared index names to record properties. |
|
|
47
|
-
| [`CollectionSchema`](../data/database.d.ts) | The named collections in a database declaration. |
|
|
48
|
-
| [`CollectionUpdateMethods`](../data/database.d.ts) |
|
|
49
|
-
| [`ColorPicker`](../controls/ColorPicker.d.ts) |
|
|
50
|
-
| [`ColorPickerProps`](../controls/ColorPicker.d.ts) | ColorPicker's label and controlled colour. |
|
|
51
|
-
| [`ColorScheme`](../public/environment.d.ts) |
|
|
52
|
-
| [`ConfirmationDialog`](../presentation/Presentation.d.ts) |
|
|
53
|
-
| [`ConfirmationDialogProps`](../presentation/Presentation.d.ts) | A confirmation dialog's presentation binding,
|
|
54
|
-
| [`ContentAlignment`](../content/content.d.ts) |
|
|
55
|
-
| [`ContentFrame`](../content/content.d.ts) |
|
|
56
|
-
| [`ContentMargins`](../safe-area/modifiers.d.ts) | Sets margins for
|
|
57
|
-
| [`ContentMarginsProps`](../safe-area/modifiers.d.ts) | Which edges get a margin, how much, and whether it applies to content or indicators. |
|
|
58
|
-
| [`ContentPadding`](../content/content.d.ts) | `padding
|
|
59
|
-
| [`ContentProps`](../content/content.d.ts) |
|
|
60
|
-
| [`ContentUnavailableView`](../public/controls.d.ts) |
|
|
61
|
-
| [`ContentUnavailableViewProps`](../public/controls.d.ts) | The empty state's title, optional description and icon (a tray by default). |
|
|
62
|
-
| [`ContextMenu`](../actions/RowActions.d.ts) |
|
|
63
|
-
| [`ContextMenuConfiguration`](../actions/types.d.ts) | `contextMenu
|
|
64
|
-
| [`ControlConfiguration`](../public/controlStyle.d.ts) |
|
|
65
|
-
| [`ControlSize`](../public/controlStyle.d.ts) |
|
|
66
|
-
| [`ControlStyleProvider`](../public/controlStyle.d.ts) | Sets control defaults for a subtree through `buttonStyle`, `toggleStyle`, `labelStyle`, `controlSize`, `tint` and `disabled`. A control's own props win over the provider, except that a disabled ancestor cannot be re-enabled by a child. |
|
|
67
|
-
| [`ControlStyleValues`](../public/controlStyle.d.ts) | The control environment a `ControlStyleProvider` sets for its subtree. |
|
|
68
|
-
| [`CoreSymbolName`](../symbols/catalogue.d.ts) |
|
|
69
|
-
| [`cornerClipPath`](../shapes/corners.d.ts) | CSS clip for
|
|
70
|
-
| [`CornerShape`](../shapes/corners.d.ts) | A
|
|
71
|
-
| [`DatabaseMigration`](../data/database.d.ts) |
|
|
72
|
-
| [`DatabaseRecord`](../data/database.d.ts) | A stored record with named values. |
|
|
73
|
-
| [`DatePicker`](../controls/DatePicker.d.ts) |
|
|
74
|
-
| [`DatePickerComponent`](../controls/DatePicker.d.ts) |
|
|
75
|
-
| [`DatePickerProps`](../controls/DatePicker.d.ts) | DatePicker's label, controlled selection, range and the components it edits. `selection` is a `Date`, or a civil string with no time zone: `'2026-10-14'` for a date, `'09:41'` for a time, `'2026-10-14T09:41'` for both. The callback returns the same kind. |
|
|
76
|
-
| [`DatePickerRange`](../controls/DatePicker.d.ts) | A DatePicker's selectable range. Omit a bound for a one-sided range (`start...` or `...end`). Bounds use the same kind of value as the selection. |
|
|
77
|
-
| [`DatePickerStyle`](../controls/DatePicker.d.ts) |
|
|
78
|
-
| [`DefaultToolbarItem`](../public/toolbar.d.ts) | Places the screen search field among bottom
|
|
79
|
-
| [`DefaultToolbarItemProps`](../public/toolbar.d.ts) | Which system item to place, and where.
|
|
80
|
-
| [`defineApp`](../public/definition.d.ts) | Declares app identity, install metadata and capabilities once. Pass the result to `runApp` and to the `@satinhq/kit/vite` plugin. Everything not given is defaulted and the whole definition is validated, so a bad id or icon fails at build time rather than after install. | One app root
|
|
81
|
-
| [`defineDatabase`](../data/database.d.ts) | Opens the app's local database
|
|
82
|
-
| [`defineNamespace`](../motion/matchedGeometry.d.ts) | A namespace declared once at module scope, for views that share no parent component: a `MatchedTransitionSource` in one route and the screen it zooms into in another. Inside one component, use `useNamespace()`. | Pushed screens only
|
|
83
|
-
| [`defineNavigation`](../public/structure.d.ts) | Declares the app's primary tabs or its single stack before anything renders, so every stack and tab id exists (and is typed) from the first frame. Pass the result to `runApp`; `TabView`, `Tab` and `NavigationStack` then render it. Components may freely wrap those views. | One app root
|
|
84
|
-
| [`defineRoutes`](../public/routes.d.ts) | Declares every destination once. The same schema types `useNavigation` and `NavigationLink`, validates restored paths and checks notification deep links, so a route id or param is never a free-form string. |
|
|
85
|
-
| [`defineWebAuthentication`](../web/authentication.d.ts) |
|
|
86
|
-
| [`Divider`](../content/content.d.ts) |
|
|
87
|
-
| [`Edge`](../safe-area/context.d.ts) |
|
|
88
|
-
| [`EdgeInsets`](../public/environment.d.ts) |
|
|
89
|
-
| [`EdgeLengths`](../safe-area/context.d.ts) |
|
|
90
|
-
| [`EdgeSet`](../safe-area/modifiers.d.ts) |
|
|
91
|
-
| [`EdgeSetMember`](../safe-area/modifiers.d.ts) | A logical edge, an axis pair or all edges. |
|
|
92
|
-
| [`EditButton`](../public/controls.d.ts) |
|
|
93
|
-
| [`EditMode`](../list-form/editing.d.ts) |
|
|
94
|
-
| [`ExportDocument`](../data/database.d.ts) | The JSON document `exportJSON` writes and `importJSON` reads. |
|
|
95
|
-
| [`FileImporter`](../public/filePickers.d.ts) |
|
|
96
|
-
| [`FileImporterProps`](../public/filePickers.d.ts) |
|
|
97
|
-
| [`FixedGridItemOptions`](../content/content.d.ts) | A fixed track's
|
|
98
|
-
| [`FlexibleGridItemOptions`](../content/content.d.ts) | Bounds for a flexible track; the minimum defaults to 10 points. |
|
|
99
|
-
| [`FocusChainField`](../text-input/focusChain.d.ts) | The
|
|
100
|
-
| [`FontWeight`](../content/content.d.ts) |
|
|
101
|
-
| [`ForEach`](../list-form/editing.d.ts) |
|
|
102
|
-
| [`ForEachProps`](../list-form/editing.d.ts) | The collection, how to identify each element, the row each element becomes and its editing actions. `id` may be omitted when the elements have an `id` field. |
|
|
103
|
-
| [`Form`](../public/controls.d.ts) |
|
|
104
|
-
| [`FormProps`](../public/controls.d.ts) | The scroll, search and section options `Form` and `List` share. `style` is inline CSS. |
|
|
105
|
-
| [`FullScreenCover`](../public/presentation.d.ts) |
|
|
106
|
-
| [`FullScreenCoverProps`](../public/presentation.d.ts) |
|
|
107
|
-
| [`GeometryFrame`](../content/layout.d.ts) |
|
|
108
|
-
| [`GeometryProxy`](../content/layout.d.ts) |
|
|
109
|
-
| [`GeometryReader`](../content/layout.d.ts) |
|
|
110
|
-
| [`GeometryReaderProps`](../content/layout.d.ts) |
|
|
111
|
-
| [`GeometrySize`](../content/layout.d.ts) |
|
|
112
|
-
| [`Glass`](../public/glassValue.d.ts) |
|
|
113
|
-
| [`GlassEffect`](../public/glass.d.ts) | Draws glass behind its content in the given shape,
|
|
114
|
-
| [`GlassEffectContainer`](../glass/GlassEffect.d.ts) |
|
|
115
|
-
| [`GlassEffectProps`](../public/glass.d.ts) | The glass material
|
|
116
|
-
| [`GlassError`](../glass/errors.d.ts) |
|
|
117
|
-
| [`GlassErrorCode`](../glass/errors.d.ts) |
|
|
118
|
-
| [`GlassShape`](../public/glass.d.ts) |
|
|
119
|
-
| [`GlassTint`](../glass/regions.d.ts) |
|
|
120
|
-
| [`GridItem`](../content/content.d.ts) |
|
|
121
|
-
| [`GridItemOptions`](../content/content.d.ts) |
|
|
122
|
-
| [`GridItemValue`](../content/content.d.ts) | A
|
|
123
|
-
| [`HorizontalTextFieldProps`](../public/controls.d.ts) | Horizontal TextField's controlled text and keyboard intent. |
|
|
124
|
-
| [`HStack`](../content/content.d.ts) |
|
|
125
|
-
| [`HStackProps`](../content/content.d.ts) | HStack's vertical alignment and spacing in points. |
|
|
126
|
-
| [`IgnoresSafeArea`](../safe-area/modifiers.d.ts) |
|
|
127
|
-
| [`IgnoresSafeAreaProps`](../safe-area/modifiers.d.ts) | Which safe-area regions and edges the content ignores. |
|
|
128
|
-
| [`Image`](../image/Image.d.ts) |
|
|
129
|
-
| [`ImageAsset`](../image/asset.d.ts) |
|
|
130
|
-
| [`ImageProps`](../image/Image.d.ts) | An image's source, required alt text and aspect-ratio content mode. |
|
|
131
|
-
| [`IndexesOfCollection`](../data/database.d.ts) | The index names declared by a collection. |
|
|
132
|
-
| [`JustUpdated`](../app/coldLaunchUpdate.d.ts) | The previous and current build identifiers after an app update. |
|
|
133
|
-
| [`KeyboardGeometry`](../keyboard/geometry.d.ts) |
|
|
134
|
-
| [`KeyboardMetrics`](../public/keyboard.d.ts) |
|
|
135
|
-
| [`Label`](../public/Label.d.ts) |
|
|
136
|
-
| [`LabeledContent`](../public/controls.d.ts) |
|
|
137
|
-
| [`LabeledContentProps`](../public/controls.d.ts) | The row's label and the trailing value it shows. |
|
|
138
|
-
| [`LabelProps`](../public/Label.d.ts) | A label's title (children) and its icon: a `symbol` name or any `icon` node. |
|
|
139
|
-
| [`LabelStyle`](../public/controlStyle.d.ts) | A custom
|
|
140
|
-
| [`LabelStyleConfiguration`](../public/controlStyle.d.ts) | `
|
|
141
|
-
| [`LaunchScreenSlot`](../app/launchScreen.d.ts) |
|
|
142
|
-
| [`LayoutModifierProps`](../safe-area/modifiers.d.ts) | The
|
|
143
|
-
| [`LazyHGrid`](../content/content.d.ts) |
|
|
144
|
-
| [`LazyHGridProps`](../content/content.d.ts) |
|
|
145
|
-
| [`LazyHStack`](../content/content.d.ts) |
|
|
146
|
-
| [`LazyHStackProps`](../content/content.d.ts) | LazyHStack's layout props. Every child mounts eagerly; use List for long data. |
|
|
147
|
-
| [`LazyVGrid`](../content/content.d.ts) |
|
|
148
|
-
| [`LazyVGridProps`](../content/content.d.ts) |
|
|
149
|
-
| [`LazyVStack`](../content/content.d.ts) |
|
|
150
|
-
| [`LazyVStackProps`](../content/content.d.ts) | LazyVStack's layout props. Every child mounts eagerly; use List for long data. |
|
|
151
|
-
| [`LineLimit`](../public/controls.d.ts) | A number caps growth; a range also reserves its minimum number of lines. |
|
|
152
|
-
| [`Link`](../web/openURL.d.ts) |
|
|
153
|
-
| [`LinkProps`](../web/openURL.d.ts) |
|
|
154
|
-
| [`List`](../public/controls.d.ts) |
|
|
155
|
-
| [`ListItemID`](../list-form/editing.d.ts) | A row's identity in `List` selection: the `ForEach` id. |
|
|
156
|
-
| [`ListProps`](../public/controls.d.ts) | A `List` takes a `Form`'s options, its `listStyle` and an optional `selection`. |
|
|
157
|
-
| [`ListRow`](../list-form/ListForm.d.ts) |
|
|
158
|
-
| [`ListRowProps`](../list-form/ListForm.d.ts) |
|
|
159
|
-
| [`ListSelectionProps`](../public/controls.d.ts) | `List
|
|
160
|
-
| [`ListStyle`](../public/controls.d.ts) |
|
|
161
|
-
| [`LocalReachabilityState`](../reachability/model.d.ts) | The
|
|
162
|
-
| [`MatchedTransitionSource`](../public/navigationTransition.d.ts) |
|
|
163
|
-
| [`MatchedTransitionSourceProps`](../public/navigationTransition.d.ts) |
|
|
164
|
-
| [`MediaCommandResult`](../media/types.d.ts) | How a media command ended. `needs-user-activation` means WebKit wants a tap first. |
|
|
165
|
-
| [`MediaController`](../media/types.d.ts) |
|
|
166
|
-
| [`MediaPlayer`](../media/types.d.ts) | `useMediaPlayer`'s result: the commands and the live state. | Audio
|
|
167
|
-
| [`MediaQueueEntry`](../media/types.d.ts) |
|
|
168
|
-
| [`MediaQueueOptions`](../media/types.d.ts) | Where a replaced queue starts, and whether it plays. |
|
|
169
|
-
| [`MediaRepeat`](../media/types.d.ts) | The queue's repeat mode
|
|
170
|
-
| [`MediaSnapshot`](../media/types.d.ts) | Everything the player shows: the queue, the current entry, status, position and modes. |
|
|
171
|
-
| [`Menu`](../public/actions.d.ts) |
|
|
172
|
-
| [`MenuProps`](../public/actions.d.ts) | A menu's label and its actions. |
|
|
173
|
-
| [`MenuTriggerProps`](../glass/menuPresenter.d.ts) |
|
|
174
|
-
| [`moving`](../list-form/offsets.d.ts) | Returns a new array: the elements at `fromOffsets` move, in their original order, to just before the element that was at `toOffset`. Pass it exactly what `ForEach`'s `onMove` reports. `toOffset` counts positions in the original array: moving the first of three rows below the second reports `toOffset` 2, not 1. Use `items.length` to move to the end. |
|
|
175
|
-
| [`NamespaceID`](../motion/matchedGeometry.d.ts) |
|
|
176
|
-
| [`Navigation`](../public/runtime.d.ts) | The
|
|
177
|
-
| [`NavigationArguments`](../public/runtime.d.ts) | The typed parameter tuple accepted by push and replace. |
|
|
178
|
-
| [`NavigationBackButtonBehavior`](../navigation/types.d.ts) |
|
|
179
|
-
| [`NavigationDeclaration`](../public/structure.d.ts) | An app's primary navigation: either tabs, each owning a stack, or one stack. |
|
|
180
|
-
| [`NavigationLink`](../public/controls.d.ts) |
|
|
181
|
-
| [`NavigationLinkProps`](../public/controls.d.ts) | A destination route and its params (typed against the registered routes), plus the row's label and accessories. |
|
|
182
|
-
| [`NavigationSplitView`](../public/runtime.d.ts) |
|
|
183
|
-
| [`NavigationSplitViewProps`](../public/runtime.d.ts) | Selects which declared primary stack the split view renders; inside a `Tab`, its own. |
|
|
184
|
-
| [`NavigationStack`](../public/runtime.d.ts) | Renders an in-memory navigation stack. A primary stack's root comes from `defineNavigation`, never from JSX. Inside a `Sheet`, `modal` with a `root` makes a stack the sheet owns. |
|
|
185
|
-
| [`NavigationStackProps`](../public/runtime.d.ts) | Either a declared primary stack (optionally naming its tab), or a modal stack inside a `Sheet` that declares its own root. |
|
|
186
|
-
| [`NavigationTransition`](../public/navigationTransition.d.ts) |
|
|
187
|
-
| [`newId`](../data/database.d.ts) | A new unique record id that sorts by creation time. |
|
|
188
|
-
| [`NotificationAuthorizationStatus`](../public/environment.d.ts) | Notification permission, independent of subscription setup and token rotation. |
|
|
189
|
-
| [`NotificationPermissionExplainer`](../public/environment.d.ts) | Explains what notifications are for before the user asks for them; its button requests authorization from that gesture. |
|
|
190
|
-
| [`NotificationPermissionExplainerProps`](../public/environment.d.ts) | The notification permission explanation's title and app-authored content. |
|
|
191
|
-
| [`OfflinePresentationProps`](../reachability/react.d.ts) |
|
|
192
|
-
| [`OpenURLAction`](../web/openURL.d.ts) |
|
|
193
|
-
| [`OpenURLOptions`](../web/openURL.d.ts) |
|
|
194
|
-
| [`OpenURLResult`](../web/openURL.d.ts) |
|
|
195
|
-
| [`OrientationFallback`](../app/definition.d.ts) |
|
|
196
|
-
| [`Overlay`](../safe-area/Overlay.d.ts) |
|
|
197
|
-
| [`OverlayProps`](../safe-area/Overlay.d.ts) |
|
|
198
|
-
| [`param`](../push/schema.d.ts) |
|
|
199
|
-
| [`Parameter`](../push/schema.d.ts) | One route parameter's validator, made by `param`. |
|
|
200
|
-
| [`ParameterSchema`](../push/schema.d.ts) | A route's parameters by name. |
|
|
201
|
-
| [`PasteButton`](../public/deviceActions.d.ts) |
|
|
202
|
-
| [`PasteButtonProps`](../public/deviceActions.d.ts) |
|
|
203
|
-
| [`PhotosPicker`](../public/filePickers.d.ts) |
|
|
204
|
-
| [`PhotosPickerProps`](../public/filePickers.d.ts) |
|
|
205
|
-
| [`Picker`](../public/controls.d.ts) |
|
|
206
|
-
| [`PickerProps`](../public/controls.d.ts) | Picker's options, controlled value and `pickerStyle`. |
|
|
207
|
-
| [`preferredColorScheme`](../app/appearance.d.ts) |
|
|
208
|
-
| [`PreferredColorScheme`](../app/appearanceStore.d.ts) |
|
|
209
|
-
| [`PresentationDetent`](../presentation/model.d.ts) |
|
|
210
|
-
| [`PresentationProps`](../presentation/Presentation.d.ts) | The presentation binding, accessible title and dismissal callback shared by presentations. |
|
|
211
|
-
| [`Pressable`](../press/Pressable.d.ts) |
|
|
212
|
-
| [`PressableOwnedHandlers`](../press/Pressable.d.ts) | DOM
|
|
213
|
-
| [`PressableProps`](../press/Pressable.d.ts) |
|
|
214
|
-
| [`PressState`](../press/stateMachine.d.ts) | Whether a press is idle
|
|
215
|
-
| [`ProgressView`](../controls/ProgressView.d.ts) |
|
|
216
|
-
| [`ProgressViewProps`](../controls/ProgressView.d.ts) | ProgressView's optional label and progress; without `value` it is indeterminate. |
|
|
217
|
-
| [`ProgressViewStyle`](../controls/ProgressView.d.ts) |
|
|
218
|
-
| [`Query`](../data/database.d.ts) | An immutable query over a collection: `index`, `keyRange`, `reverse`, `limit` and `filter` each return a new query. `useQuery` hands one to its configure callback. |
|
|
219
|
-
| [`ReachabilityPresentation`](../reachability/model.d.ts) | The connectivity presentation currently shown to the user. |
|
|
220
|
-
| [`ReachabilityProbeConfig`](../reachability/model.d.ts) | The endpoint and deadlines used to probe the app server. |
|
|
221
|
-
| [`ReachabilityRoutePolicy`](../reachability/model.d.ts) | Whether a destination remains usable without the app server. |
|
|
222
|
-
| [`ReachabilityState`](../reachability/model.d.ts) |
|
|
223
|
-
| [`ReachabilityStateStatus`](../reachability/model.d.ts) | The server probe result, including an unknown initial state. |
|
|
224
|
-
| [`ReachabilityStatus`](../reachability/model.d.ts) |
|
|
225
|
-
| [`ReachabilitySurface`](../reachability/model.d.ts) |
|
|
226
|
-
| [`RecordOfCollection`](../data/database.d.ts) | The record type stored by a collection declaration. |
|
|
227
|
-
| [`Register`](../public/routes.d.ts) | Augment once in the app to type bare `NavigationLink`, `NavigationStack`, `TabView` and `useNavigation` without generics. |
|
|
228
|
-
| [`RegisteredNavigation`](../public/structure.d.ts) | The navigation declared through `Register`, which types bare `TabView`, `Tab` and `NavigationStack`; `never` when the app has not registered one. |
|
|
229
|
-
| [`RegisteredRoutes`](../public/routes.d.ts) | The routes declared through `Register`; an empty route set when the app has not registered. |
|
|
230
|
-
| [`removing`](../list-form/offsets.d.ts) |
|
|
231
|
-
| [`route`](../public/routes.d.ts) | Binds a screen component to its parameter schema and static chrome. Declare the params first, then type the component with `RouteParameters<typeof params>`; this order avoids inference cycles. |
|
|
232
|
-
| [`RouteDefinition`](../public/routes.d.ts) | A screen bound to its parameter schema; made by `route`, collected by `defineRoutes`. |
|
|
233
|
-
| [`RouteOptions`](../public/routes.d.ts) | A destination's static chrome: what its bar shows from the first frame of the push. `Screen` overrides any of these once the screen has its data. |
|
|
234
|
-
| [`RouteParameters`](../push/schema.d.ts) | The props a route component receives for a parameter schema; optional params are optional. |
|
|
235
|
-
| [`RouteParameterValue`](../push/schema.d.ts) | The value described by a route parameter declaration. |
|
|
236
|
-
| [`RouteProps`](../public/routes.d.ts) | The params of one route, as its component receives them. |
|
|
237
|
-
| [`Routes`](../public/routes.d.ts) | Every destination of an app, made by `defineRoutes`. |
|
|
238
|
-
| [`RowActionsProps`](../actions/types.d.ts) | Row swipe actions and context-menu commands. |
|
|
239
|
-
| [`RowIcon`](../list-form/ListForm.d.ts) | A Settings-style icon: a white symbol on a rounded colour tile, for a row's leading edge. |
|
|
240
|
-
| [`RowIconProps`](../list-form/ListForm.d.ts) | The symbol and its tile colour: a system colour name or any CSS colour. |
|
|
241
|
-
| [`RowInteractionProps`](../public/controls.d.ts) | `swipeActions` and `contextMenu`
|
|
242
|
-
| [`RowLabel`](../public/controls.d.ts) | A row
|
|
243
|
-
| [`RowLabelProps`](../public/controls.d.ts) | A row title and its secondary line. |
|
|
244
|
-
| [`runApp`](../public/runtime.d.ts) | Mounts the app into `#root`. Satin creates every primary stack and restores the scene and its launch route before React's first commit, then owns navigation, restoration, notifications and the app shell. Call it once. `Content` replaces the default root, usually to add app-wide providers; it renders `TabView` or `NavigationStack` itself. Without it Satin renders the declaration directly. | One app root
|
|
245
|
-
| [`RunAppConfiguration`](../public/runtime.d.ts) | The app, routes, navigation and optional root content mounted by runApp. |
|
|
246
|
-
| [`RunAppOptions`](../public/runtime.d.ts) | App-wide runtime options for `runApp`. Every one is optional. |
|
|
247
|
-
| [`SafeAreaBar`](../safe-area/modifiers.d.ts) |
|
|
248
|
-
| [`SafeAreaBarProps`](../safe-area/modifiers.d.ts) | A `SafeAreaInset` limited to the top or bottom edge, with no spacing. |
|
|
249
|
-
| [`SafeAreaInset`](../safe-area/SafeAreaInset.d.ts) |
|
|
250
|
-
| [`SafeAreaInsetEdge`](../safe-area/SafeAreaInset.d.ts) | `
|
|
251
|
-
| [`SafeAreaInsetProps`](../safe-area/SafeAreaInset.d.ts) | The edge, the accessory (`content`) and its spacing; `children` is the content it insets. |
|
|
252
|
-
| [`SafeAreaPadding`](../safe-area/modifiers.d.ts) |
|
|
253
|
-
| [`SafeAreaPaddingProps`](../safe-area/modifiers.d.ts) | Which edges to pad, and by how much. |
|
|
254
|
-
| [`ScenePhase`](../public/environment.d.ts) |
|
|
255
|
-
| [`Screen`](../public/Screen.d.ts) | A route component's navigation chrome: title, toolbar, search and related options, declared by the screen that owns them. Use it when the title or toolbar depends on the screen's data; static chrome belongs in the route's options. |
|
|
256
|
-
| [`ScreenLifecycle`](../navigation/types.d.ts) |
|
|
257
|
-
| [`ScreenLifecycleCallbacks`](../navigation/types.d.ts) |
|
|
258
|
-
| [`ScreenProps`](../public/Screen.d.ts) | A screen's own chrome, overriding its route's static options. |
|
|
259
|
-
| [`ScrollAnchor`](../scroll/position.d.ts) |
|
|
260
|
-
| [`ScrollAxis`](../scroll/types.d.ts) | The axis along which a scroll surface accepts scrolling. |
|
|
261
|
-
| [`ScrollDismissesKeyboardMode`](../keyboard/adapter.d.ts) |
|
|
262
|
-
| [`ScrollEdge`](../scroll/edgePolicy.d.ts) |
|
|
263
|
-
| [`ScrollEdgeEffectHidden`](../scroll/edgePolicy.d.ts) | Whether to hide scroll edge material, optionally for specific edges. |
|
|
264
|
-
| [`ScrollEdgeEffectStyle`](../scroll/edgePolicy.d.ts) |
|
|
265
|
-
| [`ScrollEdgeEffectStyleSelection`](../scroll/edgePolicy.d.ts) | The scroll edge treatment and the edges to which it applies. |
|
|
266
|
-
| [`ScrollEdgeSelection`](../scroll/edgePolicy.d.ts) | One or more scroll edges, or all edges. |
|
|
267
|
-
| [`ScrollOffset`](../scroll/types.d.ts) | The scroll position in points along the physical x and y axes. |
|
|
268
|
-
| [`ScrollPositionBinding`](../scroll/position.d.ts) |
|
|
269
|
-
| [`ScrollPositionOptions`](../scroll/position.d.ts) |
|
|
270
|
-
| [`ScrollTarget`](../scroll/ScrollTarget.d.ts) |
|
|
271
|
-
| [`ScrollToTopOptions`](../scroll/types.d.ts) | Options for
|
|
272
|
-
| [`ScrollView`](../public/scroll.d.ts) |
|
|
273
|
-
| [`ScrollViewHandle`](../public/scroll.d.ts) |
|
|
274
|
-
| [`ScrollViewProps`](../public/scroll.d.ts) |
|
|
275
|
-
| [`Searchable`](../search/searchable.d.ts) |
|
|
276
|
-
| [`SearchFieldPlacement`](../search/searchable.d.ts) |
|
|
277
|
-
| [`SearchScopes`](../search/searchable.d.ts) |
|
|
278
|
-
| [`SearchSuggestion`](../search/searchable.d.ts) |
|
|
279
|
-
| [`Section`](../list-form/ListForm.d.ts) |
|
|
280
|
-
| [`SectionProps`](../list-form/ListForm.d.ts) | A section's rows and its optional header and footer. |
|
|
281
|
-
| [`SecureField`](../public/controls.d.ts) |
|
|
282
|
-
| [`SecureFieldProps`](../public/controls.d.ts) | SecureField's controlled text, label and prompt. |
|
|
283
|
-
| [`Selectable`](../root/SatinRoot.d.ts) |
|
|
284
|
-
| [`SelectableProps`](../root/SatinRoot.d.ts) |
|
|
285
|
-
| [`semanticColor`](../public/colors.d.ts) |
|
|
286
|
-
| [`SemanticColorName`](../public/colors.d.ts) |
|
|
287
|
-
| [`SensoryButton`](../haptics/SensoryButton.d.ts) |
|
|
288
|
-
| [`SensoryButtonProps`](../haptics/SensoryButton.d.ts) | A tap target's action, content and the feedback it plays. |
|
|
289
|
-
| [`SensoryFeedback`](../haptics/SensoryButton.d.ts) | The
|
|
290
|
-
| [`ServerReachabilityConfig`](../reachability/model.d.ts) | The server probe and presentation policy for an app that requires connectivity. |
|
|
291
|
-
| [`ServerReachabilityState`](../reachability/model.d.ts) | The last server probe, retry and connectivity presentation state. |
|
|
292
|
-
| [`ShareLink`](../public/deviceActions.d.ts) |
|
|
293
|
-
| [`ShareLinkProps`](../public/deviceActions.d.ts) |
|
|
294
|
-
| [`Sheet`](../public/presentation.d.ts) |
|
|
295
|
-
| [`SheetProps`](../public/presentation.d.ts) |
|
|
296
|
-
| [`Slider`](../public/controls.d.ts) | `
|
|
297
|
-
| [`SliderProps`](../public/controls.d.ts) | Slider's controlled value, range, step and accessibility label. |
|
|
298
|
-
| [`Spacer`](../content/content.d.ts) |
|
|
299
|
-
| [`SpacerProps`](../content/content.d.ts) | Spacer's minimum length in points. |
|
|
300
|
-
| [`SpringOptions`](../motion/animationValue.d.ts) |
|
|
301
|
-
| [`StackDeclaration`](../public/structure.d.ts) | A primary stack: its root route and, when that route requires them, the root's params. |
|
|
302
|
-
| [`Stepper`](../public/controls.d.ts) |
|
|
303
|
-
| [`StepperProps`](../public/controls.d.ts) | Stepper's controlled value, bounds and step. |
|
|
304
|
-
| [`storageQuota`](../public/storage.d.ts) |
|
|
305
|
-
| [`StringPropertyKey`](../data/database.d.ts) | The property keys whose values are strings. |
|
|
306
|
-
| [`SubmitLabel`](../text-input/kinds.d.ts) |
|
|
307
|
-
| [`SwipeAction`](../actions/types.d.ts) |
|
|
308
|
-
| [`SwipeActionItem`](../actions/types.d.ts) | A swipe command may
|
|
309
|
-
| [`SwipeActions`](../actions/types.d.ts) | `swipeActions
|
|
310
|
-
| [`SwipeActionsConfiguration`](../actions/types.d.ts) |
|
|
311
|
-
| [`SymbolGlyph`](../symbols/types.d.ts) |
|
|
312
|
-
| [`SymbolImage`](../symbols/Symbol.d.ts) |
|
|
313
|
-
| [`SymbolImageProps`](../symbols/Symbol.d.ts) | The symbol's name, symbol properties and an optional accessible label. |
|
|
314
|
-
| [`SymbolName`](../symbols/Symbol.d.ts) | A symbol name
|
|
315
|
-
| [`SymbolProvider`](../symbols/Symbol.d.ts) |
|
|
316
|
-
| [`SymbolRenderingMode`](../symbols/types.d.ts) | `
|
|
317
|
-
| [`SymbolScale`](../symbols/types.d.ts) |
|
|
318
|
-
| [`SymbolSource`](../symbols/types.d.ts) | Glyphs by symbol name, for `SymbolProvider`. |
|
|
319
|
-
| [`SymbolWeight`](../symbols/types.d.ts) |
|
|
320
|
-
| [`systemColor`](../public/colors.d.ts) |
|
|
321
|
-
| [`SystemColorName`](../public/colors.d.ts) |
|
|
322
|
-
| [`Tab`](../public/runtime.d.ts) |
|
|
323
|
-
| [`TabDeclaration`](../public/structure.d.ts) |
|
|
324
|
-
| [`TabId`](../public/structure.d.ts) | The union of a navigation declaration's tab ids. |
|
|
325
|
-
| [`TabProps`](../public/runtime.d.ts) | Names the declared tab to render. |
|
|
326
|
-
| [`TabSection`](../tabs/TabSection.d.ts) |
|
|
327
|
-
| [`TabSectionProps`](../tabs/TabSection.d.ts) |
|
|
328
|
-
| [`TabView`](../public/runtime.d.ts) |
|
|
329
|
-
| [`TabViewProps`](../public/runtime.d.ts) | TabView's selection binding and bar behaviour; its tabs come from `defineNavigation`. |
|
|
330
|
-
| [`TaskAction`](../tasks/useTask.d.ts) | The work `useTask` runs: pass `signal` to fetches and publish state through `commit`. |
|
|
331
|
-
| [`TaskCommit`](../tasks/useTask.d.ts) | Publish synchronous state updates only while this invocation is current. |
|
|
332
|
-
| [`TaskOptions`](../tasks/useTask.d.ts) | `
|
|
333
|
-
| [`TaskRunner`](../tasks/useTask.d.ts) | Cancels the current run and starts the task again; resolves when that run ends. |
|
|
334
|
-
| [`Text`](../content/content.d.ts) |
|
|
335
|
-
| [`TextEditor`](../public/controls.d.ts) |
|
|
336
|
-
| [`TextEditorProps`](../public/controls.d.ts) | TextEditor's controlled text, label and prompt. |
|
|
337
|
-
| [`TextField`](../public/controls.d.ts) |
|
|
338
|
-
| [`TextFieldKind`](../text-input/kinds.d.ts) | What a field holds, setting its keyboard, autofill and autocorrection together. |
|
|
339
|
-
| [`TextFieldProps`](../public/controls.d.ts) | A single-line field, or with `axis="vertical"` a field that grows to its `lineLimit`. |
|
|
340
|
-
| [`TextFieldStyle`](../public/controls.d.ts) |
|
|
341
|
-
| [`TextProps`](../content/content.d.ts) | Text's font, weight, design, line limit and alignment. |
|
|
342
|
-
| [`TextStyle`](../content/content.d.ts) |
|
|
343
|
-
| [`TitleDisplayMode`](../navigation/types.d.ts) |
|
|
344
|
-
| [`Toggle`](../public/controls.d.ts) |
|
|
345
|
-
| [`ToggleProps`](../public/controls.d.ts) | Toggle's controlled value, label and control properties. |
|
|
346
|
-
| [`ToggleStyle`](../public/controlStyle.d.ts) | A custom
|
|
347
|
-
| [`ToggleStyleConfiguration`](../public/controlStyle.d.ts) |
|
|
348
|
-
| [`ToolbarItem`](../public/toolbar.d.ts) | Places one navigation or bottom
|
|
349
|
-
| [`ToolbarItemGroup`](../public/toolbar.d.ts) |
|
|
350
|
-
| [`ToolbarItemProps`](../public/toolbar.d.ts) |
|
|
351
|
-
| [`ToolbarMinimizationBehavior`](../navigation/toolbarMinimization.d.ts) |
|
|
352
|
-
| [`ToolbarMinimizationRestoration`](../navigation/toolbarMinimization.d.ts) |
|
|
353
|
-
| [`ToolbarMinimizationSafeAreaAdjustment`](../navigation/toolbarMinimization.d.ts) | Whether
|
|
354
|
-
| [`ToolbarSpacer`](../public/toolbar.d.ts) |
|
|
355
|
-
| [`ToolbarSpacerProps`](../public/toolbar.d.ts) | The spacer's sizing and placement. |
|
|
356
|
-
| [`TransactionCollection`](../data/database.d.ts) | A collection as seen inside `db.transaction`: its writes commit together or not at all. |
|
|
357
|
-
| [`TransactionCollections`](../data/database.d.ts) | The typed collection handles available inside a database transaction. |
|
|
358
|
-
| [`TransitionPhase`](../navigation/types.d.ts) |
|
|
359
|
-
| [`UpdateActivation`](../app/definition.d.ts) | When a
|
|
360
|
-
| [`useAppStorage`](../public/environment.d.ts) |
|
|
361
|
-
| [`useAppUpdate`](../public/environment.d.ts) | Reports whether this launch applied an app update: `justUpdated` holds the previous and current build ids after an update, null otherwise (and until launch settles). Release updates apply at launch, before first input after foregrounding, or at a clean suspension. | Preview may reload on update. Release
|
|
362
|
-
| [`useBuildInfo`](../app/buildInfo.d.ts) |
|
|
363
|
-
| [`useColorScheme`](../public/environment.d.ts) |
|
|
364
|
-
| [`useDismiss`](../presentation/dismiss.d.ts) | Closes the screen or presentation that contains the caller. In a pushed screen it pops that screen; at the root of a Sheet or FullScreenCover it dismisses the presentation, even when interactive dismissal is disabled. Elsewhere it does nothing. |
|
|
365
|
-
| [`useEditMode`](../list-form/editing.d.ts) |
|
|
366
|
-
| [`useFocusChain`](../text-input/focusChain.d.ts) |
|
|
367
|
-
| [`useGlassErrors`](../public/environment.d.ts) | Every glass renderer error so far, re-rendering when one is added. For diagnostics screens; `runApp`'s `onGlassError` is the way to report them. |
|
|
368
|
-
| [`useHorizontalSizeClass`](../public/environment.d.ts) | `
|
|
369
|
-
| [`useKeyboardMetrics`](../public/keyboard.d.ts) |
|
|
370
|
-
| [`useMediaPlayer`](../media/react.d.ts) |
|
|
371
|
-
| [`useNamespace`](../motion/matchedGeometry.d.ts) |
|
|
372
|
-
| [`useNavigation`](../public/runtime.d.ts) | Returns the enclosing stack's navigation actions, typed against the registered routes. A wrong route id or a missing param is a compile error. |
|
|
373
|
-
| [`useNotifications`](../public/environment.d.ts) | The app's notification permission and badge. Call `requestAuthorization` from a user gesture, after explaining why (see `NotificationPermissionExplainer`). Without `runApp`'s `notifications` option the status is `unsupported`. |
|
|
374
|
-
| [`useOpenURL`](../web/openURL.d.ts) |
|
|
375
|
-
| [`useQuery`](../data/database.d.ts) |
|
|
376
|
-
| [`useReachability`](../reachability/react.d.ts) | The server status and
|
|
377
|
-
| [`useRecord`](../data/database.d.ts) | One record by key, kept live; `data` is undefined while loading and when no record exists. |
|
|
378
|
-
| [`UserInterfaceSizeClass`](../public/environment.d.ts) |
|
|
379
|
-
| [`useSafeAreaInsets`](../public/environment.d.ts) | The live safe-area insets in CSS pixels. Use them instead of `env(safe-area-inset-*)`. | A top inset under a large title stays at the expanded title edge while the title collapses. On an installed iPhone the status
|
|
380
|
-
| [`useScaledMetric`](../content/scaledMetric.d.ts) |
|
|
381
|
-
| [`useScenePhase`](../public/environment.d.ts) |
|
|
382
|
-
| [`useSceneStorage`](../public/environment.d.ts) |
|
|
383
|
-
| [`useScreenLifecycle`](../navigation/navigationContext.d.ts) | `
|
|
384
|
-
| [`useTask`](../tasks/useTask.d.ts) |
|
|
385
|
-
| [`useUnsavedChanges`](../root/runtimeContext.d.ts) |
|
|
386
|
-
| [`useVerticalSizeClass`](../public/environment.d.ts) | `
|
|
387
|
-
| [`useWebAuthentication`](../web/useWebAuthentication.d.ts) |
|
|
388
|
-
| [`useWebFrame`](../web/WebView.d.ts) |
|
|
389
|
-
| [`VerticalScrollGeometry`](../scroll/position.d.ts) | Vertical scroll geometry: the current viewport and content offset in points. |
|
|
390
|
-
| [`VerticalTextFieldProps`](../public/controls.d.ts) | Vertical TextField's controlled text, growth limits and keyboard intent. |
|
|
391
|
-
| [`ViewportFitPolicy`](../app/viewportValue.d.ts) |
|
|
392
|
-
| [`ViewThatFits`](../content/layout.d.ts) |
|
|
393
|
-
| [`ViewThatFitsAxis`](../content/layout.d.ts) |
|
|
394
|
-
| [`ViewThatFitsProps`](../content/layout.d.ts) |
|
|
395
|
-
| [`Visibility`](../navigation/types.d.ts) |
|
|
396
|
-
| [`VStack`](../content/content.d.ts) |
|
|
397
|
-
| [`VStackProps`](../content/content.d.ts) | VStack's horizontal alignment and spacing in points. |
|
|
398
|
-
| [`WebAuthentication`](../web/authentication.d.ts) |
|
|
399
|
-
| [`WebAuthenticationCallbackResult`](../web/authentication.d.ts) |
|
|
400
|
-
| [`WebAuthenticationConfiguration`](../web/authentication.d.ts) |
|
|
401
|
-
| [`WebAuthenticationExchange`](../web/authentication.d.ts) |
|
|
402
|
-
| [`WebAuthenticationRequest`](../web/authentication.d.ts) |
|
|
403
|
-
| [`WebAuthenticationStartResult`](../web/authentication.d.ts) |
|
|
404
|
-
| [`WebAuthenticationState`](../web/authentication.d.ts) |
|
|
405
|
-
| [`WebFrameActionResult`](../web/WebView.d.ts) |
|
|
406
|
-
| [`WebFrameController`](../web/WebView.d.ts) | Only same-origin frames expose their current page or accept
|
|
407
|
-
| [`WebFrameState`](../web/WebView.d.ts) |
|
|
408
|
-
| [`WebView`](../web/WebView.d.ts) |
|
|
409
|
-
| [`WebViewProps`](../web/WebView.d.ts) |
|
|
410
|
-
| [`withAnimation`](../motion/matchedGeometry.d.ts) | Applies the state changes in `update`, then animates the `MatchedGeometryEffect` views they move, insert or remove. Call it from an event handler. Keyed List rows also move to their new positions. Other views take their new layout at once. Returns the callback result and
|
|
411
|
-
| [`WriteFailure`](../data/write-store.d.ts) | A durable write that failed after it was published to memory, reported to `db.onError`. |
|
|
412
|
-
| [`Zoomable`](../zoom/Zoomable.d.ts) | A
|
|
413
|
-
| [`ZoomableProps`](../zoom/Zoomable.d.ts) |
|
|
414
|
-
| [`ZoomTransitionOptions`](../public/navigationTransition.d.ts) | The source identity and namespace for `NavigationTransition.zoom`. |
|
|
415
|
-
| [`ZStack`](../content/content.d.ts) |
|
|
416
|
-
| [`ZStackProps`](../content/content.d.ts) | How ZStack aligns its layers. |
|
|
19
|
+
| [`Action`](../actions/types.d.ts) | An entry in a menu, context menu or swipe action list: a command, a titled section of entries, or a submenu. | Actions have accessible names, but they do not appear in the VoiceOver Actions rotor. | |
|
|
20
|
+
| [`ActionItem`](../actions/types.d.ts) | A single command with an id, a label, an optional symbol and role, and an `onPress` handler. Menus, swipe actions, alerts and confirmation dialogs all use it. | | |
|
|
21
|
+
| [`AdaptiveGridItemOptions`](../content/content.d.ts) | Bounds for an adaptive track, which repeats to fit as many columns or rows as the space allows. A grid with an adaptive track can have no other track. | | |
|
|
22
|
+
| [`Alert`](../presentation/Presentation.d.ts) | A centred alert with a title, an optional message, up to three actions and an optional text field. | Alerts and confirmation dialogs start closed after a relaunch, so a destructive confirmation is never restored open. | alert; dialog; popup |
|
|
23
|
+
| [`AlertProps`](../presentation/Presentation.d.ts) | An alert's presentation binding, title, message, actions and optional text field. | | |
|
|
24
|
+
| [`AlertTextFieldProps`](../presentation/Presentation.d.ts) | The text field inside an alert: its label, controlled text, prompt and keyboard intent. | | |
|
|
25
|
+
| [`Animation`](../motion/animationValue.d.ts) | An opaque spring timing value for `withAnimation`. Use a named value or `Animation.spring`. | Other state and style changes do not animate. There is no null animation, easing curve, repeat, delay, completion callback or per-update timing; use one outer synchronous update. Bounce cannot be negative. | |
|
|
26
|
+
| [`AppCapability`](../app/definition.d.ts) | A capability the app declares so Satin sets up its runtime support: `push`, `badging` or `background-work`. | | |
|
|
27
|
+
| [`AppDefinition`](../app/definition.d.ts) | A validated app definition, returned by `defineApp`. Pass it to `runApp` and to the Vite plugin. | | |
|
|
28
|
+
| [`AppDefinitionInput`](../public/definition.d.ts) | What an app declares about itself: identity, install metadata and launch appearance. | | |
|
|
29
|
+
| [`AppIcon`](../app/definition.d.ts) | One generated app icon file: its URL, pixel sizes, image type and purpose. | | |
|
|
30
|
+
| [`AppOrientation`](../app/definition.d.ts) | An orientation that the app supports. | | |
|
|
31
|
+
| [`AsyncImage`](../image/Image.d.ts) | Loads an image from a URL. It keeps its placeholder if loading fails, never holds up navigation, and reports progress through `onPhaseChange`. | Remote images use the browser's HTTP cache. onPhaseChange reports loading state; it does not swap in other content. There is no Photos library access. | remote image; image URL |
|
|
32
|
+
| [`AsyncImagePhase`](../image/Image.d.ts) | The loading state an `AsyncImage` reports: `empty` while loading, then `success` with the image element or `failure` with the error. | | |
|
|
33
|
+
| [`AsyncImageProps`](../image/Image.d.ts) | An `ImageProps` whose source is a remote URL. | | |
|
|
34
|
+
| [`BuildInfo`](../app/buildInfo.d.ts) | The framework version, build id, build time and build kind baked into the running bundle. The build id is unique per build. | The build id is not a git revision or a service worker cache hash. Builds made without satinApp report "unavailable". What the server last served says nothing about which cached bundle is running. | |
|
|
35
|
+
| [`BuiltInButtonStyle`](../public/controlStyle.d.ts) | The built-in button styles, by their `buttonStyle` names. `automatic` picks one for the context. | | |
|
|
36
|
+
| [`BuiltInLabelStyle`](../public/controlStyle.d.ts) | The built-in label styles: the title, the icon or both. `automatic` picks for the context. | | |
|
|
37
|
+
| [`BuiltInToggleStyle`](../public/controlStyle.d.ts) | The built-in toggle styles: `switch` or `button`. `automatic` picks for the context. | | |
|
|
38
|
+
| [`Button`](../public/controls.d.ts) | A pressable control that adapts to where it is: a tinted row in a `List`, a glass button in a toolbar, otherwise the `buttonStyle` you choose. `role="destructive"` carries into every context. | Only the listed button styles exist. There are no circle or container-concentric borders, and plain and list-row buttons draw no border. A custom ButtonStyle draws the content; Satin keeps the press handling and accessibility. | button; tap |
|
|
39
|
+
| [`ButtonBorderShape`](../public/buttonBorderShape.d.ts) | The outline of a bordered button: `automatic`, `capsule`, or a rounded rectangle with a fixed corner radius in points. | | |
|
|
40
|
+
| [`ButtonProps`](../public/controls.d.ts) | Button's action, label and control properties. An `iconOnly` button needs an `aria-label`. | | |
|
|
41
|
+
| [`ButtonRole`](../public/controlStyle.d.ts) | A button's role. `destructive` draws it in red; `cancel` marks the action that backs out. | | |
|
|
42
|
+
| [`ButtonStyle`](../public/controlStyle.d.ts) | A custom look for `Button`. `makeBody` returns noninteractive content; Satin still owns the button's press handling and accessibility. | | |
|
|
43
|
+
| [`ButtonStyleConfiguration`](../public/controlStyle.d.ts) | What a custom `ButtonStyle` draws from: the label, the pressed state and the role, plus the shared control values. | | |
|
|
44
|
+
| [`Choice`](../list-form/ListForm.d.ts) | One option of a `Picker`. | Only the menu, navigationLink, inline and segmented styles exist. | |
|
|
45
|
+
| [`collection`](../data/database.d.ts) | Declares a collection of records keyed by one unique string field. The curried form, `collection<Note>()({ key, indexes })`, infers index names. | Data lives in IndexedDB on this device. The browser may evict it, and writes can fail. | |
|
|
46
|
+
| [`Collection`](../data/database.d.ts) | One collection of a database (`db.notes`). Once loaded, writes publish to memory at once, so `useQuery` sees them immediately; the returned promise settles after the durable commit. | | |
|
|
47
|
+
| [`CollectionDefinition`](../data/database.d.ts) | A collection's record type, key and indexes, made by `collection` for `defineDatabase`. | | |
|
|
48
|
+
| [`CollectionIndexes`](../data/database.d.ts) | A mapping from declared index names to record properties. | | |
|
|
49
|
+
| [`CollectionSchema`](../data/database.d.ts) | The named collections in a database declaration. | | |
|
|
50
|
+
| [`CollectionUpdateMethods`](../data/database.d.ts) | A collection's `update` method: a partial record to merge, or a function that returns the new record. | | |
|
|
51
|
+
| [`ColorPicker`](../controls/ColorPicker.d.ts) | A row with a colour well that opens the system colour picker: grid, spectrum, sliders, eyedropper and, with `supportsOpacity`, opacity. | The system picker is titled "Colors", not with the label. Output is sRGB hex; Display P3 choices are converted to sRGB. See controls.md. | color picker; color well |
|
|
52
|
+
| [`ColorPickerProps`](../controls/ColorPicker.d.ts) | ColorPicker's label and controlled colour. | | |
|
|
53
|
+
| [`ColorScheme`](../public/environment.d.ts) | A light or dark appearance. | | |
|
|
54
|
+
| [`ConfirmationDialog`](../presentation/Presentation.d.ts) | A titled set of actions, such as Delete and Cancel, shown next to the control that opened it. | Alerts and confirmation dialogs start closed after a relaunch, so a destructive confirmation is never restored open. | action sheet; delete confirmation |
|
|
55
|
+
| [`ConfirmationDialogProps`](../presentation/Presentation.d.ts) | A confirmation dialog's presentation binding, title, message, actions and optional anchor. | | |
|
|
56
|
+
| [`ContentAlignment`](../content/content.d.ts) | Where content sits inside a larger frame. Used by `frame` and `ZStack`. | | |
|
|
57
|
+
| [`ContentFrame`](../content/content.d.ts) | A fixed size or size bounds for a view, in points, and how its content aligns inside. `'infinity'` fills the available space. | | |
|
|
58
|
+
| [`ContentMargins`](../safe-area/modifiers.d.ts) | Sets content margins for every scroll view inside it. A `List` takes a horizontal margin as its layout margin. The innermost value for each edge wins. | placement="scrollIndicators" has no effect: Satin draws the scroll indicator in the screen frame. | content inset |
|
|
59
|
+
| [`ContentMarginsProps`](../safe-area/modifiers.d.ts) | Which edges get a margin, how much, and whether it applies to content or indicators. | | |
|
|
60
|
+
| [`ContentPadding`](../content/content.d.ts) | The `padding` prop. `true` adds the default 16 pt on every edge, a number pads every edge, and an object pads the edges it names. | | |
|
|
61
|
+
| [`ContentProps`](../content/content.d.ts) | The padding, frame and background props shared by text and stacks. Plain HTML attributes, `style` included, still apply. | | |
|
|
62
|
+
| [`ContentUnavailableView`](../public/controls.d.ts) | An empty state: an icon, a title, an optional description and optional action children. | Takes an explicit title, icon, description and actions; there is no built-in search variant. | empty state; no results |
|
|
63
|
+
| [`ContentUnavailableViewProps`](../public/controls.d.ts) | The empty state's title, optional description and icon (a tray by default). | | |
|
|
64
|
+
| [`ContextMenu`](../actions/RowActions.d.ts) | Opens a menu of actions when the user long-presses its content, with an optional custom `preview`. Rows in a `List` take a `contextMenu` prop instead. | Actions have accessible names, but they do not appear in the VoiceOver Actions rotor. | long press menu |
|
|
65
|
+
| [`ContextMenuConfiguration`](../actions/types.d.ts) | The `contextMenu` prop of a row: a list of actions, or actions with a custom `preview`. | | |
|
|
66
|
+
| [`ControlConfiguration`](../public/controlStyle.d.ts) | What every custom control style receives: enabled state, control size and tint. | | |
|
|
67
|
+
| [`ControlSize`](../public/controlStyle.d.ts) | A control's size, from `mini` to `extraLarge`. `regular` is the default. | | |
|
|
68
|
+
| [`ControlStyleProvider`](../public/controlStyle.d.ts) | Sets control defaults for a subtree through `buttonStyle`, `toggleStyle`, `labelStyle`, `controlSize`, `tint` and `disabled`. A control's own props win over the provider, except that a disabled ancestor cannot be re-enabled by a child. | Only the listed button styles exist. There are no circle or container-concentric borders, and plain and list-row buttons draw no border. A custom ButtonStyle draws the content; Satin keeps the press handling and accessibility. | |
|
|
69
|
+
| [`ControlStyleValues`](../public/controlStyle.d.ts) | The control environment a `ControlStyleProvider` sets for its subtree. | | |
|
|
70
|
+
| [`CoreSymbolName`](../symbols/catalogue.d.ts) | Every symbol name in the bundled catalogue. | | |
|
|
71
|
+
| [`cornerClipPath`](../shapes/corners.d.ts) | Returns a CSS `clip-path` for a shape at an explicit width and height. Radii are in points. | You size it yourself outside framework rows. It does not change a glass mask. Continuous corners follow the iOS 27 corner curve. | |
|
|
72
|
+
| [`CornerShape`](../shapes/corners.d.ts) | A shape for `cornerClipPath` and swipe action faces: a capsule, an ellipse, a rounded rectangle or a custom clip path. Choosing one overrides the framework's default shape. | | |
|
|
73
|
+
| [`DatabaseMigration`](../data/database.d.ts) | A schema migration. It runs inside one transaction and may be async. | | |
|
|
74
|
+
| [`DatabaseRecord`](../data/database.d.ts) | A stored record with named values. | | |
|
|
75
|
+
| [`DatePicker`](../controls/DatePicker.d.ts) | A row for picking a date, a time or both. Its grey value capsules open the system date or time picker. Use a civil string selection (`'2026-10-14'`) for a day that must stay the same day in every time zone, such as a due date; use a `Date` for a moment in time. | No graphical or wheel style. WebKit adds Reset and Done buttons to the system picker, centres it instead of anchoring it to the capsule, and does not grey out days outside the range. See controls.md. | date picker; time picker; calendar |
|
|
76
|
+
| [`DatePickerComponent`](../controls/DatePicker.d.ts) | A part of the value a `DatePicker` edits: the `date`, or the `hourAndMinute`. | | |
|
|
77
|
+
| [`DatePickerProps`](../controls/DatePicker.d.ts) | DatePicker's label, controlled selection, range and the components it edits. `selection` is a `Date`, or a civil string with no time zone: `'2026-10-14'` for a date, `'09:41'` for a time, `'2026-10-14T09:41'` for both. The callback returns the same kind. | | |
|
|
78
|
+
| [`DatePickerRange`](../controls/DatePicker.d.ts) | A DatePicker's selectable range. Omit a bound for a one-sided range (`start...` or `...end`). Bounds use the same kind of value as the selection. | | |
|
|
79
|
+
| [`DatePickerStyle`](../controls/DatePicker.d.ts) | How a `DatePicker` draws. Only the compact style exists; `automatic` is `compact`. | | |
|
|
80
|
+
| [`DefaultToolbarItem`](../public/toolbar.d.ts) | Places the screen's search field among its bottom toolbar items. The screen must be `searchable`. | Only kind="search". Without a ToolbarSpacer the next item is not merged into the search capsule. iPad keeps the drawer. | bottom search bar |
|
|
81
|
+
| [`DefaultToolbarItemProps`](../public/toolbar.d.ts) | Which system item to place, and where. Only `search` exists. | | |
|
|
82
|
+
| [`defineApp`](../public/definition.d.ts) | Declares app identity, install metadata and capabilities once. Pass the result to `runApp` and to the `@satinhq/kit/vite` plugin. Everything not given is defaulted and the whole definition is validated, so a bad id or icon fails at build time rather than after install. | One app root per page, for iPhone and iPad WebKit. There are no multiple windows. | app manifest; app config |
|
|
83
|
+
| [`defineDatabase`](../data/database.d.ts) | Opens the app's local database, stored in IndexedDB. Each collection becomes a property of the result. Bump `version` with a migration whenever the schema changes. Export and import are built in, so offer them to the user. | Data lives in IndexedDB on this device. The browser may evict it, and writes can fail. | local database; offline storage; IndexedDB |
|
|
84
|
+
| [`defineNamespace`](../motion/matchedGeometry.d.ts) | A namespace declared once at module scope, for views that share no parent component: a `MatchedTransitionSource` in one route and the screen it zooms into in another. Inside one component, use `useNamespace()`. | Pushed screens only; sheets and full-screen covers do not zoom. The source must be on screen, or the push slides. A downward dismiss must start within about 27 degrees of vertical. | |
|
|
85
|
+
| [`defineNavigation`](../public/structure.d.ts) | Declares the app's primary tabs or its single stack before anything renders, so every stack and tab id exists (and is typed) from the first frame. Pass the result to `runApp`; `TabView`, `Tab` and `NavigationStack` then render it. Components may freely wrap those views. | One app root per page, for iPhone and iPad WebKit. There are no multiple windows. | |
|
|
86
|
+
| [`defineRoutes`](../public/routes.d.ts) | Declares every destination once. The same schema types `useNavigation` and `NavigationLink`, validates restored paths and checks notification deep links, so a route id or param is never a free-form string. | Navigation does not use browser history. Route params must match the declared schema. | router; routes; deep links |
|
|
87
|
+
| [`defineWebAuthentication`](../web/authentication.d.ts) | Sets up an OAuth authorization-code sign-in with PKCE. The transaction is stored durably, so it survives a redirect or a suspended app. Your server redeems the code. | Needs a secure context, local storage, Web Locks, a dedicated uncached callback page and a server exchange. Bridge reads need a private transaction proof. Your server validates tokens and OpenID Connect. Completion in the background is not guaranteed. | OAuth; sign in; PKCE |
|
|
88
|
+
| [`Divider`](../content/content.d.ts) | A hairline across its parent stack's axis. It is decorative, so assistive technology skips it. | Default spacing and frame differences are listed in content.md. Props apply in a fixed order, not the order you write them. | separator; hairline |
|
|
89
|
+
| [`Edge`](../safe-area/context.d.ts) | A logical edge. `leading` and `trailing` follow the layout direction. | | |
|
|
90
|
+
| [`EdgeInsets`](../public/environment.d.ts) | Insets on each edge in points. `leading` and `trailing` follow the layout direction. | | |
|
|
91
|
+
| [`EdgeLengths`](../safe-area/context.d.ts) | Optional lengths per logical edge, in points. | | |
|
|
92
|
+
| [`EdgeSet`](../safe-area/modifiers.d.ts) | One edge group or a list of them. | | |
|
|
93
|
+
| [`EdgeSetMember`](../safe-area/modifiers.d.ts) | A logical edge, an axis pair or all edges. | | |
|
|
94
|
+
| [`EditButton`](../public/controls.d.ts) | Toggles the screen's edit mode. In a toolbar it reads Edit, then becomes a prominent checkmark (Done) while editing. | Rows are identified by their ForEach ids. Edit mode belongs to each screen and cannot be set from outside it. Outside edit mode, plain rows cannot be selected with the keyboard. | edit mode; Edit and Done |
|
|
95
|
+
| [`EditMode`](../list-form/editing.d.ts) | Whether a screen's lists show their editing controls: `active` or `inactive`. | | |
|
|
96
|
+
| [`ExportDocument`](../data/database.d.ts) | The JSON document `exportJSON` writes and `importJSON` reads. | | |
|
|
97
|
+
| [`FileImporter`](../public/filePickers.d.ts) | A button that opens the system file chooser and returns the chosen files. Cancelling keeps the current selection. | MIME types are hints, not validation. There is no photo library identifier and no lasting file access, and overlapping choosers cannot always be told apart. Not yet verified in an installed app. | file upload; document picker |
|
|
98
|
+
| [`FileImporterProps`](../public/filePickers.d.ts) | The importer's label, the selected files and the content types it accepts, as MIME types or extensions. | MIME types are hints, not validation. There is no photo library identifier and no lasting file access, and overlapping choosers cannot always be told apart. Not yet verified in an installed app. | |
|
|
99
|
+
| [`FixedGridItemOptions`](../content/content.d.ts) | A fixed track's size in points. | | |
|
|
100
|
+
| [`FlexibleGridItemOptions`](../content/content.d.ts) | Bounds for a flexible track; the minimum defaults to 10 points. | | |
|
|
101
|
+
| [`FocusChainField`](../text-input/focusChain.d.ts) | The parts of a field element that `useFocusChain` uses to move focus. | | |
|
|
102
|
+
| [`FontWeight`](../content/content.d.ts) | A font weight, from `ultraLight` to `black`. | | |
|
|
103
|
+
| [`ForEach`](../list-form/editing.d.ts) | Makes one row per element of `data`, identified by its `id` (or an `id` function). In a `List`, `onDelete` adds swipe-to-delete and the editing delete control; `onMove` adds the reorder handle. Both receive offsets into `data`; apply them with `removing` and `moving`. Put `ForEach` directly in a `List` or `Section`: the list reads it to know each row's identity. | ForEach must sit directly in a List or Section. Moving a selected group, two-finger selection and VoiceOver move actions are not available. | swipe to delete; reorder rows |
|
|
104
|
+
| [`ForEachProps`](../list-form/editing.d.ts) | The collection, how to identify each element, the row each element becomes and its editing actions. `id` may be omitted when the elements have an `id` field. | | |
|
|
105
|
+
| [`Form`](../public/controls.d.ts) | An inset grouped `List` for settings and data entry. Scrolling it dismisses the keyboard at once. | A ListRow is always one row: its children sit side by side. Use one ListRow per row. A numeric gap changes the space between sections; header and footer space stays. visible keeps the default background; it does not make a sheet opaque. | settings screen; form |
|
|
106
|
+
| [`FormProps`](../public/controls.d.ts) | The scroll, search and section options `Form` and `List` share. `style` is inline CSS. | | |
|
|
107
|
+
| [`FullScreenCover`](../public/presentation.d.ts) | An opaque presentation that slides up over the whole screen. It has no interactive dismissal; close it through its binding or `useDismiss()`. | Covers cannot be swiped away. They start closed after a relaunch. | full screen presentation; modal |
|
|
108
|
+
| [`FullScreenCoverProps`](../public/presentation.d.ts) | A full-screen cover's presentation binding and accessible title. | | |
|
|
109
|
+
| [`GeometryFrame`](../content/layout.d.ts) | A rectangle in points: origin `x` and `y` plus a size. | | |
|
|
110
|
+
| [`GeometryProxy`](../content/layout.d.ts) | What a `GeometryReader` passes to its children: its size and a way to read its frame. | | |
|
|
111
|
+
| [`GeometryReader`](../content/layout.d.ts) | Fills the space it is offered and calls its children with that size. Its content renders once the first measurement is in. | Inside a scroll view, give it a definite height. The proxy reports no safe-area insets. | measure size |
|
|
112
|
+
| [`GeometryReaderProps`](../content/layout.d.ts) | A `GeometryReader`'s render function, plus plain div attributes. | | |
|
|
113
|
+
| [`GeometrySize`](../content/layout.d.ts) | A width and height in points. | | |
|
|
114
|
+
| [`Glass`](../public/glassValue.d.ts) | The glass material for a `GlassEffect`. Start from `Glass.regular` or `Glass.clear` and refine it with a tint or `interactive()`; each call returns a new value. | If WebGPU fails for good, release builds fall back to a blur-and-tint material unless strict glass is on; development builds report the failure. | |
|
|
115
|
+
| [`GlassEffect`](../public/glass.d.ts) | Draws glass behind its content in the given shape, a capsule by default. Inside a `GlassEffectContainer`, effects with ids morph into one another. | If WebGPU fails for good, release builds fall back to a blur-and-tint material unless strict glass is on; development builds report the failure. | glass; refraction |
|
|
116
|
+
| [`GlassEffectContainer`](../glass/GlassEffect.d.ts) | Groups nearby glass effects so they render together and blend or morph into one another. `spacing`, 20 pt by default, sets how close effects must be to merge. | If WebGPU fails for good, release builds fall back to a blur-and-tint material unless strict glass is on; development builds report the failure. | glass morph; glass group |
|
|
117
|
+
| [`GlassEffectProps`](../public/glass.d.ts) | The glass material and shape, plus the namespace and id that let effects morph into each other. Plain div attributes also apply. | | |
|
|
118
|
+
| [`GlassError`](../glass/errors.d.ts) | One glass renderer failure: its code, message, the stage it happened in and when. | | |
|
|
119
|
+
| [`GlassErrorCode`](../glass/errors.d.ts) | Why the glass renderer failed, such as `gpu-unavailable` or `device-lost`. In a release build a failure can switch glass to the fallback material. | | |
|
|
120
|
+
| [`GlassShape`](../public/glass.d.ts) | The outline of a glass effect: `capsule`, `circle` or a rounded rectangle with a corner radius in points. | | |
|
|
121
|
+
| [`GlassTint`](../glass/regions.d.ts) | A glass tint as red, green, blue and alpha channels from 0 to 1. `Glass.tintRGBA` rejects values outside that range. | | |
|
|
122
|
+
| [`GridItem`](../content/content.d.ts) | Makes grid tracks for `LazyVGrid` and `LazyHGrid`: `fixed`, `flexible` or `adaptive`. Each call validates its options and throws a `RangeError` for bad bounds or spacing. | Every child renders at once; there is no virtualization. An adaptive track must be the only track, and there is no Grid or GridRow. | |
|
|
123
|
+
| [`GridItemOptions`](../content/content.d.ts) | Options every grid track takes. `spacing` is the gap after this track; `alignment` places content within each cell. | | |
|
|
124
|
+
| [`GridItemValue`](../content/content.d.ts) | A validated grid track. Make one with `GridItem.fixed`, `.flexible` or `.adaptive`. | | |
|
|
125
|
+
| [`HorizontalTextFieldProps`](../public/controls.d.ts) | Horizontal TextField's controlled text and keyboard intent. | | |
|
|
126
|
+
| [`HStack`](../content/content.d.ts) | Arranges its children in a row. Add a `Spacer` to push content to the edges. | Default spacing and frame differences are listed in content.md. Props apply in a fixed order, not the order you write them. | row; horizontal layout |
|
|
127
|
+
| [`HStackProps`](../content/content.d.ts) | HStack's vertical alignment and spacing in points. | | |
|
|
128
|
+
| [`IgnoresSafeArea`](../safe-area/modifiers.d.ts) | Lets content extend through the safe area on the chosen edges, for full-bleed backgrounds and media. The container edges and keyboard avoidance can be ignored separately. | Only a view at the start of the screen content extends upward. Content that does not scroll does not extend through the bottom edge. | full bleed; edge to edge |
|
|
129
|
+
| [`IgnoresSafeAreaProps`](../safe-area/modifiers.d.ts) | Which safe-area regions and edges the content ignores. | | |
|
|
130
|
+
| [`Image`](../image/Image.d.ts) | Shows a bundled or local image. It reserves its size so layout never jumps, and `priority` loads it ahead of other images. Use `alt=""` for decoration. | Remote images use the browser's HTTP cache. onPhaseChange reports loading state; it does not swap in other content. There is no Photos library access. | image; picture |
|
|
131
|
+
| [`ImageAsset`](../image/asset.d.ts) | A responsive image with its size, `srcSet` and a tiny placeholder. The Vite plugin produces one for each import ending in `?satin-image`. | | |
|
|
132
|
+
| [`ImageProps`](../image/Image.d.ts) | An image's source, required alt text and aspect-ratio content mode. | | |
|
|
133
|
+
| [`IndexesOfCollection`](../data/database.d.ts) | The index names declared by a collection. | | |
|
|
134
|
+
| [`JustUpdated`](../app/coldLaunchUpdate.d.ts) | The previous and current build identifiers after an app update. | | |
|
|
135
|
+
| [`KeyboardGeometry`](../keyboard/geometry.d.ts) | How much the keyboard covers, whether it shows, and the viewport size, in points. | | |
|
|
136
|
+
| [`KeyboardMetrics`](../public/keyboard.d.ts) | The keyboard's current geometry in points, plus the software keyboard height to plan for at this window size. | | |
|
|
137
|
+
| [`Label`](../public/Label.d.ts) | A title with an icon. In a toolbar a label with an icon shows the icon alone; a hidden title stays available to assistive technology. | Labels are not interactive, and a custom LabelStyle must return noninteractive content. | |
|
|
138
|
+
| [`LabeledContent`](../public/controls.d.ts) | A row with a label and a trailing value in secondary text. | Labels are not interactive, and a custom LabelStyle must return noninteractive content. | value row; detail row |
|
|
139
|
+
| [`LabeledContentProps`](../public/controls.d.ts) | The row's label and the trailing value it shows. | | |
|
|
140
|
+
| [`LabelProps`](../public/Label.d.ts) | A label's title (children) and its icon: a `symbol` name or any `icon` node. | | |
|
|
141
|
+
| [`LabelStyle`](../public/controlStyle.d.ts) | A custom arrangement of a label's title and icon. | | |
|
|
142
|
+
| [`LabelStyleConfiguration`](../public/controlStyle.d.ts) | What a custom `LabelStyle` draws from: the label's title and icon. | | |
|
|
143
|
+
| [`LaunchScreenSlot`](../app/launchScreen.d.ts) | The launch screen's icon and optional label. The inline environment paints it before application JavaScript loads, so both must be plain strings. | | |
|
|
144
|
+
| [`LayoutModifierProps`](../safe-area/modifiers.d.ts) | The children and plain div attributes every layout wrapper takes. | | |
|
|
145
|
+
| [`LazyHGrid`](../content/content.d.ts) | A grid with fixed rows that grows sideways. Every child renders at once; use `List` for long data. | Every child renders at once; there is no virtualization. An adaptive track must be the only track, and there is no Grid or GridRow. | horizontal grid |
|
|
146
|
+
| [`LazyHGridProps`](../content/content.d.ts) | The grid's rows and the spacing between columns. Each row sets the gap after itself. | | |
|
|
147
|
+
| [`LazyHStack`](../content/content.d.ts) | Lays out its children like `HStack`. Every child mounts at once and keeps its state. | Every child renders at once; there is no virtualization. | |
|
|
148
|
+
| [`LazyHStackProps`](../content/content.d.ts) | LazyHStack's layout props. Every child mounts eagerly; use List for long data. | | |
|
|
149
|
+
| [`LazyVGrid`](../content/content.d.ts) | A grid with fixed columns that grows downward. Every child renders at once; use `List` for long data. | Every child renders at once; there is no virtualization. An adaptive track must be the only track, and there is no Grid or GridRow. | grid; columns |
|
|
150
|
+
| [`LazyVGridProps`](../content/content.d.ts) | The grid's columns and the spacing between rows. Each column sets the gap after itself. | | |
|
|
151
|
+
| [`LazyVStack`](../content/content.d.ts) | Lays out its children like `VStack`. Every child mounts at once and keeps its state, so use `List` for long data. | Every child renders at once; there is no virtualization. | |
|
|
152
|
+
| [`LazyVStackProps`](../content/content.d.ts) | LazyVStack's layout props. Every child mounts eagerly; use List for long data. | | |
|
|
153
|
+
| [`LineLimit`](../public/controls.d.ts) | A number caps growth; a range also reserves its minimum number of lines. | | |
|
|
154
|
+
| [`Link`](../web/openURL.d.ts) | Opens a URL when pressed, like `useOpenURL`. A press that turns into a scroll does not open it. | You cannot force the external browser. A dispatched URL is not a loaded page. Cross-origin or blocked frames report unverified, and only same-origin frames can be reloaded or stopped. | link; open URL |
|
|
155
|
+
| [`LinkProps`](../web/openURL.d.ts) | The link's destination URL, its content and an optional result callback. | | |
|
|
156
|
+
| [`List`](../public/controls.d.ts) | A scrolling column of rows, inset grouped by default. Controls inside it render as rows. Its `id` keys scroll restoration, so keep it stable. With `selection`, rows from a `ForEach` become selectable; with an `EditButton` in the screen's toolbar, `ForEach`'s `onDelete` and `onMove` add the editing controls. | The refresh indicator holds a 60 pt inset while the action runs. A ListRow is always one row: its children sit side by side. Use one ListRow per row. A numeric gap changes the space between sections; header and footer space stays. visible keeps the default background; it does not make a sheet opaque. Rows are identified by their ForEach ids. Edit mode belongs to each screen and cannot be set from outside it. Outside edit mode, plain rows cannot be selected with the keyboard. | list; rows; pull to refresh; swipe actions |
|
|
157
|
+
| [`ListItemID`](../list-form/editing.d.ts) | A row's identity in `List` selection: the `ForEach` id. | | |
|
|
158
|
+
| [`ListProps`](../public/controls.d.ts) | A `List` takes a `Form`'s options, its `listStyle` and an optional `selection`. | A numeric gap changes the space between sections; header and footer space stays. visible keeps the default background; it does not make a sheet opaque. | |
|
|
159
|
+
| [`ListRow`](../list-form/ListForm.d.ts) | One row with custom content or per-row overrides. A ListRow is always one row. Several children share it side by side, laid out as an HStack would (centred, 8 pt apart, a NavigationLink filling the rest); each separate row needs its own ListRow. | A ListRow is always one row: its children sit side by side. Use one ListRow per row. Satin still owns row geometry. Do not use raw viewport or safe-area CSS in rows. ForEach must sit directly in a List or Section. Moving a selected group, two-finger selection and VoiceOver move actions are not available. Rows are identified by their ForEach ids. Edit mode belongs to each screen and cannot be set from outside it. Outside edit mode, plain rows cannot be selected with the keyboard. | swipe actions; row insets |
|
|
160
|
+
| [`ListRowProps`](../list-form/ListForm.d.ts) | One row's content and its overrides: insets in points, background, separator, swipe actions, context menu and editing opt-outs. | | |
|
|
161
|
+
| [`ListSelectionProps`](../public/controls.d.ts) | Row selection for a `List`. An optional id selects one row: tapping a row selects it. A `Set` selects many: while editing, rows show selection circles and taps toggle them. Rows are identified by their `ForEach` ids. | | |
|
|
162
|
+
| [`ListStyle`](../public/controls.d.ts) | How a `List` draws its rows and sections. `insetGrouped` is the default. | | |
|
|
163
|
+
| [`LocalReachabilityState`](../reachability/model.d.ts) | The reachability state of an app that needs no app server. Its status is always `local`. | | |
|
|
164
|
+
| [`MatchedTransitionSource`](../public/navigationTransition.d.ts) | Marks the view a zoom transition starts from and returns to. A push zooms only while its source is on screen; otherwise it slides as usual. | Pushed screens only; sheets and full-screen covers do not zoom. The source must be on screen, or the push slides. A downward dismiss must start within about 27 degrees of vertical. | zoom transition |
|
|
165
|
+
| [`MatchedTransitionSourceProps`](../public/navigationTransition.d.ts) | The source's id and namespace, and the one element the screen zooms out of. | | |
|
|
166
|
+
| [`MediaCommandResult`](../media/types.d.ts) | How a media command ended. `needs-user-activation` means WebKit wants a tap first. | | |
|
|
167
|
+
| [`MediaController`](../media/types.d.ts) | The audio player's commands: queue editing, transport, seek, repeat and shuffle. Queue commands resolve once the change is made; `play` and `seek` resolve once playback is seen to respond. | | |
|
|
168
|
+
| [`MediaPlayer`](../media/types.d.ts) | `useMediaPlayer`'s result: the commands and the live state. | Audio only, with no video player and no background playback beyond what WebKit allows. Playback depends on WebKit codec support and a server that serves byte ranges. | |
|
|
169
|
+
| [`MediaQueueEntry`](../media/types.d.ts) | One item in the audio queue: its source URL, media id and display metadata. Each occurrence has its own `entryId`, so a repeated song appears twice. | | |
|
|
170
|
+
| [`MediaQueueOptions`](../media/types.d.ts) | Where a replaced queue starts, and whether it plays. | | |
|
|
171
|
+
| [`MediaRepeat`](../media/types.d.ts) | The queue's repeat mode: `off`, `one` or `all`. | | |
|
|
172
|
+
| [`MediaSnapshot`](../media/types.d.ts) | Everything the player shows: the queue, the current entry, status, position and modes. | | |
|
|
173
|
+
| [`Menu`](../public/actions.d.ts) | A button that opens a menu of actions. In a toolbar a symbol label draws an icon button and a text label draws a capsule. | Actions have accessible names, but they do not appear in the VoiceOver Actions rotor. | dropdown menu; more button |
|
|
174
|
+
| [`MenuProps`](../public/actions.d.ts) | A menu's label and its actions. | | |
|
|
175
|
+
| [`MenuTriggerProps`](../glass/menuPresenter.d.ts) | The props a custom `Menu` trigger receives. Forward all of them to the element that opens the menu. | | |
|
|
176
|
+
| [`moving`](../list-form/offsets.d.ts) | Returns a new array: the elements at `fromOffsets` move, in their original order, to just before the element that was at `toOffset`. Pass it exactly what `ForEach`'s `onMove` reports. `toOffset` counts positions in the original array: moving the first of three rows below the second reports `toOffset` 2, not 1. Use `items.length` to move to the end. | Each returns a new array; store the result in state to update the rows. | reorder rows |
|
|
177
|
+
| [`NamespaceID`](../motion/matchedGeometry.d.ts) | A scope for matched-geometry ids. Two views match only if they share an id and a namespace. | | |
|
|
178
|
+
| [`Navigation`](../public/runtime.d.ts) | The actions `useNavigation` returns: `push`, `replace`, `pop`, `popToRoot` and `showAcknowledgements`, typed against the routes. | | |
|
|
179
|
+
| [`NavigationArguments`](../public/runtime.d.ts) | The typed parameter tuple accepted by push and replace. | | |
|
|
180
|
+
| [`NavigationBackButtonBehavior`](../navigation/types.d.ts) | Whether a pushed screen shows its back button. `automatic` shows it; `hidden` removes it. | | |
|
|
181
|
+
| [`NavigationDeclaration`](../public/structure.d.ts) | An app's primary navigation: either tabs, each owning a stack, or one stack. | | |
|
|
182
|
+
| [`NavigationLink`](../public/controls.d.ts) | Pushes a declared route. In a `List` it draws a disclosure row; elsewhere it is a plain pressable. | Navigation does not use browser history. Route params must match the declared schema. | push; disclosure row |
|
|
183
|
+
| [`NavigationLinkProps`](../public/controls.d.ts) | A destination route and its params (typed against the registered routes), plus the row's label and accessories. | | |
|
|
184
|
+
| [`NavigationSplitView`](../public/runtime.d.ts) | Shows the declared root as a sidebar and pushes into a retained detail column. At compact width it collapses to a plain stack. A `NavigationStack` never splits by itself. | It renders an existing declared stack; it takes no modal or ad hoc root. | sidebar and detail; split view |
|
|
185
|
+
| [`NavigationSplitViewProps`](../public/runtime.d.ts) | Selects which declared primary stack the split view renders; inside a `Tab`, its own. | | |
|
|
186
|
+
| [`NavigationStack`](../public/runtime.d.ts) | Renders an in-memory navigation stack. A primary stack's root comes from `defineNavigation`, never from JSX. Inside a `Sheet`, `modal` with a `root` makes a stack the sheet owns. | Navigation does not use browser history. Route params must match the declared schema. | navigation stack; push; back button |
|
|
187
|
+
| [`NavigationStackProps`](../public/runtime.d.ts) | Either a declared primary stack (optionally naming its tab), or a modal stack inside a `Sheet` that declares its own root. | | |
|
|
188
|
+
| [`NavigationTransition`](../public/navigationTransition.d.ts) | How a pushed screen arrives and leaves: `automatic` (a slide) or `zoom`. Give one to `Screen`'s `navigationTransition`. | Pushed screens only; sheets and full-screen covers do not zoom. The source must be on screen, or the push slides. A downward dismiss must start within about 27 degrees of vertical. | zoom transition |
|
|
189
|
+
| [`newId`](../data/database.d.ts) | A new unique record id that sorts by creation time. | Data lives in IndexedDB on this device. The browser may evict it, and writes can fail. | |
|
|
190
|
+
| [`NotificationAuthorizationStatus`](../public/environment.d.ts) | Notification permission, independent of subscription setup and token rotation. | | |
|
|
191
|
+
| [`NotificationPermissionExplainer`](../public/environment.d.ts) | Explains what notifications are for before the user asks for them; its button requests authorization from that gesture. | Permission requires the app to be installed on the Home Screen. Local scheduled notifications are unavailable; schedule them from your own authenticated server. | notification permission prompt |
|
|
192
|
+
| [`NotificationPermissionExplainerProps`](../public/environment.d.ts) | The notification permission explanation's title and app-authored content. | | |
|
|
193
|
+
| [`OfflinePresentationProps`](../reachability/react.d.ts) | What the offline view shows: why the server is unavailable, how it is presented, and the recheck and back actions. | | |
|
|
194
|
+
| [`OpenURLAction`](../web/openURL.d.ts) | The function `useOpenURL` returns. It opens a URL and reports the result at once. | | |
|
|
195
|
+
| [`OpenURLOptions`](../web/openURL.d.ts) | How to open a web page. `prefersInApp` is a preference; the browser decides how the page is presented. | | |
|
|
196
|
+
| [`OpenURLResult`](../web/openURL.d.ts) | What happened to an open request: `handled` in the app, `dispatched` to the browser, or `unavailable` with a reason. `dispatched` does not mean the page loaded. | | |
|
|
197
|
+
| [`OrientationFallback`](../app/definition.d.ts) | What the app shows when the device is in an orientation it does not support: a rotation prompt, a letterboxed layout, a responsive layout, or nothing. | | |
|
|
198
|
+
| [`Overlay`](../safe-area/Overlay.d.ts) | Layers `content` over its children without changing their frame. Inside a `SafeAreaInset`, the overlay keeps to the reduced safe area and moves with the keyboard, like the composer. | Only views can be overlaid; there is no shape or style overlay. | |
|
|
199
|
+
| [`OverlayProps`](../safe-area/Overlay.d.ts) | The layered `content` and its alignment. The children set the frame. | | |
|
|
200
|
+
| [`param`](../push/schema.d.ts) | Route parameter types: `string`, `int`, `number` (finite), `boolean` and `enum`, each with `.optional()`. The same schema validates navigation, restoration and notification deep links. | Navigation does not use browser history. Route params must match the declared schema. | |
|
|
201
|
+
| [`Parameter`](../push/schema.d.ts) | One route parameter's validator, made by `param`. | | |
|
|
202
|
+
| [`ParameterSchema`](../push/schema.d.ts) | A route's parameters by name. | | |
|
|
203
|
+
| [`PasteButton`](../public/deviceActions.d.ts) | A button that pastes plain text from the clipboard when pressed. It never reads the clipboard before the press. The browser may ask the user to confirm. | Plain text only. Dismissal and denial look the same. WebKit may show an extra Paste confirmation. Not yet verified in an installed app. | paste; clipboard |
|
|
204
|
+
| [`PasteButtonProps`](../public/deviceActions.d.ts) | The button content and the callbacks that receive the pasted text or the error. | Plain text only. Dismissal and denial look the same. WebKit may show an extra Paste confirmation. Not yet verified in an installed app. | |
|
|
205
|
+
| [`PhotosPicker`](../public/filePickers.d.ts) | A button that opens the system photo chooser and returns one photo or video as a `File`. | MIME types are hints, not validation. There is no photo library identifier and no lasting file access, and overlapping choosers cannot always be told apart. Not yet verified in an installed app. | photo picker; image upload |
|
|
206
|
+
| [`PhotosPickerProps`](../public/filePickers.d.ts) | The picker's label, the selected file and the kind of media it accepts. | MIME types are hints, not validation. There is no photo library identifier and no lasting file access, and overlapping choosers cannot always be told apart. Not yet verified in an installed app. | |
|
|
207
|
+
| [`Picker`](../public/controls.d.ts) | Chooses one option. `menu` (the default) opens a menu from the row, `navigationLink` pushes a list of options, `inline` lists them in place and `segmented` draws a segmented control. An option can carry a `symbol` (or `icon`) and a `color`. Icons draw in colour in an inline or navigationLink list, in the label colour inside the open menu, and not at all when segmented. | Only the menu, navigationLink, inline and segmented styles exist. | dropdown; select; segmented control |
|
|
208
|
+
| [`PickerProps`](../public/controls.d.ts) | Picker's options, controlled value and `pickerStyle`. | | |
|
|
209
|
+
| [`preferredColorScheme`](../app/appearance.d.ts) | Forces the whole app into `light` or `dark`. `system` or null follows the system again. The override lasts until the page reloads, so store the user's choice with `useAppStorage` and apply it at launch. | The override covers the whole app, presentations included; one view or sheet cannot differ. Persist the choice with useAppStorage and apply it at launch. | dark mode; light mode |
|
|
210
|
+
| [`PreferredColorScheme`](../app/appearanceStore.d.ts) | An appearance override for the whole app: `light`, `dark`, or `system` (or null) to follow the system. | The override covers the whole app, presentations included; one view or sheet cannot differ. Persist the choice with useAppStorage and apply it at launch. | |
|
|
211
|
+
| [`PresentationDetent`](../presentation/model.d.ts) | A height a sheet can rest at: `medium`, `large`, a fixed `height` in points or a `fraction` of the available height. | | |
|
|
212
|
+
| [`PresentationProps`](../presentation/Presentation.d.ts) | The presentation binding, accessible title and dismissal callback shared by presentations. | | |
|
|
213
|
+
| [`Pressable`](../press/Pressable.d.ts) | A plain tap target with no button chrome. It dims while pressed, and a touch that turns into a scroll does not fire `onPress`. Use it for custom tappable content. | An icon-only Pressable needs an aria-label. | |
|
|
214
|
+
| [`PressableOwnedHandlers`](../press/Pressable.d.ts) | The DOM event handlers `Pressable` owns. Use `onPress` and `onPressStateChange` instead. | | |
|
|
215
|
+
| [`PressableProps`](../press/Pressable.d.ts) | A pressable's `onPress` action, content and press feedback. An `iconOnly` pressable needs an `aria-label`. | | |
|
|
216
|
+
| [`PressState`](../press/stateMachine.d.ts) | Whether a press is `idle`, held down (`pressed`) or cancelled (`deactivated`). | | |
|
|
217
|
+
| [`ProgressView`](../controls/ProgressView.d.ts) | A spinning activity indicator, or a linear bar showing `value` out of `total` (1 by default). | Circular progress always spins; it does not show a value. Indeterminate linear progress draws an empty track. See controls.md. | spinner; activity indicator; progress bar; loading |
|
|
218
|
+
| [`ProgressViewProps`](../controls/ProgressView.d.ts) | ProgressView's optional label and progress; without `value` it is indeterminate. | | |
|
|
219
|
+
| [`ProgressViewStyle`](../controls/ProgressView.d.ts) | How a `ProgressView` draws: `linear`, `circular` or `automatic`, which is linear with a value and circular without. | | |
|
|
220
|
+
| [`Query`](../data/database.d.ts) | An immutable query over a collection: `index`, `keyRange`, `reverse`, `limit` and `filter` each return a new query. `useQuery` hands one to its configure callback. | Data lives in IndexedDB on this device. The browser may evict it, and writes can fail. | |
|
|
221
|
+
| [`ReachabilityPresentation`](../reachability/model.d.ts) | The connectivity presentation currently shown to the user. | | |
|
|
222
|
+
| [`ReachabilityProbeConfig`](../reachability/model.d.ts) | The endpoint and deadlines used to probe the app server. | | |
|
|
223
|
+
| [`ReachabilityRoutePolicy`](../reachability/model.d.ts) | Whether a destination remains usable without the app server. | | |
|
|
224
|
+
| [`ReachabilityState`](../reachability/model.d.ts) | The full reachability state: local for apps without a server, or the server probe state. | | |
|
|
225
|
+
| [`ReachabilityStateStatus`](../reachability/model.d.ts) | The server probe result, including an unknown initial state. | | |
|
|
226
|
+
| [`ReachabilityStatus`](../reachability/model.d.ts) | Whether the app server answered: `reachable`, `server-unreachable` or `device-offline`. | | |
|
|
227
|
+
| [`ReachabilitySurface`](../reachability/model.d.ts) | How Satin shows a failed probe: a `banner`, a `full-screen` offline view, or `none`. | | |
|
|
228
|
+
| [`RecordOfCollection`](../data/database.d.ts) | The record type stored by a collection declaration. | | |
|
|
229
|
+
| [`Register`](../public/routes.d.ts) | Augment once in the app to type bare `NavigationLink`, `NavigationStack`, `TabView` and `useNavigation` without generics. | | |
|
|
230
|
+
| [`RegisteredNavigation`](../public/structure.d.ts) | The navigation declared through `Register`, which types bare `TabView`, `Tab` and `NavigationStack`; `never` when the app has not registered one. | | |
|
|
231
|
+
| [`RegisteredRoutes`](../public/routes.d.ts) | The routes declared through `Register`; an empty route set when the app has not registered. | | |
|
|
232
|
+
| [`removing`](../list-form/offsets.d.ts) | Returns a new array without the elements at `offsets`. Pass it exactly what `ForEach`'s `onDelete` reports. | Each returns a new array; store the result in state to update the rows. | delete rows |
|
|
233
|
+
| [`route`](../public/routes.d.ts) | Binds a screen component to its parameter schema and static chrome. Declare the params first, then type the component with `RouteParameters<typeof params>`; this order avoids inference cycles. | Navigation does not use browser history. Route params must match the declared schema. | |
|
|
234
|
+
| [`RouteDefinition`](../public/routes.d.ts) | A screen bound to its parameter schema; made by `route`, collected by `defineRoutes`. | | |
|
|
235
|
+
| [`RouteOptions`](../public/routes.d.ts) | A destination's static chrome: what its bar shows from the first frame of the push. `Screen` overrides any of these once the screen has its data. | | |
|
|
236
|
+
| [`RouteParameters`](../push/schema.d.ts) | The props a route component receives for a parameter schema; optional params are optional. | | |
|
|
237
|
+
| [`RouteParameterValue`](../push/schema.d.ts) | The value described by a route parameter declaration. | | |
|
|
238
|
+
| [`RouteProps`](../public/routes.d.ts) | The params of one route, as its component receives them. | | |
|
|
239
|
+
| [`Routes`](../public/routes.d.ts) | Every destination of an app, made by `defineRoutes`. | | |
|
|
240
|
+
| [`RowActionsProps`](../actions/types.d.ts) | Row swipe actions and context-menu commands. | | |
|
|
241
|
+
| [`RowIcon`](../list-form/ListForm.d.ts) | A Settings-style icon: a white symbol on a rounded colour tile, for a row's leading edge. | Labels are not interactive, and a custom LabelStyle must return noninteractive content. | settings icon |
|
|
242
|
+
| [`RowIconProps`](../list-form/ListForm.d.ts) | The symbol and its tile colour: a system colour name or any CSS colour. | | |
|
|
243
|
+
| [`RowInteractionProps`](../public/controls.d.ts) | The `swipeActions` and `contextMenu` props of a row in a `List`. | | |
|
|
244
|
+
| [`RowLabel`](../public/controls.d.ts) | A row title with a secondary `detail` line under it. The framework owns its layout. | Labels are not interactive, and a custom LabelStyle must return noninteractive content. | |
|
|
245
|
+
| [`RowLabelProps`](../public/controls.d.ts) | A row title and its secondary line. | | |
|
|
246
|
+
| [`runApp`](../public/runtime.d.ts) | Mounts the app into `#root`. Satin creates every primary stack and restores the scene and its launch route before React's first commit, then owns navigation, restoration, notifications and the app shell. Call it once. `Content` replaces the default root, usually to add app-wide providers; it renders `TabView` or `NavigationStack` itself. Without it Satin renders the declaration directly. | One app root per page, for iPhone and iPad WebKit. There are no multiple windows. | mount app; entry point |
|
|
247
|
+
| [`RunAppConfiguration`](../public/runtime.d.ts) | The app, routes, navigation and optional root content mounted by runApp. | | |
|
|
248
|
+
| [`RunAppOptions`](../public/runtime.d.ts) | App-wide runtime options for `runApp`. Every one is optional. | | |
|
|
249
|
+
| [`SafeAreaBar`](../safe-area/modifiers.d.ts) | A bar on the top or bottom edge that content scrolls under. It is a `SafeAreaInset` with no spacing and its own scroll-edge blur. | The bar uses a CSS backdrop blur, not the navigation bar edge effect, and does not extend the navigation bar. | bottom bar; top bar |
|
|
250
|
+
| [`SafeAreaBarProps`](../safe-area/modifiers.d.ts) | A `SafeAreaInset` limited to the top or bottom edge, with no spacing. | | |
|
|
251
|
+
| [`SafeAreaInset`](../safe-area/SafeAreaInset.d.ts) | Pins an accessory, such as a composer or a filter bar, to one edge of its content. The accessory takes room from the content's safe area on its edge; a scroll view inside still spans the whole frame and scrolls under it. At the bottom, content scrolls under the accessory and its last item stays clear of it. When the accessory resizes, the scroll inset changes in the same frame (through `--satin-inset-accessory-height`), so a composer that grows by a line keeps the newest message in view. | A top inset under a large title stays at the expanded title edge while the title collapses. On an installed iPhone the status bar area is a flat fill (see top-edge-limitation.md). | safe area; accessory; composer bar |
|
|
252
|
+
| [`SafeAreaInsetEdge`](../safe-area/SafeAreaInset.d.ts) | The edge a `SafeAreaInset` accessory sits on. `leading` and `trailing` follow the layout direction. | | |
|
|
253
|
+
| [`SafeAreaInsetProps`](../safe-area/SafeAreaInset.d.ts) | The edge, the accessory (`content`) and its spacing; `children` is the content it insets. | | |
|
|
254
|
+
| [`SafeAreaPadding`](../safe-area/modifiers.d.ts) | Grows the safe area of the content inside it. Scroll views keep their frame and inset their content; other content is padded. Nested padding adds up. | On a scroll view, bottom padding is a spacer at the end of the content. Nested padding adds up. | |
|
|
255
|
+
| [`SafeAreaPaddingProps`](../safe-area/modifiers.d.ts) | Which edges to pad, and by how much. | | |
|
|
256
|
+
| [`ScenePhase`](../public/environment.d.ts) | Whether the app is in the foreground with focus (`active`), without focus (`inactive`) or hidden (`background`). | | |
|
|
257
|
+
| [`Screen`](../public/Screen.d.ts) | A route component's navigation chrome: title, toolbar, search and related options, declared by the screen that owns them. Use it when the title or toolbar depends on the screen's data; static chrome belongs in the route's options. | Title fonts and sizes follow the system; there is no custom title style. Navigation bar minimization is opt-in; never keeps the bar expanded. | navigation bar; title; toolbar |
|
|
258
|
+
| [`ScreenLifecycle`](../navigation/types.d.ts) | Whether a screen is covered by another, and the phase of its current transition. | | |
|
|
259
|
+
| [`ScreenLifecycleCallbacks`](../navigation/types.d.ts) | The `appear` and `disappear` callbacks for `useScreenLifecycle`. | | |
|
|
260
|
+
| [`ScreenProps`](../public/Screen.d.ts) | A screen's own chrome, overriding its route's static options. | | |
|
|
261
|
+
| [`ScrollAnchor`](../scroll/position.d.ts) | Where a scroll target lines up in the viewport: `top`, `center` or `bottom`. | | |
|
|
262
|
+
| [`ScrollAxis`](../scroll/types.d.ts) | The axis along which a scroll surface accepts scrolling. | | |
|
|
263
|
+
| [`ScrollDismissesKeyboardMode`](../keyboard/adapter.d.ts) | When scrolling dismisses the keyboard: `never`; `immediately`, as soon as a drag on the surface starts; or `interactively`, when a drag reaches the keyboard. WebKit's keyboard cannot follow the finger, so it then slides away on its own curve and the bottom inset follows it. | | |
|
|
264
|
+
| [`ScrollEdge`](../scroll/edgePolicy.d.ts) | A logical edge of a scroll view. | | |
|
|
265
|
+
| [`ScrollEdgeEffectHidden`](../scroll/edgePolicy.d.ts) | Whether to hide scroll edge material, optionally for specific edges. | The hard style throws an unsupported error. Only the top edge draws material; other edges draw none. | |
|
|
266
|
+
| [`ScrollEdgeEffectStyle`](../scroll/edgePolicy.d.ts) | The material under bars at a scroll view's edge: `soft`, `hard` or `automatic`. | The hard style throws an unsupported error. Only the top edge draws material; other edges draw none. | |
|
|
267
|
+
| [`ScrollEdgeEffectStyleSelection`](../scroll/edgePolicy.d.ts) | The scroll edge treatment and the edges to which it applies. | | |
|
|
268
|
+
| [`ScrollEdgeSelection`](../scroll/edgePolicy.d.ts) | One or more scroll edges, or all edges. | The hard style throws an unsupported error. Only the top edge draws material; other edges draw none. | |
|
|
269
|
+
| [`ScrollOffset`](../scroll/types.d.ts) | The scroll position in points along the physical x and y axes. | | |
|
|
270
|
+
| [`ScrollPositionBinding`](../scroll/position.d.ts) | A controlled scroll position: the id of the target in view, its anchor and the callback that receives changes. | | |
|
|
271
|
+
| [`ScrollPositionOptions`](../scroll/position.d.ts) | The scroll view's position options: where it starts, whether it keeps visible content in place, a controlled position and a geometry callback. | | |
|
|
272
|
+
| [`ScrollTarget`](../scroll/ScrollTarget.d.ts) | Marks content a vertical `ScrollView` can scroll to by `id`. | Scroll targets, pull to refresh and scroll geometry work only on the vertical axis. | |
|
|
273
|
+
| [`ScrollToTopOptions`](../scroll/types.d.ts) | Options for `scrollToTop`: whether to animate. | | |
|
|
274
|
+
| [`ScrollView`](../public/scroll.d.ts) | A scrolling region, vertical by default. Inside a screen its `id` keys scroll restoration, so keep it stable. `refreshable` adds pull to refresh, and a ref handle scrolls to a `ScrollTarget`. | The refresh indicator holds a 60 pt inset while the action runs. Scroll targets, pull to refresh and scroll geometry work only on the vertical axis. The hard style throws an unsupported error. Only the top edge draws material; other edges draw none. | scrolling; pull to refresh; scroll to |
|
|
275
|
+
| [`ScrollViewHandle`](../public/scroll.d.ts) | A scroll view's ref handle: its current offset, `scrollTo` a target and `scrollToTop`. | | |
|
|
276
|
+
| [`ScrollViewProps`](../public/scroll.d.ts) | A scroll view's id, axis, refresh action, keyboard dismissal, edge material and position options. Targets, refresh and geometry work only on the vertical axis. | | |
|
|
277
|
+
| [`Searchable`](../search/searchable.d.ts) | A search field for a screen or list: its controlled text, prompt, placement, scopes and suggestions. The bar owns the field: its capsule, magnifier, clear button, close button, scope bar and collapse on scroll. In the bottom toolbar, the presented field rides above the keyboard with a close button, and the bar and title give way. Place `<DefaultToolbarItem kind="search" placement="bottomBar" />` to put it beside other bottom bar items. | The bottom toolbar field does not animate in yet and draws no scope bar, so scoped fields stay in the drawer. A search tab draws no bottom field; role="search" is metadata only. Do not build your own search bar. | search bar; search field |
|
|
278
|
+
| [`SearchFieldPlacement`](../search/searchable.d.ts) | Where the search field goes. On iPhone, `'automatic'` uses the bottom toolbar outside a `TabView` when the screen has no other bottom bar items or scopes; otherwise it uses a drawer that scrolls away with the content. On iPad, automatic search belongs to the trailing navigation toolbar, or below the sidebar toolbar in a split view. Explicit toolbar placement stays trailing on iPad, including narrow windows. | The bottom toolbar field does not animate in yet and draws no scope bar, so scoped fields stay in the drawer. A search tab draws no bottom field; role="search" is metadata only. Do not build your own search bar. | |
|
|
279
|
+
| [`SearchScopes`](../search/searchable.d.ts) | A controlled scope bar, shown under the search field while search is presented. | The bottom toolbar field does not animate in yet and draws no scope bar, so scoped fields stay in the drawer. A search tab draws no bottom field; role="search" is metadata only. Do not build your own search bar. | |
|
|
280
|
+
| [`SearchSuggestion`](../search/searchable.d.ts) | A suggestion shown under the search field. Choosing one replaces the search text; it does not submit. | The bottom toolbar field does not animate in yet and draws no scope bar, so scoped fields stay in the drawer. A search tab draws no bottom field; role="search" is metadata only. Do not build your own search bar. | |
|
|
281
|
+
| [`Section`](../list-form/ListForm.d.ts) | A group of rows in a `List` or `Form`, with an optional header and footer. | A ListRow is always one row: its children sit side by side. Use one ListRow per row. | |
|
|
282
|
+
| [`SectionProps`](../list-form/ListForm.d.ts) | A section's rows and its optional header and footer. | | |
|
|
283
|
+
| [`SecureField`](../public/controls.d.ts) | Password entry through secure system input. In a `List` or `Form` it becomes the row. | Password manager support is limited to autofill. | password field |
|
|
284
|
+
| [`SecureFieldProps`](../public/controls.d.ts) | SecureField's controlled text, label and prompt. | | |
|
|
285
|
+
| [`Selectable`](../root/SatinRoot.d.ts) | Lets the user select and copy the text inside it. App chrome turns text selection off everywhere else, so wrap user-authored content such as notes or messages. | Zoomable is the only region that zooms; the page itself never does. There is no general gesture composition. | text selection; copy text |
|
|
286
|
+
| [`SelectableProps`](../root/SatinRoot.d.ts) | The wrapped content and plain div attributes. | | |
|
|
287
|
+
| [`semanticColor`](../public/colors.d.ts) | Returns a semantic colour, such as `label` or `systemGroupedBackground`, as a CSS colour that follows light and dark appearance. It also resolves inside portals. | Values match iOS 27 at normal contrast. Increased contrast and Display P3 are not supported. Semantic label colours and layered secondary or tertiary text can differ slightly from iOS. | |
|
|
288
|
+
| [`SemanticColorName`](../public/colors.d.ts) | The names of the iOS semantic colours for text, fills, backgrounds, separators and tint (`label`, `secondarySystemBackground`, …). | | |
|
|
289
|
+
| [`SensoryButton`](../haptics/SensoryButton.d.ts) | A tap target that plays the system selection tick where the browser supports it. There is no other way to trigger haptics. Use plain content only: links, buttons and other form controls cannot be nested. | Only selection or false. Keyboard and assistive activation may not tick. | haptics; vibration |
|
|
290
|
+
| [`SensoryButtonProps`](../haptics/SensoryButton.d.ts) | A tap target's action, content and the feedback it plays. | | |
|
|
291
|
+
| [`SensoryFeedback`](../haptics/SensoryButton.d.ts) | The feedback a `SensoryButton` plays. Only `selection`, the switch tick, exists. | | |
|
|
292
|
+
| [`ServerReachabilityConfig`](../reachability/model.d.ts) | The server probe and presentation policy for an app that requires connectivity. | | |
|
|
293
|
+
| [`ServerReachabilityState`](../reachability/model.d.ts) | The last server probe, retry and connectivity presentation state. | | |
|
|
294
|
+
| [`ShareLink`](../public/deviceActions.d.ts) | A button that opens the system share sheet. Prepare file bytes before rendering, because the sheet must open during the press. | No drag and drop or file provider integration. Completion means the system took the share, not that anyone received it; AbortError also covers having no suitable target. Not yet verified in an installed app. | share sheet; share button |
|
|
295
|
+
| [`ShareLinkProps`](../public/deviceActions.d.ts) | The text, URL or files to share, the button content and the completion and error callbacks. | No drag and drop or file provider integration. Completion means the system took the share, not that anyone received it; AbortError also covers having no suitable target. Not yet verified in an installed app. | |
|
|
296
|
+
| [`Sheet`](../public/presentation.d.ts) | A card that slides up over the current screen and can rest at several heights. It can host its own `NavigationStack modal`. Keep `isPresented` in plain React state: presentations start closed after a relaunch. | Sheets start closed after a relaunch. Persist drafts separately, never the presentation flag. | sheet; modal presentation; bottom sheet |
|
|
297
|
+
| [`SheetProps`](../public/presentation.d.ts) | A sheet's presentation binding, title, detents and drag behaviour. Supplying `selection` requires `onSelectionChange`. | | |
|
|
298
|
+
| [`Slider`](../public/controls.d.ts) | Drags a controlled number between `min` and `max`, continuously or in steps. In a `List` or `Form` it fills its own 60 pt row. | No minimum or maximum value labels and no custom tick marks. The label is for accessibility only, and only the thumb can be dragged. | slider; range input |
|
|
299
|
+
| [`SliderProps`](../public/controls.d.ts) | Slider's controlled value, range, step and accessibility label. | | |
|
|
300
|
+
| [`Spacer`](../content/content.d.ts) | Takes up the free space along its parent stack's axis. | Default spacing and frame differences are listed in content.md. Props apply in a fixed order, not the order you write them. | flexible space |
|
|
301
|
+
| [`SpacerProps`](../content/content.d.ts) | Spacer's minimum length in points. | | |
|
|
302
|
+
| [`SpringOptions`](../motion/animationValue.d.ts) | A spring's duration in milliseconds and its bounce, for `Animation.spring`. | Other state and style changes do not animate. There is no null animation, easing curve, repeat, delay, completion callback or per-update timing; use one outer synchronous update. Bounce cannot be negative. | |
|
|
303
|
+
| [`StackDeclaration`](../public/structure.d.ts) | A primary stack: its root route and, when that route requires them, the root's params. | | |
|
|
304
|
+
| [`Stepper`](../public/controls.d.ts) | Increments or decrements a controlled number within its bounds. It draws a row in a `List` and the bare control elsewhere. | Controlled only: pass value and onChange. | stepper; plus and minus buttons |
|
|
305
|
+
| [`StepperProps`](../public/controls.d.ts) | Stepper's controlled value, bounds and step. | | |
|
|
306
|
+
| [`storageQuota`](../public/storage.d.ts) | The app's storage quota: `estimate()` reports usage, and `requestPersistence()` asks WebKit not to evict the app's data. Request persistence after the user saves something meaningful. | Data lives in IndexedDB on this device. The browser may evict it, and writes can fail. | |
|
|
307
|
+
| [`StringPropertyKey`](../data/database.d.ts) | The property keys whose values are strings. | | |
|
|
308
|
+
| [`SubmitLabel`](../text-input/kinds.d.ts) | The return key's title: `done`, `go`, `next`, `search` or `send`. | | |
|
|
309
|
+
| [`SwipeAction`](../actions/types.d.ts) | An entry in a row's swipe actions: any menu entry, or a swipe command that shows only a symbol. | | |
|
|
310
|
+
| [`SwipeActionItem`](../actions/types.d.ts) | A swipe action command. It may drop its visible label if it has a symbol or icon and an `accessibilityLabel`. | | |
|
|
311
|
+
| [`SwipeActions`](../actions/types.d.ts) | The `swipeActions` prop of a row: actions for one edge, or a list with one entry per edge. | | swipe actions; swipe to delete |
|
|
312
|
+
| [`SwipeActionsConfiguration`](../actions/types.d.ts) | The swipe actions on one row edge, `trailing` by default. A full swipe runs the first action unless `allowsFullSwipe` is false. | | |
|
|
313
|
+
| [`SymbolGlyph`](../symbols/types.d.ts) | A symbol's artwork: filled SVG paths on a 56-unit grid, with optional layers for hierarchical and palette rendering, and its provenance. No font, HTML or external resource. | | |
|
|
314
|
+
| [`SymbolImage`](../symbols/Symbol.d.ts) | Draws a named vector symbol that sizes with the surrounding font and takes its colour. A `.fill` variant is chosen automatically where the context calls for it, such as a selected tab. | The bundled symbols are Framework7 Icons 5.0.5 (MIT) plus clean-room glyphs drawn for Satin, not Apple SF Symbols. Keep their copyright and license notices. Provider glyphs need their own provenance. Only shipped or registered names draw. | icon; glyph |
|
|
315
|
+
| [`SymbolImageProps`](../symbols/Symbol.d.ts) | The symbol's name, symbol properties and an optional accessible label. | | |
|
|
316
|
+
| [`SymbolName`](../symbols/Symbol.d.ts) | A symbol name, such as `'plus'` or `'trash.fill'`. The bundled names autocomplete; any string is accepted for glyphs added through `SymbolProvider`. | | |
|
|
317
|
+
| [`SymbolProvider`](../symbols/Symbol.d.ts) | Adds or replaces symbol glyphs for everything inside it. Paths must be original, or redistributable with their provenance recorded. | The bundled symbols are Framework7 Icons 5.0.5 (MIT) plus clean-room glyphs drawn for Satin, not Apple SF Symbols. Keep their copyright and license notices. Provider glyphs need their own provenance. Only shipped or registered names draw. | |
|
|
318
|
+
| [`SymbolRenderingMode`](../symbols/types.d.ts) | How a symbol's layers are coloured: `monochrome` in one colour, `hierarchical` in shades of one colour, or `palette` with a colour per layer. | | |
|
|
319
|
+
| [`SymbolScale`](../symbols/types.d.ts) | A symbol's size relative to the text around it: `small`, `medium` or `large`. | | |
|
|
320
|
+
| [`SymbolSource`](../symbols/types.d.ts) | Glyphs by symbol name, for `SymbolProvider`. | | |
|
|
321
|
+
| [`SymbolWeight`](../symbols/types.d.ts) | The weight a symbol is drawn at. It uses the same names as font weights. | | |
|
|
322
|
+
| [`systemColor`](../public/colors.d.ts) | Returns a system colour as a CSS colour that follows light and dark appearance. | Values match iOS 27 at normal contrast. Increased contrast and Display P3 are not supported. Semantic label colours and layered secondary or tertiary text can differ slightly from iOS. | |
|
|
323
|
+
| [`SystemColorName`](../public/colors.d.ts) | The names of the iOS system colours. Each has a light and a dark value. Plain CSS colours work too. | | |
|
|
324
|
+
| [`Tab`](../public/runtime.d.ts) | Renders one declared tab inside a `TabView`. Its id, label and root stack come from `defineNavigation`. | Only the declared tab styles exist. Desktop browsers are not supported. | |
|
|
325
|
+
| [`TabDeclaration`](../public/structure.d.ts) | One tab in `defineNavigation`: its id, label, symbol or icon, and the root of its stack. | | |
|
|
326
|
+
| [`TabId`](../public/structure.d.ts) | The union of a navigation declaration's tab ids. | | |
|
|
327
|
+
| [`TabProps`](../public/runtime.d.ts) | Names the declared tab to render. | | |
|
|
328
|
+
| [`TabSection`](../tabs/TabSection.d.ts) | Groups `Tab`s under a collapsible header in the `TabView` sidebar. It adds no navigator of its own. | Only sidebarOnly placement exists: no automatic sections in the top bar, no tab customization and no section header actions. Expansion lasts while the TabView is mounted. With no sidebar, a sidebar-only selection shows the first primary tab. | |
|
|
329
|
+
| [`TabSectionProps`](../tabs/TabSection.d.ts) | A sidebar group's title, optional id and placement, and its `Tab` children. | | |
|
|
330
|
+
| [`TabView`](../public/runtime.d.ts) | Renders the tabs from `defineNavigation`. Each tab keeps its own stack, and the selected tab is restored with the scene. Pass `selection` and `onSelectionChange` to control it; a controlled tab press only requests the change. | Only the declared tab styles exist. Desktop browsers are not supported. There is no minimize behavior or placement hook yet, and the collapse into the tab bar is incomplete. | tab bar; tabs |
|
|
331
|
+
| [`TabViewProps`](../public/runtime.d.ts) | TabView's selection binding and bar behaviour; its tabs come from `defineNavigation`. | | |
|
|
332
|
+
| [`TaskAction`](../tasks/useTask.d.ts) | The work `useTask` runs: pass `signal` to fetches and publish state through `commit`. | | |
|
|
333
|
+
| [`TaskCommit`](../tasks/useTask.d.ts) | Publish synchronous state updates only while this invocation is current. | | |
|
|
334
|
+
| [`TaskOptions`](../tasks/useTask.d.ts) | Options for `useTask`. A change of `id` cancels the current run and starts a new one. | | |
|
|
335
|
+
| [`TaskRunner`](../tasks/useTask.d.ts) | Cancels the current run and starts the task again; resolves when that run ends. | | |
|
|
336
|
+
| [`Text`](../content/content.d.ts) | Inline text in a system text style. Nested Text inherits its enclosing style unless it sets its own. A `lineLimit` truncates with an ellipsis. | Default spacing and frame differences are listed in content.md. Props apply in a fixed order, not the order you write them. | text; font; typography |
|
|
337
|
+
| [`TextEditor`](../public/controls.d.ts) | Multiline text entry. In a `List` or `Form` it becomes the row; elsewhere it shows three lines by default. | Text layout cannot be customized. | multiline text; text area |
|
|
338
|
+
| [`TextEditorProps`](../public/controls.d.ts) | TextEditor's controlled text, label and prompt. | | |
|
|
339
|
+
| [`TextField`](../public/controls.d.ts) | Single-line controlled text with a label, an optional `prompt` and keyboard intent from `kind`. In a `List` or `Form` it becomes the row; elsewhere it draws a standalone field. `axis="vertical"` grows with its content. | textFieldStyle="plain" removes the field chrome. WebKit owns the system keyboard, and text layout cannot be customized. | text field; text input |
|
|
340
|
+
| [`TextFieldKind`](../text-input/kinds.d.ts) | What a field holds, setting its keyboard, autofill and autocorrection together. | | |
|
|
341
|
+
| [`TextFieldProps`](../public/controls.d.ts) | A single-line field, or with `axis="vertical"` a field that grows to its `lineLimit`. | | |
|
|
342
|
+
| [`TextFieldStyle`](../public/controls.d.ts) | How a text field draws. `automatic` adapts to its container; `plain` draws no field chrome. | | |
|
|
343
|
+
| [`TextProps`](../content/content.d.ts) | Text's font, weight, design, line limit and alignment. | | |
|
|
344
|
+
| [`TextStyle`](../content/content.d.ts) | The system text styles, sized as iOS draws them at the default text size. | | |
|
|
345
|
+
| [`TitleDisplayMode`](../navigation/types.d.ts) | How a screen title is drawn: `inline` in the bar, `large` below it, `inlineLarge` large inside the bar row, or `none`. | | |
|
|
346
|
+
| [`Toggle`](../public/controls.d.ts) | A controlled on/off value. It draws a switch row in a `List` or `Form` and a bare switch elsewhere. `toggleStyle` can make it a button or a custom `ToggleStyle`. | Only the switch and button styles are built in; anything else needs a custom ToggleStyle. | switch; checkbox |
|
|
347
|
+
| [`ToggleProps`](../public/controls.d.ts) | Toggle's controlled value, label and control properties. | | |
|
|
348
|
+
| [`ToggleStyle`](../public/controlStyle.d.ts) | A custom look for `Toggle`. Satin applies the declared `semantics` (switch, checkbox or button) to the element it owns; `makeBody` draws the appearance. | | |
|
|
349
|
+
| [`ToggleStyleConfiguration`](../public/controlStyle.d.ts) | What a custom `ToggleStyle` draws from: the label, the on state and the pressed state, plus the shared control values. | | |
|
|
350
|
+
| [`ToolbarItem`](../public/toolbar.d.ts) | Places one item in the navigation bar or the bottom toolbar. Adjacent actions share a glass capsule; a `ToolbarSpacer` separates groups. | Only the placements in ToolbarItemProps exist. | toolbar button; bar button |
|
|
351
|
+
| [`ToolbarItemGroup`](../public/toolbar.d.ts) | Groups several items under one placement. They render as consecutive `ToolbarItem`s and share one glass capsule. | Only the placements in ToolbarItemProps exist. | |
|
|
352
|
+
| [`ToolbarItemProps`](../public/toolbar.d.ts) | A toolbar item's placement and content. `automatic` lets the bar choose; `bottomBar` puts it in the bottom toolbar. | | |
|
|
353
|
+
| [`ToolbarMinimizationBehavior`](../navigation/toolbarMinimization.d.ts) | When the navigation bar minimizes: `onScrollDown`, `onScrollUp` or `never`. | Navigation bar minimization is opt-in; never keeps the bar expanded. | |
|
|
354
|
+
| [`ToolbarMinimizationRestoration`](../navigation/toolbarMinimization.d.ts) | What brings back a minimized bar: `automatic`, or only reaching the scroll edge (`atScrollEdge`). | Navigation bar minimization is opt-in; never keeps the bar expanded. | |
|
|
355
|
+
| [`ToolbarMinimizationSafeAreaAdjustment`](../navigation/toolbarMinimization.d.ts) | Whether the content inset shrinks when the bar minimizes. | Navigation bar minimization is opt-in; never keeps the bar expanded. | |
|
|
356
|
+
| [`ToolbarSpacer`](../public/toolbar.d.ts) | Splits toolbar items into separate glass capsules. Consecutive items of one placement share one capsule; a spacer between them splits it. Place it directly in `toolbar`, next to the items. | Only the placements in ToolbarItemProps exist. | |
|
|
357
|
+
| [`ToolbarSpacerProps`](../public/toolbar.d.ts) | The spacer's sizing and placement. | | |
|
|
358
|
+
| [`TransactionCollection`](../data/database.d.ts) | A collection as seen inside `db.transaction`: its writes commit together or not at all. | | |
|
|
359
|
+
| [`TransactionCollections`](../data/database.d.ts) | The typed collection handles available inside a database transaction. | | |
|
|
360
|
+
| [`TransitionPhase`](../navigation/types.d.ts) | Where a screen is in a navigation transition: `entering`, `exiting` or `settled`. | | |
|
|
361
|
+
| [`UpdateActivation`](../app/definition.d.ts) | When a downloaded update may apply: `cold-launch`, the default, or `cold-launch-or-explicit`, which also lets it apply on request, as the development menu does. | | |
|
|
362
|
+
| [`useAppStorage`](../public/environment.d.ts) | A small preference kept in local storage across launches. Every component that reads the same key sees the same value. Values must be JSON-serializable. | Stored in the origin's local storage on this device. It does not sync across devices. | persistent settings; preferences; local storage |
|
|
363
|
+
| [`useAppUpdate`](../public/environment.d.ts) | Reports whether this launch applied an app update: `justUpdated` holds the previous and current build ids after an update, null otherwise (and until launch settles). Release updates apply at launch, before first input after foregrounding, or at a clean suspension. | Preview builds may reload on update. Release, the default, applies updates only at safe moments. | |
|
|
364
|
+
| [`useBuildInfo`](../app/buildInfo.d.ts) | Returns the build that is running, even offline. The values are written by `satinApp` at build time; it never asks the server for the latest deployment. | The build id is not a git revision or a service worker cache hash. Builds made without satinApp report "unavailable". What the server last served says nothing about which cached bundle is running. | |
|
|
365
|
+
| [`useColorScheme`](../public/environment.d.ts) | The appearance Satin is drawing right now, `light` or `dark`. | Increased contrast is not reported. Size classes are compact or regular only. | dark mode |
|
|
366
|
+
| [`useDismiss`](../presentation/dismiss.d.ts) | Closes the screen or presentation that contains the caller. In a pushed screen it pops that screen; at the root of a Sheet or FullScreenCover it dismisses the presentation, even when interactive dismissal is disabled. Elsewhere it does nothing. | Covers cannot be swiped away. They start closed after a relaunch. | close; go back |
|
|
367
|
+
| [`useEditMode`](../list-form/editing.d.ts) | Returns this screen's edit mode and a setter. `EditButton` toggles the same value, so a toolbar or bottom bar can follow it. | Rows are identified by their ForEach ids. Edit mode belongs to each screen and cannot be set from outside it. Outside edit mode, plain rows cannot be selected with the keyboard. | |
|
|
368
|
+
| [`useFocusChain`](../text-input/focusChain.d.ts) | Moves focus through a form's fields in `order`. The return key goes to the next field and the last one dismisses the keyboard. Disabled and unmounted fields are skipped. Spread `field(key)` onto each field. | Focus moves only through the fields you register. A custom keyboard is not possible. | next field; return key |
|
|
369
|
+
| [`useGlassErrors`](../public/environment.d.ts) | Every glass renderer error so far, re-rendering when one is added. For diagnostics screens; `runApp`'s `onGlassError` is the way to report them. | Diagnostics show what failed; they do not prove the app looks or behaves right on a device. | |
|
|
370
|
+
| [`useHorizontalSizeClass`](../public/environment.d.ts) | The horizontal size class: `compact` or `regular`. Inside a presentation it is the presentation's own class; elsewhere, the window's. | Increased contrast is not reported. Size classes are compact or regular only. | iPad layout; responsive layout |
|
|
371
|
+
| [`useKeyboardMetrics`](../public/keyboard.d.ts) | Returns the keyboard's geometry in points and re-renders as it changes. `expectedHeight` is the keyboard height to plan for before the keyboard has shown. | It reads the keyboard; it cannot change the keyboard or add a separate keyboard lifecycle. | keyboard height |
|
|
372
|
+
| [`useMediaPlayer`](../media/react.d.ts) | Returns the app's audio player: its commands and its live state. The system's Lock Screen media controls drive the same player. Audio only; there is no video playback. | Audio only, with no video player and no background playback beyond what WebKit allows. Playback depends on WebKit codec support and a server that serves byte ranges. | audio player; music player |
|
|
373
|
+
| [`useNamespace`](../motion/matchedGeometry.d.ts) | Returns a namespace that stays the same for the life of the component. Pass it to `MatchedGeometryEffect` and `MatchedTransitionSource`. | Matches frames only, around the centre. Corner radius scales with the frame during the flight instead of staying fixed. A non-source view does not follow its source outside an animation. Glass does not travel with a removed view. | |
|
|
374
|
+
| [`useNavigation`](../public/runtime.d.ts) | Returns the enclosing stack's navigation actions, typed against the registered routes. A wrong route id or a missing param is a compile error. | Navigation does not use browser history. Route params must match the declared schema. | |
|
|
375
|
+
| [`useNotifications`](../public/environment.d.ts) | The app's notification permission and badge. Call `requestAuthorization` from a user gesture, after explaining why (see `NotificationPermissionExplainer`). Without `runApp`'s `notifications` option the status is `unsupported`. | Permission requires the app to be installed on the Home Screen. Local scheduled notifications are unavailable; schedule them from your own authenticated server. | push notifications; badge |
|
|
376
|
+
| [`useOpenURL`](../web/openURL.d.ts) | Returns a function that opens a URL from an action. App URLs that match a registered route navigate inside the app; other URLs go to the browser. | You cannot force the external browser. A dispatched URL is not a loaded page. Cross-origin or blocked frames report unverified, and only same-origin frames can be reloaded or stopped. | open link; open URL |
|
|
377
|
+
| [`useQuery`](../data/database.d.ts) | Reads a collection's records as `{ data, loading, error }` and keeps them live. Local writes show up synchronously, before they persist. | Data lives in IndexedDB on this device. The browser may evict it, and writes can fail. | live query |
|
|
378
|
+
| [`useReachability`](../reachability/react.d.ts) | The app server's status and the offline view currently shown, with `fetch` and `recheck` helpers that feed the status. | It cannot promise that a request will succeed. | offline; network status |
|
|
379
|
+
| [`useRecord`](../data/database.d.ts) | One record by key, kept live; `data` is undefined while loading and when no record exists. | Data lives in IndexedDB on this device. The browser may evict it, and writes can fail. | |
|
|
380
|
+
| [`UserInterfaceSizeClass`](../public/environment.d.ts) | How much room there is along one axis: `compact` or `regular`. | | |
|
|
381
|
+
| [`useSafeAreaInsets`](../public/environment.d.ts) | The live safe-area insets in CSS pixels. Use them instead of `env(safe-area-inset-*)`. | A top inset under a large title stays at the expanded title edge while the title collapses. On an installed iPhone the status bar area is a flat fill (see top-edge-limitation.md). | safe area insets; notch; home indicator |
|
|
382
|
+
| [`useScaledMetric`](../content/scaledMetric.d.ts) | Scales a dimension with the user's text size, relative to a text style (`body` by default). Use it for spacing or icon sizes that should grow with text. | largeTitle and callout scale by fixed fallbacks, because WebKit has no system font keyword for them. | text size scaling |
|
|
383
|
+
| [`useScenePhase`](../public/environment.d.ts) | Whether the app is in use: `active` in the foreground with focus, `inactive` without focus, `background` when hidden. | The browser may stop running the app while it is suspended. A screen's lifecycle is separate from the app's foreground state. | foreground; background; app state |
|
|
384
|
+
| [`useSceneStorage`](../public/environment.d.ts) | State kept with the current navigation entry, so a draft survives a relaunch. Each pushed entry owns its own value. Values must be JSON-serializable. Keep saved records in a collection, not here. | Do not store presentation visibility here. A checkpoint can be lost if the browser evicts storage or the process crashes. | restorable screen state; draft |
|
|
385
|
+
| [`useScreenLifecycle`](../navigation/navigationContext.d.ts) | Runs `appear` and `disappear` callbacks as the screen is shown and covered or removed, and returns whether it is covered and its transition phase. | The browser may stop running the app while it is suspended. A screen's lifecycle is separate from the app's foreground state. | |
|
|
386
|
+
| [`useTask`](../tasks/useTask.d.ts) | Runs async work while its screen is showing. It cancels the run when the screen is covered, its tab is hidden or the component unmounts, and starts again when it shows. Pass `signal` to `fetch` and publish results through `commit`. An error the task throws reaches the nearest error boundary. The returned runner cancels and replaces the current run. | Cancellation is cooperative: state set outside commit cannot be stopped. The work runs in the foreground only; it is not a Web Worker or a background scheduler. | cancellable task; data loading |
|
|
387
|
+
| [`useUnsavedChanges`](../root/runtimeContext.d.ts) | Tells Satin the app has unsaved work while `unsaved` is true, so a pending app update waits instead of reloading over it. Edits in text fields are detected without this hook. | It only delays app updates; it does not stop the user from dismissing a sheet. | unsaved changes |
|
|
388
|
+
| [`useVerticalSizeClass`](../public/environment.d.ts) | The vertical size class: `compact` or `regular`. Inside a presentation it is the presentation's own class; elsewhere, the window's. | Increased contrast is not reported. Size classes are compact or regular only. | |
|
|
389
|
+
| [`useWebAuthentication`](../web/useWebAuthentication.d.ts) | Returns a sign-in flow's current state and re-renders when it changes. It checks for a finished sign-in on launch and when the app returns to the foreground. | Needs a secure context, local storage, Web Locks, a dedicated uncached callback page and a server exchange. Bridge reads need a private transaction proof. Your server validates tokens and OpenID Connect. Completion in the background is not guaranteed. | |
|
|
390
|
+
| [`useWebFrame`](../web/WebView.d.ts) | Makes a controller to pass to a `WebView`, for reading its state and reloading or stopping it. | You cannot force the external browser. A dispatched URL is not a loaded page. Cross-origin or blocked frames report unverified, and only same-origin frames can be reloaded or stopped. | |
|
|
391
|
+
| [`VerticalScrollGeometry`](../scroll/position.d.ts) | Vertical scroll geometry: the current viewport and content offset in points. | | |
|
|
392
|
+
| [`VerticalTextFieldProps`](../public/controls.d.ts) | Vertical TextField's controlled text, growth limits and keyboard intent. | | |
|
|
393
|
+
| [`ViewportFitPolicy`](../app/viewportValue.d.ts) | How the app fits the screen around the notch and home indicator. `adaptive` picks a fit per device before the app renders. | | |
|
|
394
|
+
| [`ViewThatFits`](../content/layout.d.ts) | Shows the first child whose natural size fits the space, or the last child when none fits. It measures again when the space or a child resizes. | Give it a definite height when it checks the vertical axis. Every child stays mounted: hidden children are inert and pause Satin tasks and activity indicators, but their own effects keep running. | responsive layout; fallback layout |
|
|
395
|
+
| [`ViewThatFitsAxis`](../content/layout.d.ts) | The axes a `ViewThatFits` candidate must fit along. | | |
|
|
396
|
+
| [`ViewThatFitsProps`](../content/layout.d.ts) | The axes to check, `both` by default, plus plain div attributes. | | |
|
|
397
|
+
| [`Visibility`](../navigation/types.d.ts) | Whether the navigation bar shows. A hidden bar reserves no row. | | |
|
|
398
|
+
| [`VStack`](../content/content.d.ts) | Arranges its children in a column. Set `spacing` where it matters: wrappers and custom controls do not pass their children's preferred spacing up to the stack. | Default spacing and frame differences are listed in content.md. Props apply in a fixed order, not the order you write them. | column; vertical layout |
|
|
399
|
+
| [`VStackProps`](../content/content.d.ts) | VStack's horizontal alignment and spacing in points. | | |
|
|
400
|
+
| [`WebAuthentication`](../web/authentication.d.ts) | A sign-in flow made by `defineWebAuthentication`: prepare, start, complete and resume it, or subscribe to its state. | | |
|
|
401
|
+
| [`WebAuthenticationCallbackResult`](../web/authentication.d.ts) | The outcome of `complete` on the callback page: the URL to return to, or why it was rejected. | | |
|
|
402
|
+
| [`WebAuthenticationConfiguration`](../web/authentication.d.ts) | The OAuth provider, client, callback and app URLs for `defineWebAuthentication`, and the `exchange` function that finishes sign-in on your server. | | |
|
|
403
|
+
| [`WebAuthenticationExchange`](../web/authentication.d.ts) | What `exchange` receives: the authorization code, the PKCE verifier and the values your server needs to redeem and check it. | | |
|
|
404
|
+
| [`WebAuthenticationRequest`](../web/authentication.d.ts) | A prepared sign-in. Call `start` from the user's press. | | |
|
|
405
|
+
| [`WebAuthenticationStartResult`](../web/authentication.d.ts) | Whether `start` opened the provider in a popup or a redirect, or why it could not. | | |
|
|
406
|
+
| [`WebAuthenticationState`](../web/authentication.d.ts) | Where a sign-in stands, from `idle` through `pending` and `completing` to a final status. | | |
|
|
407
|
+
| [`WebFrameActionResult`](../web/WebView.d.ts) | Whether a `reload` or `stop` request was sent to the frame, or why not. | | |
|
|
408
|
+
| [`WebFrameController`](../web/WebView.d.ts) | Reads a `WebView`'s state and sends it `reload` and `stop`. Only same-origin frames expose their current page or accept these commands. | | |
|
|
409
|
+
| [`WebFrameState`](../web/WebView.d.ts) | The embedded page's load state. A cross-origin page reports `unverified`, because its contents cannot be read. | | |
|
|
410
|
+
| [`WebView`](../web/WebView.d.ts) | Embeds a web page in a sandboxed frame. The browser decides whether the page may be framed, and the frame's storage is partitioned from the app's. | You cannot force the external browser. A dispatched URL is not a loaded page. Cross-origin or blocked frames report unverified, and only same-origin frames can be reloaded or stopped. | iframe; embedded web page |
|
|
411
|
+
| [`WebViewProps`](../web/WebView.d.ts) | The page URL, its accessible title, an optional controller, and what the page may run. Scripts and forms are off by default. | | |
|
|
412
|
+
| [`withAnimation`](../motion/matchedGeometry.d.ts) | Applies the state changes in `update`, then animates the `MatchedGeometryEffect` views they move, insert or remove. Call it from an event handler. Keyed List rows also move to their new positions. Other views take their new layout at once. Returns the callback result and passes errors through. Only synchronous updates take part, and nested calls join the outer one. | Other state and style changes do not animate. There is no null animation, easing curve, repeat, delay, completion callback or per-update timing; use one outer synchronous update. Bounce cannot be negative. | animated state update |
|
|
413
|
+
| [`WriteFailure`](../data/write-store.d.ts) | A durable write that failed after it was published to memory, reported to `db.onError`. | | |
|
|
414
|
+
| [`Zoomable`](../zoom/Zoomable.d.ts) | A region the user can pinch to zoom and pan, such as a photo or a map. The + and - keys zoom about the centre and 0 resets. Give it an accessible label. | Zoomable is the only region that zooms; the page itself never does. There is no general gesture composition. | pinch to zoom |
|
|
415
|
+
| [`ZoomableProps`](../zoom/Zoomable.d.ts) | The maximum zoom (4 by default) and a scale callback. Satin owns the pointer handlers. | | |
|
|
416
|
+
| [`ZoomTransitionOptions`](../public/navigationTransition.d.ts) | The source identity and namespace for `NavigationTransition.zoom`. | | |
|
|
417
|
+
| [`ZStack`](../content/content.d.ts) | Layers its children in one cell, later children on top. Assistive technology reads them in source order. | Default spacing and frame differences are listed in content.md. Props apply in a fixed order, not the order you write them. | layers; overlay |
|
|
418
|
+
| [`ZStackProps`](../content/content.d.ts) | How ZStack aligns its layers. | | |
|
|
417
419
|
|
|
418
420
|
## diagnostics API
|
|
419
421
|
|
|
420
422
|
Module: `@satinhq/kit/diagnostics`
|
|
421
423
|
|
|
424
|
+
Readers for installation and appearance records, for an optional diagnostics screen.
|
|
425
|
+
|
|
422
426
|
| Satin export | Behavior | Limits | Also known as |
|
|
423
427
|
| --- | --- | --- | --- |
|
|
424
|
-
| [`AppearanceEvent`](../app/appearanceStore.d.ts) |
|
|
425
|
-
| [`InstallationDiagnostics`](../app/InstallationDiagnostics.d.ts) |
|
|
426
|
-
| [`InstallationDiagnosticsProps`](../app/InstallationDiagnostics.d.ts) | The app scope whose installation receipts are shown. |
|
|
427
|
-
| [`InstallationFailure`](../app/installationFailure.d.ts) |
|
|
428
|
-
| [`readAppearanceDiagnostics`](../app/appearance.d.ts) |
|
|
429
|
-
| [`readInstallationFailure`](../app/installationFailure.d.ts) | Reads the recorded installation failure for
|
|
428
|
+
| [`AppearanceEvent`](../app/appearanceStore.d.ts) | One entry in the appearance diagnostics log: what happened and the appearance seen then. | | |
|
|
429
|
+
| [`InstallationDiagnostics`](../app/InstallationDiagnostics.d.ts) | Shows the app's installation receipts, for an optional diagnostics screen in Settings. Pass the app's scope. | | |
|
|
430
|
+
| [`InstallationDiagnosticsProps`](../app/InstallationDiagnostics.d.ts) | The app scope whose installation receipts are shown. | | |
|
|
431
|
+
| [`InstallationFailure`](../app/installationFailure.d.ts) | An installation failure recorded before the app launched: the build, the URL, the reason and whether the network failed. | | |
|
|
432
|
+
| [`readAppearanceDiagnostics`](../app/appearance.d.ts) | Returns a short log of appearance changes and lifecycle events, for diagnosing appearance after a resume. | | |
|
|
433
|
+
| [`readInstallationFailure`](../app/installationFailure.d.ts) | Reads the last recorded installation failure for an app scope, or null when there is none. | | |
|
|
430
434
|
|
|
431
435
|
## install API
|
|
432
436
|
|
|
433
437
|
Module: `@satinhq/kit/install`
|
|
434
438
|
|
|
439
|
+
Building blocks for a custom install page. They work only on the install page that `satinApp` builds.
|
|
440
|
+
|
|
435
441
|
| Satin export | Behavior | Limits | Also known as |
|
|
436
442
|
| --- | --- | --- | --- |
|
|
437
|
-
| [`copyInstallLink`](../app/installContext.d.ts) | Copies the install page's address. Never throws: a refusal is reported with the address. |
|
|
438
|
-
| [`CopyLinkResult`](../app/installContext.d.ts) |
|
|
439
|
-
| [`InstallApp`](../app/installContext.d.ts) |
|
|
440
|
-
| [`InstallBrowser`](../app/installContext.d.ts) |
|
|
441
|
-
| [`InstallContext`](../app/installContext.d.ts) |
|
|
442
|
-
| [`InstallDevice`](../app/installContext.d.ts) |
|
|
443
|
-
| [`InstallSteps`](../app/InstallComponents.d.ts) | The three steps
|
|
444
|
-
| [`InstallTip`](../app/InstallComponents.d.ts) | The tip at Safari's real control ("Page Menu, then Share" or "Share"), in Satin's glass. Shown only in Safari 27 on an iPhone or iPad, where the control's place was measured; renders nothing anywhere else. Its glass takes the page's background colour. |
|
|
445
|
-
| [`readInstallContext`](../app/installContext.d.ts) |
|
|
446
|
-
| [`useInstallContext`](../app/InstallComponents.d.ts) |
|
|
443
|
+
| [`copyInstallLink`](../app/installContext.d.ts) | Copies the install page's address. Never throws: a refusal is reported with the address. | | |
|
|
444
|
+
| [`CopyLinkResult`](../app/installContext.d.ts) | Whether `copyInstallLink` copied the address, and the address itself. | | |
|
|
445
|
+
| [`InstallApp`](../app/installContext.d.ts) | The app being installed: its name, icon, tint and install page address. | | |
|
|
446
|
+
| [`InstallBrowser`](../app/installContext.d.ts) | The browser the install page is open in. `in-app` is a browser inside another app, which cannot add to the Home Screen. | | |
|
|
447
|
+
| [`InstallContext`](../app/installContext.d.ts) | What a custom install page knows about where it is open: device, browser, Safari version, standalone mode and the app. A Safari tab cannot tell whether the app is already on the Home Screen. | | |
|
|
448
|
+
| [`InstallDevice`](../app/installContext.d.ts) | The device the install page is open on: `iphone`, `ipad` or `other`. | | |
|
|
449
|
+
| [`InstallSteps`](../app/InstallComponents.d.ts) | The three install steps for this device, browser and Safari layout, worded as on Satin's own install page. | | |
|
|
450
|
+
| [`InstallTip`](../app/InstallComponents.d.ts) | The tip at Safari's real control ("Page Menu, then Share" or "Share"), in Satin's glass. Shown only in Safari 27 on an iPhone or iPad, where the control's place was measured; renders nothing anywhere else. Its glass takes the page's background colour. | | |
|
|
451
|
+
| [`readInstallContext`](../app/installContext.d.ts) | Reads the install context from the browser. It throws outside the install page that `satinApp` builds. | | |
|
|
452
|
+
| [`useInstallContext`](../app/InstallComponents.d.ts) | Returns the install context, read once when the page opens. It throws outside the install page. | | |
|
|
447
453
|
|
|
448
454
|
## internal API
|
|
449
455
|
|
|
450
456
|
Module: `@satinhq/kit/internal`
|
|
451
457
|
|
|
458
|
+
Framework internals for Satin tooling and tests. App code must not import them; app lint rejects this module, and it changes without notice.
|
|
459
|
+
|
|
452
460
|
| Satin export | Behavior | Limits | Also known as |
|
|
453
461
|
| --- | --- | --- | --- |
|
|
454
|
-
| [`Action`](../actions/types.d.ts) |
|
|
455
|
-
| [`ActionItem`](../actions/types.d.ts) | A
|
|
456
|
-
| [`Alert`](../presentation/Presentation.d.ts) |
|
|
457
|
-
| [`AlertProps`](../presentation/Presentation.d.ts) | An alert's presentation binding, message
|
|
458
|
-
| [`AnyScreenDefinition`](../navigation/types.d.ts) |
|
|
459
|
-
| [`AppDefinition`](../app/definition.d.ts) |
|
|
460
|
-
| [`AppDeploymentInput`](../app/definition.d.ts) | Resolved app deployment fields, including local or server connectivity. |
|
|
461
|
-
| [`Appearance`](../glass/lens/theme.d.ts) |
|
|
462
|
-
| [`AppearanceEvent`](../app/appearanceStore.d.ts) |
|
|
463
|
-
| [`AppShellBuildState`](../sw/registerAppShell.d.ts) |
|
|
464
|
-
| [`AxisLayoutClass`](../layout/layoutClass.d.ts) |
|
|
465
|
-
| [`bindMenuGestures`](../menu/menuGesture.d.ts) | One pointer owns a menu session, including the trigger-to-panel handoff. Native buttons retain their click/keyboard/assistive activation path. Hosts must declare touch-action:none on these gesture owners, never the document. |
|
|
466
|
-
| [`BitmapBackdropMode`](../glass/lens/bitmapBackdrop.d.ts) | Measurement fixtures share a decoded bitmap between DOM and GPU sources. |
|
|
467
|
-
| [`blendMenuFrames`](../glass/lens/menuMotion.d.ts) |
|
|
468
|
-
| [`BridgeMode`](../glass/renderSpecs.d.ts) |
|
|
469
|
-
| [`ButtonRow`](../list-form/ListForm.d.ts) |
|
|
470
|
-
| [`cancelStackTransition`](../navigation/stack.d.ts) |
|
|
471
|
-
| [`CapsuleShape`](../glass/renderSpecs.d.ts) |
|
|
472
|
-
| [`Choice`](../list-form/ListForm.d.ts) | One option of a `Picker`. |
|
|
473
|
-
| [`Chrome`](../root/SatinRoot.d.ts) | Re-enters app-chrome policy inside a Selectable region. |
|
|
474
|
-
| [`ChromeBandSpec`](../glass/renderSpecs.d.ts) |
|
|
475
|
-
| [`clampStepper`](../list-form/state.d.ts) |
|
|
476
|
-
| [`collection`](../data/database.d.ts) | Declares a collection of records keyed by one string field
|
|
477
|
-
| [`Collection`](../data/database.d.ts) | One collection of a database (`db.notes`). Once loaded, writes publish to memory at once, so `useQuery` sees them immediately; the returned promise settles after the durable commit. |
|
|
478
|
-
| [`CollectionDefinition`](../data/database.d.ts) | A collection's record type, key and indexes, made by `collection` for `defineDatabase`. |
|
|
479
|
-
| [`ConfirmationDialog`](../presentation/Presentation.d.ts) |
|
|
480
|
-
| [`ConfirmationDialogProps`](../presentation/Presentation.d.ts) | A confirmation dialog's presentation binding,
|
|
481
|
-
| [`connectPushRoutes`](../push/urlProjection.d.ts) | Pending taps are acknowledged after acceptance and the optional durability gate. |
|
|
482
|
-
| [`ContentPage`](../glass/lens/tabPresentation.d.ts) |
|
|
483
|
-
| [`ContextMenu`](../actions/RowActions.d.ts) |
|
|
484
|
-
| [`ContextMenuConfiguration`](../actions/types.d.ts) | `contextMenu
|
|
485
|
-
| [`createAnimatedTransitionController`](../navigation/motion.d.ts) | State, besides the lifecycle: - `interactionPhase` (interactive pops): 'held' while the finger owns the page, then 'completing' or 'cancelling' once released. A cancelling pop can be caught again (resumeInteractive) and returns to 'held'. - Who moves the page: a native scroll scrub (`scrollSource`, the private scroller drives scroll-timeline tracks), the frame loop (setProgress writes a pose), or the release and automatic tracks in `activeAnimations`. - `binding`: the elements of the screens it moves, bound after React commits them. A release that arrives before the first binding waits in `pendingRelease`. |
|
|
486
|
-
| [`createInstantTransitionController`](../navigation/store.d.ts) |
|
|
487
|
-
| [`createNavigationReleaseTrajectory`](../navigation/releaseTrajectory.d.ts) |
|
|
488
|
-
| [`createNavigator`](../navigation/store.d.ts) |
|
|
489
|
-
| [`CreateNavigatorOptions`](../navigation/store.d.ts) |
|
|
490
|
-
| [`createPushNotifications`](../push/notifications.d.ts) | Create once outside React. Only enable() requests permission, synchronously from a gesture. |
|
|
491
|
-
| [`createPushRelayAdapter`](../push/notifications.d.ts) | Obtain a user-scoped token at runtime. Never bundle the relay sender token. |
|
|
492
|
-
| [`createRenderSpecs`](../glass/renderSpecs.d.ts) |
|
|
493
|
-
| [`createRouteCodec`](../navigation/routeCodec.d.ts) | Each route is independently versioned so updates keep the deepest valid ancestor. |
|
|
494
|
-
| [`createSceneRestoration`](../restoration/scene.d.ts) |
|
|
495
|
-
| [`createScreenRegistry`](../navigation/registry.d.ts) |
|
|
496
|
-
| [`createSurfaceClipPath`](../glass/renderSpecs.d.ts) |
|
|
497
|
-
| [`decodePushRoute`](../push/routes.d.ts) |
|
|
498
|
-
| [`defineApp`](../app/definition.d.ts) |
|
|
499
|
-
| [`defineDatabase`](../data/database.d.ts) | Opens the app's local database
|
|
500
|
-
| [`defineScreen`](../navigation/registry.d.ts) |
|
|
501
|
-
| [`DetailList`](../navigation/DetailList.d.ts) |
|
|
502
|
-
| [`DirectCanvasElements`](../glass/renderSpecs.d.ts) |
|
|
503
|
-
| [`DisclosureIndicator`](../settings/DisclosureIndicator.d.ts) | Framework7 disclosure artwork; framework layout still owns the row aperture. |
|
|
504
|
-
| [`DisclosureIndicatorProps`](../settings/DisclosureIndicator.d.ts) |
|
|
505
|
-
| [`dismissKeyboard`](../keyboard/adapter.d.ts) |
|
|
506
|
-
| [`DisplayCornerMetrics`](../safe-area/displayCorners.d.ts) | The screen's corner radius in points, with how sure Satin is of the model. |
|
|
507
|
-
| [`DisplayGeometry`](../safe-area/displayCorners.d.ts) | Display geometry in CSS points. Supply the physical screen, not the app window. |
|
|
508
|
-
| [`drawGlassBitmapBackdrop`](../glass/lens/bitmapBackdrop.d.ts) |
|
|
509
|
-
| [`drawReferenceBackground`](../glass/lens/referenceBackground.d.ts) |
|
|
510
|
-
| [`EdgeInsets`](../safe-area/useSafeAreaMetrics.d.ts) | Insets in CSS pixels, by physical edge. |
|
|
511
|
-
| [`encodePushRoute`](../push/routes.d.ts) |
|
|
512
|
-
| [`EntryTransition`](../navigation/types.d.ts) |
|
|
513
|
-
| [`estimateStorage`](../data/database.d.ts) | The app's storage usage and quota in bytes, when WebKit reports them. |
|
|
514
|
-
| [`evaluateTemporalSpline`](../glass/lens/liquidMotion.d.ts) |
|
|
515
|
-
| [`ExportDocument`](../data/database.d.ts) | The JSON document `exportJSON` writes and `importJSON` reads. |
|
|
516
|
-
| [`finishStackTransition`](../navigation/stack.d.ts) |
|
|
517
|
-
| [`getGlassErrors`](../glass/errors.d.ts) |
|
|
518
|
-
| [`Glass`](../glass/regions.d.ts) | Immutable glass material values. RGBA channels use the range 0...1. |
|
|
519
|
-
| [`GLASS_BAR_EDGE_HIGHLIGHT_ALPHA`](../glass/tokens.d.ts) |
|
|
520
|
-
| [`GLASS_BAR_HEIGHT_PX`](../glass/tokens.d.ts) |
|
|
521
|
-
| [`GLASS_BAR_SHADOW_ALPHA`](../glass/tokens.d.ts) |
|
|
522
|
-
| [`GLASS_CIRCLE_INLINE_INSET_PX`](../glass/lens/Scene.d.ts) |
|
|
523
|
-
| [`GLASS_CIRCLE_SIZE_PX`](../glass/lens/Scene.d.ts) |
|
|
524
|
-
| [`GLASS_CIRCLE_TOP_PX`](../glass/lens/Scene.d.ts) |
|
|
525
|
-
| [`GLASS_CLEAR_BRIGHTNESS`](../glass/tokens.d.ts) |
|
|
526
|
-
| [`GLASS_CLEAR_SATURATION`](../glass/tokens.d.ts) |
|
|
527
|
-
| [`GLASS_CLEAR_TINT_ALPHA`](../glass/tokens.d.ts) |
|
|
528
|
-
| [`GLASS_CONTROL_SIZE_PX`](../glass/tokens.d.ts) |
|
|
529
|
-
| [`GLASS_DOCK_BOTTOM_GAP_PX`](../glass/lens/Scene.d.ts) |
|
|
530
|
-
| [`GLASS_DOCK_HEIGHT_PX`](../glass/lens/Scene.d.ts) |
|
|
531
|
-
| [`GLASS_DOCK_RADIUS_PX`](../glass/lens/Scene.d.ts) |
|
|
532
|
-
| [`GLASS_DOCK_SIDE_INSET_PX`](../glass/lens/Scene.d.ts) |
|
|
533
|
-
| [`GLASS_DOCK_WIDTH_PX`](../glass/lens/Scene.d.ts) |
|
|
534
|
-
| [`GLASS_LENS_BLUR_PX`](../glass/tokens.d.ts) |
|
|
535
|
-
| [`GLASS_LENS_CHROMATIC_ABERRATION`](../glass/tokens.d.ts) |
|
|
536
|
-
| [`GLASS_LENS_CURVATURE`](../glass/tokens.d.ts) |
|
|
537
|
-
| [`GLASS_LENS_DEPTH_PX`](../glass/tokens.d.ts) |
|
|
538
|
-
| [`GLASS_LENS_EDGE_EXPONENT`](../glass/tokens.d.ts) |
|
|
539
|
-
| [`GLASS_LENS_EDGE_HIGHLIGHT`](../glass/tokens.d.ts) |
|
|
540
|
-
| [`GLASS_LENS_EDGE_WIDTH_PX`](../glass/tokens.d.ts) |
|
|
541
|
-
| [`GLASS_LENS_GLOW`](../glass/tokens.d.ts) |
|
|
542
|
-
| [`GLASS_LENS_GLOW_EXPONENT`](../glass/tokens.d.ts) |
|
|
543
|
-
| [`GLASS_LENS_GLOW_SPREAD`](../glass/tokens.d.ts) |
|
|
544
|
-
| [`GLASS_LENS_SPECULAR`](../glass/tokens.d.ts) |
|
|
545
|
-
| [`GLASS_LENS_SPECULAR_ANGLE_DEG`](../glass/tokens.d.ts) |
|
|
546
|
-
| [`GLASS_LENS_SPLAY`](../glass/tokens.d.ts) |
|
|
547
|
-
| [`GLASS_LENS_STRENGTH`](../glass/tokens.d.ts) |
|
|
548
|
-
| [`GLASS_OVERSCAN_X_PX`](../glass/lens/Scene.d.ts) |
|
|
549
|
-
| [`GLASS_OVERSCAN_Y_PX`](../glass/lens/Scene.d.ts) |
|
|
550
|
-
| [`GLASS_REGION_LIMIT`](../glass/regions.d.ts) |
|
|
551
|
-
| [`GLASS_REGION_PIXEL_LIMIT`](../glass/regions.d.ts) |
|
|
552
|
-
| [`GLASS_REGULAR_BRIGHTNESS`](../glass/tokens.d.ts) |
|
|
553
|
-
| [`GLASS_REGULAR_SATURATION`](../glass/tokens.d.ts) |
|
|
554
|
-
| [`GLASS_REGULAR_TINT_ALPHA`](../glass/tokens.d.ts) |
|
|
555
|
-
| [`GLASS_RIM_HIGHLIGHT_ALPHA`](../glass/tokens.d.ts) |
|
|
556
|
-
| [`GLASS_RIM_SHADOW_ALPHA`](../glass/tokens.d.ts) |
|
|
557
|
-
| [`GLASS_SELECTION_DURATION_MS`](../glass/tokens.d.ts) |
|
|
558
|
-
| [`GLASS_SELECTION_EASING`](../glass/tokens.d.ts) |
|
|
559
|
-
| [`GLASS_TAB_BAR_BOTTOM_GAP_PX`](../glass/tokens.d.ts) |
|
|
560
|
-
| [`GLASS_TAB_BAR_HEIGHT_PX`](../glass/tokens.d.ts) |
|
|
561
|
-
| [`GLASS_TAB_BAR_INLINE_INSET_PX`](../glass/tokens.d.ts) |
|
|
562
|
-
| [`GLASS_TINT_RGB`](../glass/tokens.d.ts) |
|
|
563
|
-
| [`GlassAccessibilityPreferences`](../glass/capability.d.ts) |
|
|
564
|
-
| [`GlassBackground`](../glass/GlassEffect.d.ts) | Framework chrome can keep its existing DOM geometry and transition refs. An `interactive` chrome button's glass (back, close, sidebar) takes the finger through the same contact path as every interactive glass, as a bar button: the touch anywhere on its button presses it. |
|
|
565
|
-
| [`GlassBar`](../glass/GlassBar.d.ts) |
|
|
566
|
-
| [`GlassBarProps`](../glass/GlassBar.d.ts) |
|
|
567
|
-
| [`glassBlendRadius`](../glass/fieldGeometry.d.ts) | Sequential native frames bracket contact at 4.50–5.04, 9.23–10.57, 18.53–20.94, 36.56–41.92 pt. See phase-morph-engine-notes.md. Polynomial smooth-min joins equal members at gap = k/2. |
|
|
568
|
-
| [`GlassButton`](../glass/GlassEffect.d.ts) |
|
|
569
|
-
| [`GlassCapabilityDecision`](../glass/capability.d.ts) |
|
|
570
|
-
| [`GlassCapabilityState`](../glass/capability.d.ts) |
|
|
571
|
-
| [`GlassConfusionReview`](../glass/GlassConfusionReview.d.ts) |
|
|
572
|
-
| [`GlassContainer`](../glass/GlassEffect.d.ts) |
|
|
573
|
-
| [`GlassDisplacementPolicy`](../glass/GlassMaterialRoot.d.ts) |
|
|
574
|
-
| [`glassDockHeight`](../glass/lens/Scene.d.ts) |
|
|
575
|
-
| [`glassDockWidth`](../glass/lens/Scene.d.ts) | The tab platter's width: the one rule for the glass renderer and the tab slot it reads. |
|
|
576
|
-
| [`GlassEffect`](../glass/GlassEffect.d.ts) | Local content remains DOM-owned; only the material canvas is painted by reference. |
|
|
577
|
-
| [`GlassEffectContainer`](../glass/GlassEffect.d.ts) |
|
|
578
|
-
| [`GlassEffectProps`](../glass/GlassEffect.d.ts) |
|
|
579
|
-
| [`GlassError`](../glass/errors.d.ts) |
|
|
580
|
-
| [`GlassErrorCode`](../glass/errors.d.ts) |
|
|
581
|
-
| [`glassFieldDistance`](../glass/fieldGeometry.d.ts) | Returns the signed distance to the diagnostic glass union in points. |
|
|
582
|
-
| [`GlassFieldMember`](../glass/fieldGeometry.d.ts) | Geometry in frame-local CSS pixels; independent of any renderer. |
|
|
583
|
-
| [`GlassFrameTrace`](../glass/renderSpecs.d.ts) |
|
|
584
|
-
| [`GlassInteraction`](../glass/rendererContract.d.ts) |
|
|
585
|
-
| [`GlassLayer`](../glass/GlassEffect.d.ts) | Place this inside the matching ScrollSurface for scroll attachment. |
|
|
586
|
-
| [`GlassLayerDescriptor`](../glass/regions.d.ts) | Serializable renderer contract. No DOM, Pixi, or GPU handles cross this boundary. |
|
|
587
|
-
| [`GlassMaterial`](../glass/regions.d.ts) |
|
|
588
|
-
| [`GlassMaterialDiagnostics`](../glass/context.d.ts) |
|
|
589
|
-
| [`GlassMaterialResponse`](../glass/rendererContract.d.ts) |
|
|
590
|
-
| [`GlassOutlinePoint`](../glass/unionOutline.d.ts) | One point in a diagnostic glass outline, in field coordinates. |
|
|
591
|
-
| [`GlassPresenter`](../glass/rendererContract.d.ts) |
|
|
592
|
-
| [`GlassRegion`](../glass/regions.d.ts) |
|
|
593
|
-
| [`GlassRendererDiagnostics`](../glass/rendererContract.d.ts) |
|
|
594
|
-
| [`GlassRendererReply`](../glass/rendererContract.d.ts) | Worker failures must retain raw messages and device-loss reasons. |
|
|
595
|
-
| [`GlassRendererRequest`](../glass/rendererContract.d.ts) |
|
|
596
|
-
| [`GlassRenderTestState`](../glass/capability.d.ts) |
|
|
597
|
-
| [`GlassSceneSnapshot`](../glass/regions.d.ts) | Each layer can own multiple presenters. WebGPU shares one device across canvases. |
|
|
598
|
-
| [`GlassScrollSnapshot`](../glass/regions.d.ts) |
|
|
599
|
-
| [`GlassSearchField`](../glass/GlassTextField.d.ts) |
|
|
600
|
-
| [`GlassShape`](../glass/regions.d.ts) |
|
|
601
|
-
| [`GlassSource`](../glass/rendererContract.d.ts) |
|
|
602
|
-
| [`GlassSpecimen`](../glass/GlassPresentation.d.ts) | Shared semantic DOM and runtime ownership. Probe controls are testing-only. |
|
|
603
|
-
| [`GlassTextField`](../glass/GlassTextField.d.ts) |
|
|
604
|
-
| [`GlassTextFieldProps`](../glass/GlassTextField.d.ts) |
|
|
605
|
-
| [`GlassTint`](../glass/regions.d.ts) |
|
|
606
|
-
| [`glassTokens`](../glass/tokens.d.ts) |
|
|
607
|
-
| [`GlassTouchLight`](../glass/renderSpecs.d.ts) | A sampled light field, independent of the renderer and of row selection. Coordinates and radius are CSS pixels relative to the surface frame. |
|
|
608
|
-
| [`GlassUnionFrame`](../glass/fieldGeometry.d.ts) | A diagnostic glass union outline and its bounds in field coordinates. |
|
|
609
|
-
| [`glassUnionOutline`](../glass/unionOutline.d.ts) | Closed contours, including disconnected members. Coordinates use the frame's local CSS pixels. Diagnostic/export operation: never run it in the render loop. Marching triangles avoid ambiguous saddle cells; roots use the shader's field. |
|
|
610
|
-
| [`GlassVariant`](../glass/tokens.d.ts) |
|
|
611
|
-
| [`ICON_GRADIENTS`](../glass/lens/theme.d.ts) |
|
|
612
|
-
| [`ICON_SVG`](../glass/lens/icons.d.ts) |
|
|
613
|
-
| [`InstallationDiagnostics`](../app/InstallationDiagnostics.d.ts) |
|
|
614
|
-
| [`InstallationFailure`](../app/installationFailure.d.ts) |
|
|
615
|
-
| [`installMotionProbe`](../motionProbe.d.ts) | Install once before app mount; dispose restores the original rAF function. |
|
|
616
|
-
| [`InteractivePopDiagnostic`](../navigation/interactivePopTypes.d.ts) |
|
|
617
|
-
| [`isBitmapBackdrop`](../glass/lens/bitmapBackdrop.d.ts) |
|
|
618
|
-
| [`isCalibratedMaxLayout`](../glass/lens/Scene.d.ts) |
|
|
619
|
-
| [`isTintBackgroundMode`](../glass/lens/referenceBackground.d.ts) |
|
|
620
|
-
| [`KeyboardGeometry`](../keyboard/geometry.d.ts) |
|
|
621
|
-
| [`lastUnstableMeasurement`](../glass/lens/Scene.d.ts) |
|
|
622
|
-
| [`LayoutClass`](../layout/layoutClass.d.ts) |
|
|
623
|
-
| [`LensMode`](../glass/renderSpecs.d.ts) |
|
|
624
|
-
| [`LIQUID_ENVELOPES`](../glass/lens/liquidMotion.d.ts) |
|
|
625
|
-
| [`LIQUID_PILL_BAR`](../glass/lens/liquidMotion.d.ts) |
|
|
626
|
-
| [`LIQUID_SCRIPT`](../glass/lens/liquidMotion.d.ts) |
|
|
627
|
-
| [`liquidAnimationActive`](../glass/lens/liquidMotion.d.ts) |
|
|
628
|
-
| [`LiquidMotionMode`](../glass/lens/liquidMotion.d.ts) |
|
|
629
|
-
| [`liquidScriptDuration`](../glass/lens/liquidMotion.d.ts) |
|
|
630
|
-
| [`List`](../list-form/ListForm.d.ts) |
|
|
631
|
-
| [`ListEngineProps`](../list-form/ListForm.d.ts) |
|
|
632
|
-
| [`makeReferenceBackgroundCanvas`](../glass/lens/referenceBackground.d.ts) |
|
|
633
|
-
| [`MARKER_INTERVAL_PX`](../glass/lens/mirrorConstants.d.ts) |
|
|
634
|
-
| [`measureMirrorLayout`](../glass/lens/Scene.d.ts) |
|
|
635
|
-
| [`measureMirrorLayoutRelative`](../glass/lens/Scene.d.ts) | A host whose origin moves on every read (a route inside a running navigation transform) never passes the absolute-origin check. Its own layout is still stable: two consecutive snapshots with identical host-relative geometry are a consistent reading, whatever the origin did. Additive; measureMirrorLayout is unchanged. |
|
|
636
|
-
| [`Menu`](../glass/Menu.d.ts) |
|
|
637
|
-
| [`MENU_BUTTON`](../glass/lens/menuMotion.d.ts) |
|
|
638
|
-
| [`MENU_CADENCE`](../glass/lens/menuMotion.d.ts) |
|
|
639
|
-
| [`MENU_ENVELOPE`](../glass/lens/menuMotion.d.ts) |
|
|
640
|
-
| [`MENU_GESTURE_REST`](../menu/menuGesture.d.ts) |
|
|
641
|
-
| [`MENU_ICON_SVG`](../glass/lens/icons.d.ts) |
|
|
642
|
-
| [`MENU_MOTION_DURATIONS`](../glass/lens/menuMotion.d.ts) |
|
|
643
|
-
| [`MENU_PANEL`](../glass/lens/menuMotion.d.ts) |
|
|
644
|
-
| [`MENU_TAP_FEEDBACK_MS`](../menu/menuGesture.d.ts) |
|
|
645
|
-
| [`menuCadenceDuration`](../glass/lens/menuMotion.d.ts) |
|
|
646
|
-
| [`MenuDirection`](../glass/lens/menuMotion.d.ts) |
|
|
647
|
-
| [`MenuGestureDecision`](../menu/menuGesture.d.ts) |
|
|
648
|
-
| [`MenuGestureFrame`](../menu/menuGesture.d.ts) |
|
|
649
|
-
| [`MenuGestureMotion`](../menu/menuGesture.d.ts) |
|
|
650
|
-
| [`menuHighlightAttack`](../menu/menuGesture.d.ts) |
|
|
651
|
-
| [`MenuInteraction`](../menu/menuInteraction.d.ts) |
|
|
652
|
-
| [`MenuInteractionPhase`](../menu/menuInteraction.d.ts) | Synchronous ownership of a menu transition. React renders its snapshot; event handlers use this model so two events in one task cannot both submit. Completion tokens prevent an interrupted window's timer settling its successor. |
|
|
653
|
-
| [`menuMaterialProgress`](../glass/lens/menuMotion.d.ts) |
|
|
654
|
-
| [`MenuMotionFrame`](../glass/lens/menuMotion.d.ts) |
|
|
655
|
-
| [`MenuPanelBounds`](../menu/menuGesture.d.ts) |
|
|
656
|
-
| [`menuPanelPull`](../menu/menuGesture.d.ts) | Fit to axis controls plus the held diagonal, with its origin in the panel's resting coordinate space. Over-pull begins outside the panel; the anchored right edge couples vertical stretch to horizontal displacement. |
|
|
657
|
-
| [`MenuProps`](../glass/menuPresenter.d.ts) |
|
|
658
|
-
| [`menuPull`](../glass/contactPhysics.d.ts) |
|
|
659
|
-
| [`menuRetargetTime`](../glass/lens/menuMotion.d.ts) | Restart an interrupted transition near the current geometry, not at its opposite endpoint. This is an interruption policy, not a native timing fit. |
|
|
660
|
-
| [`menuReturn`](../glass/contactPhysics.d.ts) |
|
|
661
|
-
| [`MenuTriggerProps`](../glass/menuPresenter.d.ts) |
|
|
662
|
-
| [`MirrorCaptureRange`](../glass/lens/Scene.d.ts) | DOM geometry is authoritative. This function is only called after layout changes. |
|
|
663
|
-
| [`MirrorLayout`](../glass/lens/Scene.d.ts) |
|
|
664
|
-
| [`MirrorNode`](../glass/lens/Scene.d.ts) |
|
|
665
|
-
| [`MorphEllipsisArtwork`](../glass/MorphEllipsisArtwork.d.ts) | The enclosing control owns the accessible label. |
|
|
666
|
-
| [`MOTION_SPEC`](../glass/lens/motion.d.ts) |
|
|
667
|
-
| [`MotionRun`](../glass/lens/motion.d.ts) |
|
|
668
|
-
| [`MotionSample`](../glass/lens/motion.d.ts) |
|
|
669
|
-
| [`mountGlassWorkerExperiment`](../glass/worker/experiment.d.ts) |
|
|
670
|
-
| [`mountSatin`](../root/mountSatin.d.ts) | Mount once from the app entry point, after resolving its initial screen.
|
|
671
|
-
| [`NATIVE_WIDGET_Y_REGISTRATION_PX`](../glass/lens/motion.d.ts) |
|
|
672
|
-
| [`NAVIGATION_CURRENT_SEGMENT_WEIGHT`](../navigation/releaseVelocity.d.ts) |
|
|
673
|
-
| [`NAVIGATION_DIM_OPACITY`](../navigation/motionTokens.d.ts) |
|
|
674
|
-
| [`NAVIGATION_DIRECTION_LOCK_PX`](../navigation/motionTokens.d.ts) |
|
|
675
|
-
| [`NAVIGATION_DURATION_MS`](../navigation/motionTokens.d.ts) |
|
|
676
|
-
| [`NAVIGATION_EASING`](../navigation/motionTokens.d.ts) |
|
|
677
|
-
| [`NAVIGATION_EDGE_SHADOW_OPACITY`](../navigation/motionTokens.d.ts) |
|
|
678
|
-
| [`NAVIGATION_EDGE_SHADOW_WIDTH_PX`](../navigation/motionTokens.d.ts) |
|
|
679
|
-
| [`NAVIGATION_HORIZONTAL_INTENT_PX`](../navigation/motionTokens.d.ts) |
|
|
680
|
-
| [`NAVIGATION_PARALLAX_FRACTION`](../navigation/motionTokens.d.ts) |
|
|
681
|
-
| [`NAVIGATION_POSITION_THRESHOLD`](../navigation/motionTokens.d.ts) |
|
|
682
|
-
| [`NAVIGATION_PREVIOUS_SEGMENT_WEIGHT`](../navigation/releaseVelocity.d.ts) |
|
|
683
|
-
| [`NAVIGATION_RELEASE_SAMPLE_RATE_HZ`](../navigation/releaseTrajectory.d.ts) |
|
|
684
|
-
| [`NAVIGATION_RELEASE_SPRING_DAMPING`](../navigation/releaseTrajectory.d.ts) |
|
|
685
|
-
| [`NAVIGATION_RELEASE_SPRING_MASS`](../navigation/releaseTrajectory.d.ts) |
|
|
686
|
-
| [`NAVIGATION_RELEASE_SPRING_STIFFNESS`](../navigation/releaseTrajectory.d.ts) |
|
|
687
|
-
| [`NAVIGATION_VELOCITY_THRESHOLD_PX_PER_SECOND`](../navigation/motionTokens.d.ts) |
|
|
688
|
-
| [`NavigationBackButtonBehavior`](../navigation/types.d.ts) |
|
|
689
|
-
| [`NavigationBarDefinition`](../navigation/types.d.ts) |
|
|
690
|
-
| [`navigationMotionTokens`](../navigation/motionTokens.d.ts) |
|
|
691
|
-
| [`NavigationReleaseSample`](../navigation/releaseTrajectory.d.ts) |
|
|
692
|
-
| [`NavigationReleaseTrajectory`](../navigation/releaseTrajectory.d.ts) |
|
|
693
|
-
| [`NavigationRow`](../list-form/ListForm.d.ts) |
|
|
694
|
-
| [`NavigatorActions`](../navigation/store.d.ts) |
|
|
695
|
-
| [`NavigatorHost`](../navigation/NavigatorHost.d.ts) |
|
|
696
|
-
| [`NavigatorHostProps`](../navigation/NavigatorHost.d.ts) |
|
|
697
|
-
| [`NavigatorState`](../navigation/types.d.ts) |
|
|
698
|
-
| [`NavigatorStore`](../navigation/store.d.ts) |
|
|
699
|
-
| [`newId`](../data/database.d.ts) | A new unique record id that sorts by creation time. |
|
|
700
|
-
| [`normalizeNavigationReleaseVelocity`](../navigation/releaseTrajectory.d.ts) | UIKit's convention: axis velocity divided by signed distance to target. |
|
|
701
|
-
| [`OfflinePresentation`](../reachability/react.d.ts) |
|
|
702
|
-
| [`OfflinePresentationProps`](../reachability/react.d.ts) |
|
|
703
|
-
| [`PALETTES`](../glass/lens/theme.d.ts) |
|
|
704
|
-
| [`PickerOptions`](../list-form/ListForm.d.ts) |
|
|
705
|
-
| [`PickerRow`](../list-form/ListForm.d.ts) |
|
|
706
|
-
| [`PickerRowProps`](../list-form/ListForm.d.ts) |
|
|
707
|
-
| [`popStack`](../navigation/stack.d.ts) |
|
|
708
|
-
| [`popToRootStack`](../navigation/stack.d.ts) |
|
|
709
|
-
| [`prepareGlassBitmapBackdrop`](../glass/lens/bitmapBackdrop.d.ts) |
|
|
710
|
-
| [`prepareSceneRoutes`](../restoration/routes.d.ts) | Call before mount. Explicit launch intent wins over the checkpoint. |
|
|
711
|
-
| [`PresentationDetent`](../presentation/model.d.ts) |
|
|
712
|
-
| [`PresentationKind`](../navigation/types.d.ts) |
|
|
713
|
-
| [`PresentationProps`](../presentation/Presentation.d.ts) | The presentation binding, accessible title and dismissal callback shared by presentations. |
|
|
714
|
-
| [`Pressable`](../press/Pressable.d.ts) |
|
|
715
|
-
| [`PRESSABLE_PRESS_IN_DURATION_MS`](../press/tokens.d.ts) |
|
|
716
|
-
| [`PRESSABLE_PRESSED_OPACITY`](../press/tokens.d.ts) |
|
|
717
|
-
| [`PRESSABLE_RELEASE_DURATION_MS`](../press/tokens.d.ts) |
|
|
718
|
-
| [`PRESSABLE_RELEASE_EASING`](../press/tokens.d.ts) |
|
|
719
|
-
| [`PRESSABLE_RETENTION_OFFSET_PX`](../press/tokens.d.ts) |
|
|
720
|
-
| [`PressableProps`](../press/Pressable.d.ts) |
|
|
721
|
-
| [`pressableTokens`](../press/tokens.d.ts) |
|
|
722
|
-
| [`PressState`](../press/stateMachine.d.ts) | Whether a press is idle
|
|
723
|
-
| [`previousTrace`](../glass/lens/trace.d.ts) |
|
|
724
|
-
| [`PushNotifications`](../push/notifications.d.ts) |
|
|
725
|
-
| [`PushNotificationsLifecycle`](../push/PushPermissionExplainer.d.ts) | Mount at the app root so renewals reconcile even when Settings is not visible. |
|
|
726
|
-
| [`PushNotificationState`](../push/notifications.d.ts) |
|
|
727
|
-
| [`PushPermissionExplainer`](../push/PushPermissionExplainer.d.ts) |
|
|
728
|
-
| [`PushRelayTokenField`](../push/PushPermissionExplainer.d.ts) | A runtime user credential, never a build-time VITE secret. Keep its value in memory. |
|
|
729
|
-
| [`PushRoute`](../push/routes.d.ts) | Shared, validated route codec. No navigation or browser history side effects. |
|
|
730
|
-
| [`PushRouteRules`](../push/routes.d.ts) |
|
|
731
|
-
| [`PushServerAdapter`](../push/notifications.d.ts) |
|
|
732
|
-
| [`pushStack`](../navigation/stack.d.ts) |
|
|
733
|
-
| [`PushSubscriptionPayload`](../push/notifications.d.ts) |
|
|
734
|
-
| [`Query`](../data/database.d.ts) | An immutable query over a collection: `index`, `keyRange`, `reverse`, `limit` and `filter` each return a new query. `useQuery` hands one to its configure callback. |
|
|
735
|
-
| [`readAppearanceDiagnostics`](../app/appearance.d.ts) |
|
|
736
|
-
| [`readDisplayCornerMetrics`](../safe-area/displayCorners.d.ts) | Framework token for the screen containing this app. Display Zoom and unknown models fall back to zero. |
|
|
737
|
-
| [`readInstallationFailure`](../app/installationFailure.d.ts) | Reads the recorded installation failure for
|
|
738
|
-
| [`readSafeAreaMetrics`](../safe-area/useSafeAreaMetrics.d.ts) |
|
|
739
|
-
| [`readSceneValue`](../restoration/scene.d.ts) |
|
|
740
|
-
| [`REFERENCE_CONTENT_HEIGHT_PX`](../glass/lens/referenceBackground.d.ts) |
|
|
741
|
-
| [`ReferenceBackgroundMode`](../glass/lens/referenceBackground.d.ts) |
|
|
742
|
-
| [`ReferenceBackgroundScene`](../glass/lens/Scene.d.ts) |
|
|
743
|
-
| [`registerAppShell`](../sw/registerAppShell.d.ts) |
|
|
744
|
-
| [`RegisterAppShellOptions`](../sw/registerAppShell.d.ts) |
|
|
745
|
-
| [`registerGlassBitmapBackdrop`](../glass/lens/bitmapBackdrop.d.ts) |
|
|
746
|
-
| [`RegistryScreenEntry`](../navigation/store.d.ts) |
|
|
747
|
-
| [`REGULAR_TRIGGER_MATERIAL`](../glass/regularTriggerMaterial.d.ts) |
|
|
748
|
-
| [`REGULAR_TRIGGER_MATERIAL_GLSL`](../glass/regularTriggerMaterial.d.ts) |
|
|
749
|
-
| [`REGULAR_TRIGGER_RIM_CURVES`](../glass/regularTriggerRim.d.ts) |
|
|
750
|
-
| [`RegularMaterialContext`](../glass/regularMaterialContext.d.ts) | A retained source-image index. No DOM reads, GPU readbacks or canvas writes occur when an aperture moves. Disc rows are clipped and renormalized against the visible window, not extended by repeating the boundary pixel. |
|
|
751
|
-
| [`regularTriggerRegime`](../glass/regularTriggerMaterial.d.ts) |
|
|
752
|
-
| [`regularTriggerRimResponse`](../glass/regularTriggerRim.d.ts) |
|
|
753
|
-
| [`releaseWarmedAppImages`](../app/warmImage.d.ts) | Release URLs when the app document closes, or explicitly when its image set changes. |
|
|
754
|
-
| [`replaceStack`](../navigation/stack.d.ts) |
|
|
755
|
-
| [`reportGlassError`](../glass/errors.d.ts) |
|
|
756
|
-
| [`requestPersistentStorage`](../data/database.d.ts) | Asks WebKit not to evict the app's data under storage pressure; true when granted. |
|
|
757
|
-
| [`resolveDisplayCornerMetrics`](../safe-area/displayCorners.d.ts) | Resolution is not a model identifier. Unknown and asymmetric displays use the scalar fallback. |
|
|
758
|
-
| [`ReturningMenuTrigger`](../glass/renderSpecs.d.ts) |
|
|
759
|
-
| [`RouteSchema`](../navigation/routeCodec.d.ts) |
|
|
760
|
-
| [`Row`](../list-form/ListForm.d.ts) |
|
|
761
|
-
| [`RowActions`](../actions/RowActions.d.ts) | A row's swipe actions and context menu. Inside an editable `List` item, the item owns the row's one gesture host (it adds swipe-to-delete), so the row hands its actions to the item instead of hosting a second recognizer. Swipe actions are unavailable while the list is editing, as in selection; the context menu stays. |
|
|
762
|
-
| [`RowActionsProps`](../actions/types.d.ts) | Row swipe actions and context-menu commands. |
|
|
763
|
-
| [`RowIcon`](../list-form/ListForm.d.ts) | A Settings-style icon: a white symbol on a rounded colour tile, for a row's leading edge. |
|
|
764
|
-
| [`RowIconProps`](../list-form/ListForm.d.ts) | The symbol and its tile colour: a system colour name or any CSS colour. |
|
|
765
|
-
| [`RowProps`](../list-form/ListForm.d.ts) |
|
|
766
|
-
| [`runScriptedDrag`](../glass/lens/motion.d.ts) |
|
|
767
|
-
| [`runScriptedScroll`](../glass/lens/motion.d.ts) |
|
|
768
|
-
| [`RuntimeElements`](../glass/renderSpecs.d.ts) |
|
|
769
|
-
| [`RuntimeGeometry`](../glass/renderSpecs.d.ts) |
|
|
770
|
-
| [`RuntimeOptions`](../glass/renderSpecs.d.ts) |
|
|
771
|
-
| [`RuntimeSnapshot`](../glass/renderSpecs.d.ts) | Probe telemetry shape. The WebGPU runtime does not emit snapshots; GlassPresentation's probe panel still types against it. Fields typed by removed WebGL classes are `unknown`. |
|
|
772
|
-
| [`SafeAreaMetrics`](../safe-area/useSafeAreaMetrics.d.ts) | The full safe-area and viewport geometry Satin works from, including the diagnostic coordinate spaces installed-app fixtures compare. Apps want only `insets`. |
|
|
773
|
-
| [`SampledMotion`](../menu/sampledMotion.d.ts) | A document-timeline animation, submitted once per input or state transition. Sampling density controls interpolation error, not the display refresh rate. Keep accelerated properties in separate effects from paint-bound properties. |
|
|
774
|
-
| [`sampleLiquidShape`](../glass/lens/liquidMotion.d.ts) |
|
|
775
|
-
| [`sampleMenuCadence`](../glass/lens/menuMotion.d.ts) |
|
|
776
|
-
| [`sampleMenuMotion`](../glass/lens/menuMotion.d.ts) |
|
|
777
|
-
| [`sampleNavigationCurve`](../navigation/motionTokens.d.ts) |
|
|
778
|
-
| [`SatinAppShellRegistration`](../sw/registerAppShell.d.ts) |
|
|
779
|
-
| [`SatinRoot`](../root/SatinRoot.d.ts) |
|
|
780
|
-
| [`SatinRootProps`](../root/SatinRoot.d.ts) |
|
|
781
|
-
| [`SatinRuntime`](../root/runtimeContext.d.ts) |
|
|
782
|
-
| [`Scenario`](../glass/renderSpecs.d.ts) |
|
|
783
|
-
| [`ScenarioMetrics`](../glass/renderSpecs.d.ts) |
|
|
784
|
-
| [`SCENE_STYLE`](../glass/lens/Scene.d.ts) |
|
|
785
|
-
| [`SceneRestoration`](../restoration/scene.d.ts) |
|
|
786
|
-
| [`ScreenContainer`](../navigation/ScreenContainer.d.ts) |
|
|
787
|
-
| [`ScreenContainerProps`](../navigation/ScreenContainer.d.ts) |
|
|
788
|
-
| [`ScreenDefinition`](../navigation/types.d.ts) |
|
|
789
|
-
| [`ScreenEntry`](../navigation/types.d.ts) |
|
|
790
|
-
| [`ScreenId`](../navigation/store.d.ts) |
|
|
791
|
-
| [`ScreenLifecycle`](../navigation/types.d.ts) |
|
|
792
|
-
| [`ScreenLifecycleCallbacks`](../navigation/types.d.ts) |
|
|
793
|
-
| [`ScreenParams`](../navigation/store.d.ts) |
|
|
794
|
-
| [`ScreenRegistry`](../navigation/registry.d.ts) |
|
|
795
|
-
| [`scriptedDragFrames`](../glass/lens/motion.d.ts) |
|
|
796
|
-
| [`scriptedDragProgress`](../glass/lens/motion.d.ts) |
|
|
797
|
-
| [`ScriptedMotionMode`](../glass/lens/motion.d.ts) |
|
|
798
|
-
| [`ScriptedScrollMode`](../glass/lens/motion.d.ts) |
|
|
799
|
-
| [`scriptedScrollOffset`](../glass/lens/motion.d.ts) |
|
|
800
|
-
| [`ScrollAxis`](../scroll/types.d.ts) | The axis along which a scroll surface accepts scrolling. |
|
|
801
|
-
| [`ScrollDismissesKeyboardMode`](../keyboard/adapter.d.ts) |
|
|
802
|
-
| [`ScrollOffset`](../scroll/types.d.ts) | The scroll position in points along the physical x and y axes. |
|
|
803
|
-
| [`ScrollSnapshot`](../scroll/types.d.ts) |
|
|
804
|
-
| [`ScrollSurface`](../scroll/ScrollSurface.d.ts) |
|
|
805
|
-
| [`ScrollSurfaceHandle`](../scroll/ScrollSurface.d.ts) | Imperative scroll positioning for a named scroll view. |
|
|
806
|
-
| [`ScrollSurfaceProps`](../scroll/ScrollSurface.d.ts) | A scroll view's content, scroll binding and keyboard dismissal policy. |
|
|
807
|
-
| [`ScrollToTopOptions`](../scroll/types.d.ts) | Options for
|
|
808
|
-
| [`Section`](../list-form/ListForm.d.ts) |
|
|
809
|
-
| [`SectionProps`](../list-form/ListForm.d.ts) | A section's rows and its optional header and footer. |
|
|
810
|
-
| [`SecureField`](../text-input/TextField.d.ts) |
|
|
811
|
-
| [`SecureFieldProps`](../text-input/TextField.d.ts) |
|
|
812
|
-
| [`SegmentedControl`](../list-form/ListForm.d.ts) |
|
|
813
|
-
| [`Selectable`](../root/SatinRoot.d.ts) |
|
|
814
|
-
| [`SelectableProps`](../root/SatinRoot.d.ts) |
|
|
815
|
-
| [`SerializedRoute`](../navigation/routeCodec.d.ts) |
|
|
816
|
-
| [`setAppBadge`](../push/notifications.d.ts) |
|
|
817
|
-
| [`SETTINGS_BACK_BUTTON_INLINE_INSET_PX`](../settings/tokens.d.ts) |
|
|
818
|
-
| [`SETTINGS_BACK_BUTTON_SIZE_PX`](../settings/tokens.d.ts) |
|
|
819
|
-
| [`SETTINGS_DETAIL_CONTENT_TOP_OFFSET_PX`](../settings/tokens.d.ts) |
|
|
820
|
-
| [`SETTINGS_DETAIL_INLINE_INSET_PX`](../settings/tokens.d.ts) |
|
|
821
|
-
| [`SETTINGS_DETAIL_ROW_HEIGHT_PX`](../settings/tokens.d.ts) |
|
|
822
|
-
| [`SETTINGS_DISCLOSURE_DARK_COLOR`](../settings/tokens.d.ts) |
|
|
823
|
-
| [`SETTINGS_DISCLOSURE_HEIGHT_PX`](../settings/tokens.d.ts) |
|
|
824
|
-
| [`SETTINGS_DISCLOSURE_LIGHT_COLOR`](../settings/tokens.d.ts) |
|
|
825
|
-
| [`SETTINGS_DISCLOSURE_OFFSET_X_PX`](../settings/tokens.d.ts) |
|
|
826
|
-
| [`SETTINGS_DISCLOSURE_OFFSET_Y_PX`](../settings/tokens.d.ts) |
|
|
827
|
-
| [`SETTINGS_DISCLOSURE_WIDTH_PX`](../settings/tokens.d.ts) |
|
|
828
|
-
| [`SETTINGS_GROUP_CORNER_RADIUS_PX`](../settings/tokens.d.ts) |
|
|
829
|
-
| [`SETTINGS_GROUP_SPACING_PX`](../settings/tokens.d.ts) |
|
|
830
|
-
| [`SETTINGS_LARGE_TITLE_FONT_SIZE_PX`](../settings/tokens.d.ts) |
|
|
831
|
-
| [`SETTINGS_LARGE_TITLE_LINE_HEIGHT_PX`](../settings/tokens.d.ts) |
|
|
832
|
-
| [`SETTINGS_NAVIGATION_BAR_HEIGHT_PX`](../settings/tokens.d.ts) |
|
|
833
|
-
| [`SETTINGS_ROOT_INLINE_INSET_PX`](../settings/tokens.d.ts) |
|
|
834
|
-
| [`SETTINGS_ROOT_LARGE_TITLE_TOP_OFFSET_PX`](../settings/tokens.d.ts) |
|
|
835
|
-
| [`SETTINGS_ROOT_PRO_MAX_INLINE_INSET_PX`](../settings/tokens.d.ts) |
|
|
836
|
-
| [`SETTINGS_ROOT_ROW_HEIGHT_PX`](../settings/tokens.d.ts) |
|
|
837
|
-
| [`SETTINGS_ROW_ICON_CORNER_RADIUS_PX`](../settings/tokens.d.ts) |
|
|
838
|
-
| [`SETTINGS_ROW_ICON_SIZE_PX`](../settings/tokens.d.ts) |
|
|
839
|
-
| [`SETTINGS_ROW_TRAILING_INSET_PX`](../settings/tokens.d.ts) |
|
|
840
|
-
| [`SETTINGS_SEPARATOR_HAIRLINE_PX`](../settings/tokens.d.ts) |
|
|
841
|
-
| [`SETTINGS_SEPARATOR_LEADING_INSET_PX`](../settings/tokens.d.ts) |
|
|
842
|
-
| [`SETTINGS_SEPARATOR_OFFSET_Y_PX`](../settings/tokens.d.ts) |
|
|
843
|
-
| [`SETTINGS_SEPARATOR_TRAILING_INSET_PX`](../settings/tokens.d.ts) |
|
|
844
|
-
| [`settingsChromeTokens`](../settings/tokens.d.ts) |
|
|
845
|
-
| [`SettingsDomScene`](../glass/lens/Scene.d.ts) |
|
|
846
|
-
| [`SettingsPalette`](../glass/lens/theme.d.ts) |
|
|
847
|
-
| [`settingsRootInlineInset`](../settings/tokens.d.ts) |
|
|
848
|
-
| [`Sheet`](../presentation/Presentation.d.ts) |
|
|
849
|
-
| [`SheetProps`](../presentation/Presentation.d.ts) |
|
|
850
|
-
| [`shouldCompleteInteractivePop`](../navigation/motionTokens.d.ts) |
|
|
851
|
-
| [`Sidebar`](../navigation/Sidebar.d.ts) |
|
|
852
|
-
| [`SidebarEntry`](../navigation/Sidebar.d.ts) |
|
|
853
|
-
| [`SidebarProps`](../navigation/Sidebar.d.ts) |
|
|
854
|
-
| [`SidebarSymbol`](../navigation/SidebarSymbol.d.ts) |
|
|
855
|
-
| [`sidebarTokens`](../settings/tokens.d.ts) |
|
|
856
|
-
| [`SplitSelection`](../navigation/splitContext.d.ts) |
|
|
857
|
-
| [`springStep`](../glass/lens/liquidMotion.d.ts) |
|
|
858
|
-
| [`stableTabSelection`](../glass/lens/tabSelectionMaterial.d.ts) |
|
|
859
|
-
| [`StateSchema`](../restoration/scene.d.ts) | Small UI checkpoints, read before mount and written in quiet tasks. |
|
|
860
|
-
| [`StepperProps`](../list-form/ListForm.d.ts) |
|
|
861
|
-
| [`StepperRow`](../list-form/ListForm.d.ts) |
|
|
862
|
-
| [`STRIPE_BACKGROUND_MODES`](../glass/lens/referenceBackground.d.ts) |
|
|
863
|
-
| [`SubmitLabel`](../text-input/kinds.d.ts) |
|
|
864
|
-
| [`subscribeGlassErrors`](../glass/errors.d.ts) |
|
|
865
|
-
| [`summarize`](../glass/worker/experiment.d.ts) |
|
|
866
|
-
| [`SurfaceId`](../glass/renderSpecs.d.ts) |
|
|
867
|
-
| [`SurfaceRenderSpec`](../glass/renderSpecs.d.ts) |
|
|
868
|
-
| [`SurfaceShape`](../glass/renderSpecs.d.ts) |
|
|
869
|
-
| [`SwipeActions`](../actions/types.d.ts) | `swipeActions
|
|
870
|
-
| [`SwipeActionsConfiguration`](../actions/types.d.ts) |
|
|
871
|
-
| [`Tab`](../tabs/TabView.d.ts) | Declaration consumed by TabView. Each tab owns its content and navigator. |
|
|
872
|
-
| [`TAB_BAR_BLUR_SIGMA`](../glass/lens/tabSelectionMaterial.d.ts) |
|
|
873
|
-
| [`TAB_BAR_LOCAL_CENTRES`](../glass/lens/tabSelectionMaterial.d.ts) |
|
|
874
|
-
| [`TAB_ICON_SVG`](../glass/lens/icons.d.ts) |
|
|
875
|
-
| [`TAB_SELECTION_HEIGHT`](../glass/lens/tabSelectionMaterial.d.ts) |
|
|
876
|
-
| [`TAB_SELECTION_WIDTH`](../glass/lens/tabSelectionMaterial.d.ts) |
|
|
877
|
-
| [`TabBar`](../glass/TabBar.d.ts) |
|
|
878
|
-
| [`TabBarItem`](../glass/TabBar.d.ts) |
|
|
879
|
-
| [`TabBarProps`](../glass/TabBar.d.ts) |
|
|
880
|
-
| [`tabGlyphStyle`](../glass/lens/tabGlyphColours.d.ts) |
|
|
881
|
-
| [`tabPresentation`](../glass/lens/tabPresentation.d.ts) | Backdrops change what is behind the tabs, not whether the tabs exist. Explicit optical probes can still request bare glass. The separate drag and liquid specimens retain their original presentation. |
|
|
882
|
-
| [`tabProbeOverride`](../glass/lens/tabPresentation.d.ts) |
|
|
883
|
-
| [`TabProps`](../tabs/TabView.d.ts) |
|
|
884
|
-
| [`tabSelectionCapsule`](../glass/lens/tabSelectionMaterial.d.ts) |
|
|
885
|
-
| [`TabSelectionShape`](../glass/renderSpecs.d.ts) |
|
|
886
|
-
| [`TabView`](../tabs/TabView.d.ts) | Lazy, retained tabs. Hidden app effects remain app-owned; Satin work pauses. |
|
|
887
|
-
| [`TabViewProps`](../tabs/TabView.d.ts) |
|
|
888
|
-
| [`TextEditor`](../text-input/TextEditor.d.ts) |
|
|
889
|
-
| [`TextEditorProps`](../text-input/TextEditor.d.ts) |
|
|
890
|
-
| [`TextField`](../text-input/TextField.d.ts) |
|
|
891
|
-
| [`TextFieldKind`](../text-input/kinds.d.ts) | What a field holds, setting its keyboard, autofill and autocorrection together. |
|
|
892
|
-
| [`TextFieldProps`](../text-input/TextField.d.ts) |
|
|
893
|
-
| [`TINT_BACKGROUND_MODES`](../glass/lens/referenceBackground.d.ts) |
|
|
894
|
-
| [`TintBackgroundMode`](../glass/lens/referenceBackground.d.ts) |
|
|
895
|
-
| [`TitleDisplayMode`](../navigation/types.d.ts) |
|
|
896
|
-
| [`Toggle`](../list-form/Toggle.d.ts) |
|
|
897
|
-
| [`ToggleProps`](../list-form/Toggle.d.ts) |
|
|
898
|
-
| [`ToggleRow`](../list-form/Toggle.d.ts) |
|
|
899
|
-
| [`ToolbarGroup`](../glass/GlassEffect.d.ts) | A toolbar group is one glass button: pressing any item lifts the whole group (native). |
|
|
900
|
-
| [`ToolbarSpacer`](../glass/GlassEffect.d.ts) |
|
|
901
|
-
| [`trace`](../glass/lens/trace.d.ts) |
|
|
902
|
-
| [`TransactionCollection`](../data/database.d.ts) | A collection as seen inside `db.transaction`: its writes commit together or not at all. |
|
|
903
|
-
| [`TransitionBinding`](../navigation/types.d.ts) |
|
|
904
|
-
| [`TransitionCompletion`](../navigation/types.d.ts) |
|
|
905
|
-
| [`TransitionController`](../navigation/types.d.ts) |
|
|
906
|
-
| [`TransitionControllerContext`](../navigation/types.d.ts) |
|
|
907
|
-
| [`TransitionControllerFactory`](../navigation/types.d.ts) |
|
|
908
|
-
| [`TransitionOperation`](../navigation/types.d.ts) |
|
|
909
|
-
| [`TransitionPhase`](../navigation/types.d.ts) |
|
|
910
|
-
| [`TypedRoute`](../navigation/routeCodec.d.ts) |
|
|
911
|
-
| [`useFocusChain`](../text-input/focusChain.d.ts) |
|
|
912
|
-
| [`useGlassMaterialDiagnostics`](../glass/context.d.ts) |
|
|
913
|
-
| [`useKeyboardMetrics`](../keyboard/adapter.d.ts) | The software keyboard's live geometry. Most apps never need it: Satin keeps focused fields, bottom insets and bars above the keyboard. |
|
|
914
|
-
| [`useLayoutClass`](../root/runtimeContext.d.ts) | Classes follow the layout viewport; keyboard occlusion and zoom do not select panes. |
|
|
915
|
-
| [`useNavigator`](../navigation/navigationContext.d.ts) |
|
|
916
|
-
| [`useNavigatorState`](../navigation/navigationContext.d.ts) |
|
|
917
|
-
| [`useParams`](../navigation/navigationContext.d.ts) |
|
|
918
|
-
| [`usePushNotifications`](../push/notifications.d.ts) |
|
|
919
|
-
| [`useQuery`](../data/database.d.ts) |
|
|
920
|
-
| [`useReachability`](../reachability/react.d.ts) | The server status and
|
|
921
|
-
| [`useRecord`](../data/database.d.ts) | One record by key, kept live; `data` is undefined while loading and when no record exists. |
|
|
922
|
-
| [`useRestoredState`](../restoration/react.d.ts) | Application/scene values such as the selected tab. Declare schemas outside render. |
|
|
923
|
-
| [`useSafeAreaMetrics`](../safe-area/useSafeAreaMetrics.d.ts) | Full diagnostic geometry, including visual viewport changes. |
|
|
924
|
-
| [`useSatinRuntime`](../root/runtimeContext.d.ts) | Diagnostic readers receive every live coordinate space, independently of root layout. |
|
|
925
|
-
| [`useSceneStorage`](../restoration/react.d.ts) | Entry-scoped state: repeated pushes of the same screen keep independent drafts. |
|
|
926
|
-
| [`useScreenLifecycle`](../navigation/navigationContext.d.ts) | `
|
|
927
|
-
| [`useSplitSelection`](../navigation/splitContext.d.ts) |
|
|
928
|
-
| [`useUnsavedChanges`](../root/runtimeContext.d.ts) |
|
|
929
|
-
| [`validatePushRoute`](../push/routes.d.ts) |
|
|
930
|
-
| [`ValueRow`](../list-form/ListForm.d.ts) |
|
|
931
|
-
| [`warmAppImageWhenIdle`](../app/warmImage.d.ts) |
|
|
932
|
-
| [`Zoomable`](../zoom/Zoomable.d.ts) | A
|
|
933
|
-
| [`ZoomableProps`](../zoom/Zoomable.d.ts) |
|
|
462
|
+
| [`Action`](../actions/types.d.ts) | An entry in a menu, context menu or swipe action list: a command, a titled section of entries, or a submenu. | | |
|
|
463
|
+
| [`ActionItem`](../actions/types.d.ts) | A single command with an id, a label, an optional symbol and role, and an `onPress` handler. Menus, swipe actions, alerts and confirmation dialogs all use it. | | |
|
|
464
|
+
| [`Alert`](../presentation/Presentation.d.ts) | A centred alert with a title, an optional message, up to three actions and an optional text field. | | alert; dialog; popup |
|
|
465
|
+
| [`AlertProps`](../presentation/Presentation.d.ts) | An alert's presentation binding, title, message, actions and optional text field. | | |
|
|
466
|
+
| [`AnyScreenDefinition`](../navigation/types.d.ts) | | | |
|
|
467
|
+
| [`AppDefinition`](../app/definition.d.ts) | A validated app definition, returned by `defineApp`. Pass it to `runApp` and to the Vite plugin. | | |
|
|
468
|
+
| [`AppDeploymentInput`](../app/definition.d.ts) | Resolved app deployment fields, including local or server connectivity. | | |
|
|
469
|
+
| [`Appearance`](../glass/lens/theme.d.ts) | | | |
|
|
470
|
+
| [`AppearanceEvent`](../app/appearanceStore.d.ts) | One entry in the appearance diagnostics log: what happened and the appearance seen then. | | |
|
|
471
|
+
| [`AppShellBuildState`](../sw/registerAppShell.d.ts) | | | |
|
|
472
|
+
| [`AxisLayoutClass`](../layout/layoutClass.d.ts) | | | |
|
|
473
|
+
| [`bindMenuGestures`](../menu/menuGesture.d.ts) | One pointer owns a menu session, including the trigger-to-panel handoff. Native buttons retain their click/keyboard/assistive activation path. Hosts must declare touch-action:none on these gesture owners, never the document. | | |
|
|
474
|
+
| [`BitmapBackdropMode`](../glass/lens/bitmapBackdrop.d.ts) | Measurement fixtures share a decoded bitmap between DOM and GPU sources. | | |
|
|
475
|
+
| [`blendMenuFrames`](../glass/lens/menuMotion.d.ts) | | | |
|
|
476
|
+
| [`BridgeMode`](../glass/renderSpecs.d.ts) | | | |
|
|
477
|
+
| [`ButtonRow`](../list-form/ListForm.d.ts) | | | |
|
|
478
|
+
| [`cancelStackTransition`](../navigation/stack.d.ts) | | | |
|
|
479
|
+
| [`CapsuleShape`](../glass/renderSpecs.d.ts) | | | |
|
|
480
|
+
| [`Choice`](../list-form/ListForm.d.ts) | One option of a `Picker`. | | |
|
|
481
|
+
| [`Chrome`](../root/SatinRoot.d.ts) | Re-enters app-chrome policy inside a Selectable region. | | |
|
|
482
|
+
| [`ChromeBandSpec`](../glass/renderSpecs.d.ts) | | | |
|
|
483
|
+
| [`clampStepper`](../list-form/state.d.ts) | | | |
|
|
484
|
+
| [`collection`](../data/database.d.ts) | Declares a collection of records keyed by one unique string field. The curried form, `collection<Note>()({ key, indexes })`, infers index names. | | |
|
|
485
|
+
| [`Collection`](../data/database.d.ts) | One collection of a database (`db.notes`). Once loaded, writes publish to memory at once, so `useQuery` sees them immediately; the returned promise settles after the durable commit. | | |
|
|
486
|
+
| [`CollectionDefinition`](../data/database.d.ts) | A collection's record type, key and indexes, made by `collection` for `defineDatabase`. | | |
|
|
487
|
+
| [`ConfirmationDialog`](../presentation/Presentation.d.ts) | A titled set of actions, such as Delete and Cancel, shown next to the control that opened it. | | action sheet; delete confirmation |
|
|
488
|
+
| [`ConfirmationDialogProps`](../presentation/Presentation.d.ts) | A confirmation dialog's presentation binding, title, message, actions and optional anchor. | | |
|
|
489
|
+
| [`connectPushRoutes`](../push/urlProjection.d.ts) | Pending taps are acknowledged after acceptance and the optional durability gate. | | |
|
|
490
|
+
| [`ContentPage`](../glass/lens/tabPresentation.d.ts) | | | |
|
|
491
|
+
| [`ContextMenu`](../actions/RowActions.d.ts) | Opens a menu of actions when the user long-presses its content, with an optional custom `preview`. Rows in a `List` take a `contextMenu` prop instead. | | long press menu |
|
|
492
|
+
| [`ContextMenuConfiguration`](../actions/types.d.ts) | The `contextMenu` prop of a row: a list of actions, or actions with a custom `preview`. | | |
|
|
493
|
+
| [`createAnimatedTransitionController`](../navigation/motion.d.ts) | State, besides the lifecycle: - `interactionPhase` (interactive pops): 'held' while the finger owns the page, then 'completing' or 'cancelling' once released. A cancelling pop can be caught again (resumeInteractive) and returns to 'held'. - Who moves the page: a native scroll scrub (`scrollSource`, the private scroller drives scroll-timeline tracks), the frame loop (setProgress writes a pose), or the release and automatic tracks in `activeAnimations`. - `binding`: the elements of the screens it moves, bound after React commits them. A release that arrives before the first binding waits in `pendingRelease`. | | |
|
|
494
|
+
| [`createInstantTransitionController`](../navigation/store.d.ts) | | | |
|
|
495
|
+
| [`createNavigationReleaseTrajectory`](../navigation/releaseTrajectory.d.ts) | | | |
|
|
496
|
+
| [`createNavigator`](../navigation/store.d.ts) | | | |
|
|
497
|
+
| [`CreateNavigatorOptions`](../navigation/store.d.ts) | | | |
|
|
498
|
+
| [`createPushNotifications`](../push/notifications.d.ts) | Create once outside React. Only enable() requests permission, synchronously from a gesture. | | |
|
|
499
|
+
| [`createPushRelayAdapter`](../push/notifications.d.ts) | Obtain a user-scoped token at runtime. Never bundle the relay sender token. | | |
|
|
500
|
+
| [`createRenderSpecs`](../glass/renderSpecs.d.ts) | | | |
|
|
501
|
+
| [`createRouteCodec`](../navigation/routeCodec.d.ts) | Each route is independently versioned so updates keep the deepest valid ancestor. | | |
|
|
502
|
+
| [`createSceneRestoration`](../restoration/scene.d.ts) | | | |
|
|
503
|
+
| [`createScreenRegistry`](../navigation/registry.d.ts) | | | |
|
|
504
|
+
| [`createSurfaceClipPath`](../glass/renderSpecs.d.ts) | | | |
|
|
505
|
+
| [`decodePushRoute`](../push/routes.d.ts) | | | |
|
|
506
|
+
| [`defineApp`](../app/definition.d.ts) | Validates a full app definition and fills in its defaults. `defineApp` uses it; lab fixtures call it directly. | | app manifest; app config |
|
|
507
|
+
| [`defineDatabase`](../data/database.d.ts) | Opens the app's local database, stored in IndexedDB. Each collection becomes a property of the result. Bump `version` with a migration whenever the schema changes. Export and import are built in, so offer them to the user. | | local database; offline storage; IndexedDB |
|
|
508
|
+
| [`defineScreen`](../navigation/registry.d.ts) | | | |
|
|
509
|
+
| [`DetailList`](../navigation/DetailList.d.ts) | A grouped list of rows for a split view's detail column at regular width. | | |
|
|
510
|
+
| [`DirectCanvasElements`](../glass/renderSpecs.d.ts) | | | |
|
|
511
|
+
| [`DisclosureIndicator`](../settings/DisclosureIndicator.d.ts) | Framework7 disclosure artwork; framework layout still owns the row aperture. | | |
|
|
512
|
+
| [`DisclosureIndicatorProps`](../settings/DisclosureIndicator.d.ts) | Props for `DisclosureIndicator`. | | |
|
|
513
|
+
| [`dismissKeyboard`](../keyboard/adapter.d.ts) | | | |
|
|
514
|
+
| [`DisplayCornerMetrics`](../safe-area/displayCorners.d.ts) | The screen's corner radius in points, with how sure Satin is of the model. | | |
|
|
515
|
+
| [`DisplayGeometry`](../safe-area/displayCorners.d.ts) | Display geometry in CSS points. Supply the physical screen, not the app window. | | |
|
|
516
|
+
| [`drawGlassBitmapBackdrop`](../glass/lens/bitmapBackdrop.d.ts) | | | |
|
|
517
|
+
| [`drawReferenceBackground`](../glass/lens/referenceBackground.d.ts) | | | |
|
|
518
|
+
| [`EdgeInsets`](../safe-area/useSafeAreaMetrics.d.ts) | Insets in CSS pixels, by physical edge. | | |
|
|
519
|
+
| [`encodePushRoute`](../push/routes.d.ts) | | | |
|
|
520
|
+
| [`EntryTransition`](../navigation/types.d.ts) | | | |
|
|
521
|
+
| [`estimateStorage`](../data/database.d.ts) | The app's storage usage and quota in bytes, when WebKit reports them. | | |
|
|
522
|
+
| [`evaluateTemporalSpline`](../glass/lens/liquidMotion.d.ts) | | | |
|
|
523
|
+
| [`ExportDocument`](../data/database.d.ts) | The JSON document `exportJSON` writes and `importJSON` reads. | | |
|
|
524
|
+
| [`finishStackTransition`](../navigation/stack.d.ts) | | | |
|
|
525
|
+
| [`getGlassErrors`](../glass/errors.d.ts) | | | |
|
|
526
|
+
| [`Glass`](../glass/regions.d.ts) | Immutable glass material values. RGBA channels use the range 0...1. | | |
|
|
527
|
+
| [`GLASS_BAR_EDGE_HIGHLIGHT_ALPHA`](../glass/tokens.d.ts) | | | |
|
|
528
|
+
| [`GLASS_BAR_HEIGHT_PX`](../glass/tokens.d.ts) | | | |
|
|
529
|
+
| [`GLASS_BAR_SHADOW_ALPHA`](../glass/tokens.d.ts) | | | |
|
|
530
|
+
| [`GLASS_CIRCLE_INLINE_INSET_PX`](../glass/lens/Scene.d.ts) | | | |
|
|
531
|
+
| [`GLASS_CIRCLE_SIZE_PX`](../glass/lens/Scene.d.ts) | | | |
|
|
532
|
+
| [`GLASS_CIRCLE_TOP_PX`](../glass/lens/Scene.d.ts) | | | |
|
|
533
|
+
| [`GLASS_CLEAR_BRIGHTNESS`](../glass/tokens.d.ts) | | | |
|
|
534
|
+
| [`GLASS_CLEAR_SATURATION`](../glass/tokens.d.ts) | | | |
|
|
535
|
+
| [`GLASS_CLEAR_TINT_ALPHA`](../glass/tokens.d.ts) | | | |
|
|
536
|
+
| [`GLASS_CONTROL_SIZE_PX`](../glass/tokens.d.ts) | | | |
|
|
537
|
+
| [`GLASS_DOCK_BOTTOM_GAP_PX`](../glass/lens/Scene.d.ts) | | | |
|
|
538
|
+
| [`GLASS_DOCK_HEIGHT_PX`](../glass/lens/Scene.d.ts) | | | |
|
|
539
|
+
| [`GLASS_DOCK_RADIUS_PX`](../glass/lens/Scene.d.ts) | | | |
|
|
540
|
+
| [`GLASS_DOCK_SIDE_INSET_PX`](../glass/lens/Scene.d.ts) | | | |
|
|
541
|
+
| [`GLASS_DOCK_WIDTH_PX`](../glass/lens/Scene.d.ts) | | | |
|
|
542
|
+
| [`GLASS_LENS_BLUR_PX`](../glass/tokens.d.ts) | | | |
|
|
543
|
+
| [`GLASS_LENS_CHROMATIC_ABERRATION`](../glass/tokens.d.ts) | | | |
|
|
544
|
+
| [`GLASS_LENS_CURVATURE`](../glass/tokens.d.ts) | | | |
|
|
545
|
+
| [`GLASS_LENS_DEPTH_PX`](../glass/tokens.d.ts) | | | |
|
|
546
|
+
| [`GLASS_LENS_EDGE_EXPONENT`](../glass/tokens.d.ts) | | | |
|
|
547
|
+
| [`GLASS_LENS_EDGE_HIGHLIGHT`](../glass/tokens.d.ts) | | | |
|
|
548
|
+
| [`GLASS_LENS_EDGE_WIDTH_PX`](../glass/tokens.d.ts) | | | |
|
|
549
|
+
| [`GLASS_LENS_GLOW`](../glass/tokens.d.ts) | | | |
|
|
550
|
+
| [`GLASS_LENS_GLOW_EXPONENT`](../glass/tokens.d.ts) | | | |
|
|
551
|
+
| [`GLASS_LENS_GLOW_SPREAD`](../glass/tokens.d.ts) | | | |
|
|
552
|
+
| [`GLASS_LENS_SPECULAR`](../glass/tokens.d.ts) | | | |
|
|
553
|
+
| [`GLASS_LENS_SPECULAR_ANGLE_DEG`](../glass/tokens.d.ts) | | | |
|
|
554
|
+
| [`GLASS_LENS_SPLAY`](../glass/tokens.d.ts) | | | |
|
|
555
|
+
| [`GLASS_LENS_STRENGTH`](../glass/tokens.d.ts) | | | |
|
|
556
|
+
| [`GLASS_OVERSCAN_X_PX`](../glass/lens/Scene.d.ts) | | | |
|
|
557
|
+
| [`GLASS_OVERSCAN_Y_PX`](../glass/lens/Scene.d.ts) | | | |
|
|
558
|
+
| [`GLASS_REGION_LIMIT`](../glass/regions.d.ts) | Provisional allocation guard, not a measured device performance promise. Two 440×894 sheets at 3× with 20pt sample margins need 8,069,760 pixels. The 12M guard permits that stack plus chrome; it is not a memory benchmark. | | |
|
|
559
|
+
| [`GLASS_REGION_PIXEL_LIMIT`](../glass/regions.d.ts) | | | |
|
|
560
|
+
| [`GLASS_REGULAR_BRIGHTNESS`](../glass/tokens.d.ts) | | | |
|
|
561
|
+
| [`GLASS_REGULAR_SATURATION`](../glass/tokens.d.ts) | | | |
|
|
562
|
+
| [`GLASS_REGULAR_TINT_ALPHA`](../glass/tokens.d.ts) | | | |
|
|
563
|
+
| [`GLASS_RIM_HIGHLIGHT_ALPHA`](../glass/tokens.d.ts) | | | |
|
|
564
|
+
| [`GLASS_RIM_SHADOW_ALPHA`](../glass/tokens.d.ts) | | | |
|
|
565
|
+
| [`GLASS_SELECTION_DURATION_MS`](../glass/tokens.d.ts) | | | |
|
|
566
|
+
| [`GLASS_SELECTION_EASING`](../glass/tokens.d.ts) | | | |
|
|
567
|
+
| [`GLASS_TAB_BAR_BOTTOM_GAP_PX`](../glass/tokens.d.ts) | | | |
|
|
568
|
+
| [`GLASS_TAB_BAR_HEIGHT_PX`](../glass/tokens.d.ts) | | | |
|
|
569
|
+
| [`GLASS_TAB_BAR_INLINE_INSET_PX`](../glass/tokens.d.ts) | | | |
|
|
570
|
+
| [`GLASS_TINT_RGB`](../glass/tokens.d.ts) | | | |
|
|
571
|
+
| [`GlassAccessibilityPreferences`](../glass/capability.d.ts) | | | |
|
|
572
|
+
| [`GlassBackground`](../glass/GlassEffect.d.ts) | Framework chrome can keep its existing DOM geometry and transition refs. An `interactive` chrome button's glass (back, close, sidebar) takes the finger through the same contact path as every interactive glass, as a bar button: the touch anywhere on its button presses it. | | |
|
|
573
|
+
| [`GlassBar`](../glass/GlassBar.d.ts) | | | |
|
|
574
|
+
| [`GlassBarProps`](../glass/GlassBar.d.ts) | Props for `GlassBar`. | | |
|
|
575
|
+
| [`glassBlendRadius`](../glass/fieldGeometry.d.ts) | Sequential native frames bracket contact at 4.50–5.04, 9.23–10.57, 18.53–20.94, 36.56–41.92 pt. See phase-morph-engine-notes.md. Polynomial smooth-min joins equal members at gap = k/2. | | |
|
|
576
|
+
| [`GlassButton`](../glass/GlassEffect.d.ts) | | | |
|
|
577
|
+
| [`GlassCapabilityDecision`](../glass/capability.d.ts) | | | |
|
|
578
|
+
| [`GlassCapabilityState`](../glass/capability.d.ts) | | | |
|
|
579
|
+
| [`GlassConfusionReview`](../glass/GlassConfusionReview.d.ts) | | | |
|
|
580
|
+
| [`GlassContainer`](../glass/GlassEffect.d.ts) | | | |
|
|
581
|
+
| [`GlassDisplacementPolicy`](../glass/GlassMaterialRoot.d.ts) | | | |
|
|
582
|
+
| [`glassDockHeight`](../glass/lens/Scene.d.ts) | | | |
|
|
583
|
+
| [`glassDockWidth`](../glass/lens/Scene.d.ts) | The tab platter's width: the one rule for the glass renderer and the tab slot it reads. | | |
|
|
584
|
+
| [`GlassEffect`](../glass/GlassEffect.d.ts) | Local content remains DOM-owned; only the material canvas is painted by reference. | | glass; refraction |
|
|
585
|
+
| [`GlassEffectContainer`](../glass/GlassEffect.d.ts) | Groups nearby glass effects so they render together and blend or morph into one another. `spacing`, 20 pt by default, sets how close effects must be to merge. | | glass morph; glass group |
|
|
586
|
+
| [`GlassEffectProps`](../glass/GlassEffect.d.ts) | Props for `GlassEffect`. | | |
|
|
587
|
+
| [`GlassError`](../glass/errors.d.ts) | One glass renderer failure: its code, message, the stage it happened in and when. | | |
|
|
588
|
+
| [`GlassErrorCode`](../glass/errors.d.ts) | Why the glass renderer failed, such as `gpu-unavailable` or `device-lost`. In a release build a failure can switch glass to the fallback material. | | |
|
|
589
|
+
| [`glassFieldDistance`](../glass/fieldGeometry.d.ts) | Returns the signed distance to the diagnostic glass union in points. | | |
|
|
590
|
+
| [`GlassFieldMember`](../glass/fieldGeometry.d.ts) | Geometry in frame-local CSS pixels; independent of any renderer. | | |
|
|
591
|
+
| [`GlassFrameTrace`](../glass/renderSpecs.d.ts) | | | |
|
|
592
|
+
| [`GlassInteraction`](../glass/rendererContract.d.ts) | | | |
|
|
593
|
+
| [`GlassLayer`](../glass/GlassEffect.d.ts) | Place this inside the matching ScrollSurface for scroll attachment. | | |
|
|
594
|
+
| [`GlassLayerDescriptor`](../glass/regions.d.ts) | Serializable renderer contract. No DOM, Pixi, or GPU handles cross this boundary. | | |
|
|
595
|
+
| [`GlassMaterial`](../glass/regions.d.ts) | | | |
|
|
596
|
+
| [`GlassMaterialDiagnostics`](../glass/context.d.ts) | | | |
|
|
597
|
+
| [`GlassMaterialResponse`](../glass/rendererContract.d.ts) | | | |
|
|
598
|
+
| [`GlassOutlinePoint`](../glass/unionOutline.d.ts) | One point in a diagnostic glass outline, in field coordinates. | | |
|
|
599
|
+
| [`GlassPresenter`](../glass/rendererContract.d.ts) | | | |
|
|
600
|
+
| [`GlassRegion`](../glass/regions.d.ts) | | | |
|
|
601
|
+
| [`GlassRendererDiagnostics`](../glass/rendererContract.d.ts) | | | |
|
|
602
|
+
| [`GlassRendererReply`](../glass/rendererContract.d.ts) | Worker failures must retain raw messages and device-loss reasons. | | |
|
|
603
|
+
| [`GlassRendererRequest`](../glass/rendererContract.d.ts) | | | |
|
|
604
|
+
| [`GlassRenderTestState`](../glass/capability.d.ts) | | | |
|
|
605
|
+
| [`GlassSceneSnapshot`](../glass/regions.d.ts) | Each layer can own multiple presenters. WebGPU shares one device across canvases. | | |
|
|
606
|
+
| [`GlassScrollSnapshot`](../glass/regions.d.ts) | | | |
|
|
607
|
+
| [`GlassSearchField`](../glass/GlassTextField.d.ts) | | | |
|
|
608
|
+
| [`GlassShape`](../glass/regions.d.ts) | | | |
|
|
609
|
+
| [`GlassSource`](../glass/rendererContract.d.ts) | | | |
|
|
610
|
+
| [`GlassSpecimen`](../glass/GlassPresentation.d.ts) | Shared semantic DOM and runtime ownership. Probe controls are testing-only. | | |
|
|
611
|
+
| [`GlassTextField`](../glass/GlassTextField.d.ts) | Shares the 12b editing/IME/keyboard-intent contract. Glass never captures field touches. | | |
|
|
612
|
+
| [`GlassTextFieldProps`](../glass/GlassTextField.d.ts) | Props for `GlassTextField`. | | |
|
|
613
|
+
| [`GlassTint`](../glass/regions.d.ts) | A glass tint as red, green, blue and alpha channels from 0 to 1. `Glass.tintRGBA` rejects values outside that range. | | |
|
|
614
|
+
| [`glassTokens`](../glass/tokens.d.ts) | | | |
|
|
615
|
+
| [`GlassTouchLight`](../glass/renderSpecs.d.ts) | A sampled light field, independent of the renderer and of row selection. Coordinates and radius are CSS pixels relative to the surface frame. | | |
|
|
616
|
+
| [`GlassUnionFrame`](../glass/fieldGeometry.d.ts) | A diagnostic glass union outline and its bounds in field coordinates. | | |
|
|
617
|
+
| [`glassUnionOutline`](../glass/unionOutline.d.ts) | Closed contours, including disconnected members. Coordinates use the frame's local CSS pixels. Diagnostic/export operation: never run it in the render loop. Marching triangles avoid ambiguous saddle cells; roots use the shader's field. | | |
|
|
618
|
+
| [`GlassVariant`](../glass/tokens.d.ts) | | | |
|
|
619
|
+
| [`ICON_GRADIENTS`](../glass/lens/theme.d.ts) | | | |
|
|
620
|
+
| [`ICON_SVG`](../glass/lens/icons.d.ts) | | | |
|
|
621
|
+
| [`InstallationDiagnostics`](../app/InstallationDiagnostics.d.ts) | Shows the app's installation receipts, for an optional diagnostics screen in Settings. Pass the app's scope. | | |
|
|
622
|
+
| [`InstallationFailure`](../app/installationFailure.d.ts) | An installation failure recorded before the app launched: the build, the URL, the reason and whether the network failed. | | |
|
|
623
|
+
| [`installMotionProbe`](../motionProbe.d.ts) | Install once before app mount; dispose restores the original rAF function. | | |
|
|
624
|
+
| [`InteractivePopDiagnostic`](../navigation/interactivePopTypes.d.ts) | | | |
|
|
625
|
+
| [`isBitmapBackdrop`](../glass/lens/bitmapBackdrop.d.ts) | | | |
|
|
626
|
+
| [`isCalibratedMaxLayout`](../glass/lens/Scene.d.ts) | | | |
|
|
627
|
+
| [`isTintBackgroundMode`](../glass/lens/referenceBackground.d.ts) | | | |
|
|
628
|
+
| [`KeyboardGeometry`](../keyboard/geometry.d.ts) | How much the keyboard covers, whether it shows, and the viewport size, in points. | | |
|
|
629
|
+
| [`lastUnstableMeasurement`](../glass/lens/Scene.d.ts) | | | |
|
|
630
|
+
| [`LayoutClass`](../layout/layoutClass.d.ts) | | | |
|
|
631
|
+
| [`LensMode`](../glass/renderSpecs.d.ts) | | | |
|
|
632
|
+
| [`LIQUID_ENVELOPES`](../glass/lens/liquidMotion.d.ts) | | | |
|
|
633
|
+
| [`LIQUID_PILL_BAR`](../glass/lens/liquidMotion.d.ts) | | | |
|
|
634
|
+
| [`LIQUID_SCRIPT`](../glass/lens/liquidMotion.d.ts) | | | |
|
|
635
|
+
| [`liquidAnimationActive`](../glass/lens/liquidMotion.d.ts) | | | |
|
|
636
|
+
| [`LiquidMotionMode`](../glass/lens/liquidMotion.d.ts) | | | |
|
|
637
|
+
| [`liquidScriptDuration`](../glass/lens/liquidMotion.d.ts) | | | |
|
|
638
|
+
| [`List`](../list-form/ListForm.d.ts) | | | list; rows; pull to refresh; swipe actions |
|
|
639
|
+
| [`ListEngineProps`](../list-form/ListForm.d.ts) | Props for `ListEngine`. | | |
|
|
640
|
+
| [`makeReferenceBackgroundCanvas`](../glass/lens/referenceBackground.d.ts) | | | |
|
|
641
|
+
| [`MARKER_INTERVAL_PX`](../glass/lens/mirrorConstants.d.ts) | | | |
|
|
642
|
+
| [`measureMirrorLayout`](../glass/lens/Scene.d.ts) | | | |
|
|
643
|
+
| [`measureMirrorLayoutRelative`](../glass/lens/Scene.d.ts) | A host whose origin moves on every read (a route inside a running navigation transform) never passes the absolute-origin check. Its own layout is still stable: two consecutive snapshots with identical host-relative geometry are a consistent reading, whatever the origin did. Additive; measureMirrorLayout is unchanged. | | |
|
|
644
|
+
| [`Menu`](../glass/Menu.d.ts) | | | dropdown menu; more button |
|
|
645
|
+
| [`MENU_BUTTON`](../glass/lens/menuMotion.d.ts) | | | |
|
|
646
|
+
| [`MENU_CADENCE`](../glass/lens/menuMotion.d.ts) | | | |
|
|
647
|
+
| [`MENU_ENVELOPE`](../glass/lens/menuMotion.d.ts) | | | |
|
|
648
|
+
| [`MENU_GESTURE_REST`](../menu/menuGesture.d.ts) | | | |
|
|
649
|
+
| [`MENU_ICON_SVG`](../glass/lens/icons.d.ts) | | | |
|
|
650
|
+
| [`MENU_MOTION_DURATIONS`](../glass/lens/menuMotion.d.ts) | | | |
|
|
651
|
+
| [`MENU_PANEL`](../glass/lens/menuMotion.d.ts) | | | |
|
|
652
|
+
| [`MENU_TAP_FEEDBACK_MS`](../menu/menuGesture.d.ts) | | | |
|
|
653
|
+
| [`menuCadenceDuration`](../glass/lens/menuMotion.d.ts) | | | |
|
|
654
|
+
| [`MenuDirection`](../glass/lens/menuMotion.d.ts) | | | |
|
|
655
|
+
| [`MenuGestureDecision`](../menu/menuGesture.d.ts) | | | |
|
|
656
|
+
| [`MenuGestureFrame`](../menu/menuGesture.d.ts) | | | |
|
|
657
|
+
| [`MenuGestureMotion`](../menu/menuGesture.d.ts) | | | |
|
|
658
|
+
| [`menuHighlightAttack`](../menu/menuGesture.d.ts) | | | |
|
|
659
|
+
| [`MenuInteraction`](../menu/menuInteraction.d.ts) | | | |
|
|
660
|
+
| [`MenuInteractionPhase`](../menu/menuInteraction.d.ts) | Synchronous ownership of a menu transition. React renders its snapshot; event handlers use this model so two events in one task cannot both submit. Completion tokens prevent an interrupted window's timer settling its successor. | | |
|
|
661
|
+
| [`menuMaterialProgress`](../glass/lens/menuMotion.d.ts) | | | |
|
|
662
|
+
| [`MenuMotionFrame`](../glass/lens/menuMotion.d.ts) | | | |
|
|
663
|
+
| [`MenuPanelBounds`](../menu/menuGesture.d.ts) | | | |
|
|
664
|
+
| [`menuPanelPull`](../menu/menuGesture.d.ts) | Fit to axis controls plus the held diagonal, with its origin in the panel's resting coordinate space. Over-pull begins outside the panel; the anchored right edge couples vertical stretch to horizontal displacement. | | |
|
|
665
|
+
| [`MenuProps`](../glass/menuPresenter.d.ts) | Props for `Menu`. | | |
|
|
666
|
+
| [`menuPull`](../glass/contactPhysics.d.ts) | | | |
|
|
667
|
+
| [`menuRetargetTime`](../glass/lens/menuMotion.d.ts) | Restart an interrupted transition near the current geometry, not at its opposite endpoint. This is an interruption policy, not a native timing fit. | | |
|
|
668
|
+
| [`menuReturn`](../glass/contactPhysics.d.ts) | | | |
|
|
669
|
+
| [`MenuTriggerProps`](../glass/menuPresenter.d.ts) | The props a custom `Menu` trigger receives. Forward all of them to the element that opens the menu. | | |
|
|
670
|
+
| [`MirrorCaptureRange`](../glass/lens/Scene.d.ts) | DOM geometry is authoritative. This function is only called after layout changes. | | |
|
|
671
|
+
| [`MirrorLayout`](../glass/lens/Scene.d.ts) | | | |
|
|
672
|
+
| [`MirrorNode`](../glass/lens/Scene.d.ts) | | | |
|
|
673
|
+
| [`MorphEllipsisArtwork`](../glass/MorphEllipsisArtwork.d.ts) | The enclosing control owns the accessible label. | | |
|
|
674
|
+
| [`MOTION_SPEC`](../glass/lens/motion.d.ts) | | | |
|
|
675
|
+
| [`MotionRun`](../glass/lens/motion.d.ts) | | | |
|
|
676
|
+
| [`MotionSample`](../glass/lens/motion.d.ts) | | | |
|
|
677
|
+
| [`mountGlassWorkerExperiment`](../glass/worker/experiment.d.ts) | | | |
|
|
678
|
+
| [`mountSatin`](../root/mountSatin.d.ts) | Mount once from the app entry point, after resolving its initial screen. After managed styles load, the first commit runs synchronously so WebKit cannot defer it behind its launch presentation. Later updates retain React's normal scheduling. Do not call from a component or an effect, or suspend the initial screen. | | |
|
|
679
|
+
| [`NATIVE_WIDGET_Y_REGISTRATION_PX`](../glass/lens/motion.d.ts) | | | |
|
|
680
|
+
| [`NAVIGATION_CURRENT_SEGMENT_WEIGHT`](../navigation/releaseVelocity.d.ts) | | | |
|
|
681
|
+
| [`NAVIGATION_DIM_OPACITY`](../navigation/motionTokens.d.ts) | | | |
|
|
682
|
+
| [`NAVIGATION_DIRECTION_LOCK_PX`](../navigation/motionTokens.d.ts) | Chosen inside UIKit's observed 10-12 point direction-lock window. | | |
|
|
683
|
+
| [`NAVIGATION_DURATION_MS`](../navigation/motionTokens.d.ts) | Measured from the iOS 26.5 Settings app on iPhone 17 Pro. | | |
|
|
684
|
+
| [`NAVIGATION_EASING`](../navigation/motionTokens.d.ts) | | | |
|
|
685
|
+
| [`NAVIGATION_EDGE_SHADOW_OPACITY`](../navigation/motionTokens.d.ts) | | | |
|
|
686
|
+
| [`NAVIGATION_EDGE_SHADOW_WIDTH_PX`](../navigation/motionTokens.d.ts) | | | |
|
|
687
|
+
| [`NAVIGATION_HORIZONTAL_INTENT_PX`](../navigation/motionTokens.d.ts) | | | |
|
|
688
|
+
| [`NAVIGATION_PARALLAX_FRACTION`](../navigation/motionTokens.d.ts) | | | |
|
|
689
|
+
| [`NAVIGATION_POSITION_THRESHOLD`](../navigation/motionTokens.d.ts) | Legacy non-touch fallback. Installed touch uses releaseDecision statistics. | | |
|
|
690
|
+
| [`NAVIGATION_PREVIOUS_SEGMENT_WEIGHT`](../navigation/releaseVelocity.d.ts) | | | |
|
|
691
|
+
| [`NAVIGATION_RELEASE_SAMPLE_RATE_HZ`](../navigation/releaseTrajectory.d.ts) | | | |
|
|
692
|
+
| [`NAVIGATION_RELEASE_SPRING_DAMPING`](../navigation/releaseTrajectory.d.ts) | | | |
|
|
693
|
+
| [`NAVIGATION_RELEASE_SPRING_MASS`](../navigation/releaseTrajectory.d.ts) | | | |
|
|
694
|
+
| [`NAVIGATION_RELEASE_SPRING_STIFFNESS`](../navigation/releaseTrajectory.d.ts) | iOS 27 fluid parallax settings; recorded and independently fitted in 11d. | | |
|
|
695
|
+
| [`NAVIGATION_VELOCITY_THRESHOLD_PX_PER_SECOND`](../navigation/motionTokens.d.ts) | | | |
|
|
696
|
+
| [`NavigationBackButtonBehavior`](../navigation/types.d.ts) | Whether a pushed screen shows its back button. `automatic` shows it; `hidden` removes it. | | |
|
|
697
|
+
| [`NavigationBarDefinition`](../navigation/types.d.ts) | | | |
|
|
698
|
+
| [`navigationMotionTokens`](../navigation/motionTokens.d.ts) | | | |
|
|
699
|
+
| [`NavigationReleaseSample`](../navigation/releaseTrajectory.d.ts) | | | |
|
|
700
|
+
| [`NavigationReleaseTrajectory`](../navigation/releaseTrajectory.d.ts) | | | |
|
|
701
|
+
| [`NavigationRow`](../list-form/ListForm.d.ts) | | | |
|
|
702
|
+
| [`NavigatorActions`](../navigation/store.d.ts) | | | |
|
|
703
|
+
| [`NavigatorHost`](../navigation/NavigatorHost.d.ts) | | | |
|
|
704
|
+
| [`NavigatorHostProps`](../navigation/NavigatorHost.d.ts) | Props for `NavigatorHost`. | | |
|
|
705
|
+
| [`NavigatorState`](../navigation/types.d.ts) | | | |
|
|
706
|
+
| [`NavigatorStore`](../navigation/store.d.ts) | | | |
|
|
707
|
+
| [`newId`](../data/database.d.ts) | A new unique record id that sorts by creation time. | | |
|
|
708
|
+
| [`normalizeNavigationReleaseVelocity`](../navigation/releaseTrajectory.d.ts) | UIKit's convention: axis velocity divided by signed distance to target. | | |
|
|
709
|
+
| [`OfflinePresentation`](../reachability/react.d.ts) | | | |
|
|
710
|
+
| [`OfflinePresentationProps`](../reachability/react.d.ts) | What the offline view shows: why the server is unavailable, how it is presented, and the recheck and back actions. | | |
|
|
711
|
+
| [`PALETTES`](../glass/lens/theme.d.ts) | | | |
|
|
712
|
+
| [`PickerOptions`](../list-form/ListForm.d.ts) | | | |
|
|
713
|
+
| [`PickerRow`](../list-form/ListForm.d.ts) | | | |
|
|
714
|
+
| [`PickerRowProps`](../list-form/ListForm.d.ts) | Props for `PickerRow`. | | |
|
|
715
|
+
| [`popStack`](../navigation/stack.d.ts) | | | |
|
|
716
|
+
| [`popToRootStack`](../navigation/stack.d.ts) | | | |
|
|
717
|
+
| [`prepareGlassBitmapBackdrop`](../glass/lens/bitmapBackdrop.d.ts) | | | |
|
|
718
|
+
| [`prepareSceneRoutes`](../restoration/routes.d.ts) | Call before mount. Explicit launch intent wins over the checkpoint. | | |
|
|
719
|
+
| [`PresentationDetent`](../presentation/model.d.ts) | A height a sheet can rest at: `medium`, `large`, a fixed `height` in points or a `fraction` of the available height. | | |
|
|
720
|
+
| [`PresentationKind`](../navigation/types.d.ts) | | | |
|
|
721
|
+
| [`PresentationProps`](../presentation/Presentation.d.ts) | The presentation binding, accessible title and dismissal callback shared by presentations. | | |
|
|
722
|
+
| [`Pressable`](../press/Pressable.d.ts) | A plain tap target with no button chrome. It dims while pressed, and a touch that turns into a scroll does not fire `onPress`. Use it for custom tappable content. | | |
|
|
723
|
+
| [`PRESSABLE_PRESS_IN_DURATION_MS`](../press/tokens.d.ts) | The first changed reference frame was already at the pressed plateau. | | |
|
|
724
|
+
| [`PRESSABLE_PRESSED_OPACITY`](../press/tokens.d.ts) | Measured from PressableReference on iPhone 17 Pro / iOS 26.5. | | |
|
|
725
|
+
| [`PRESSABLE_RELEASE_DURATION_MS`](../press/tokens.d.ts) | native reference release returned to rest in 400-418 ms at 60 Hz. | | |
|
|
726
|
+
| [`PRESSABLE_RELEASE_EASING`](../press/tokens.d.ts) | Closest named curve to the measured decelerating release envelope. | | |
|
|
727
|
+
| [`PRESSABLE_RETENTION_OFFSET_PX`](../press/tokens.d.ts) | Native plain-Button retention measured 69 points beyond the label bounds. | | |
|
|
728
|
+
| [`PressableProps`](../press/Pressable.d.ts) | A pressable's `onPress` action, content and press feedback. An `iconOnly` pressable needs an `aria-label`. | | |
|
|
729
|
+
| [`pressableTokens`](../press/tokens.d.ts) | | | |
|
|
730
|
+
| [`PressState`](../press/stateMachine.d.ts) | Whether a press is `idle`, held down (`pressed`) or cancelled (`deactivated`). | | |
|
|
731
|
+
| [`previousTrace`](../glass/lens/trace.d.ts) | | | |
|
|
732
|
+
| [`PushNotifications`](../push/notifications.d.ts) | | | |
|
|
733
|
+
| [`PushNotificationsLifecycle`](../push/PushPermissionExplainer.d.ts) | Mount at the app root so renewals reconcile even when Settings is not visible. | | |
|
|
734
|
+
| [`PushNotificationState`](../push/notifications.d.ts) | | | |
|
|
735
|
+
| [`PushPermissionExplainer`](../push/PushPermissionExplainer.d.ts) | | | |
|
|
736
|
+
| [`PushRelayTokenField`](../push/PushPermissionExplainer.d.ts) | A runtime user credential, never a build-time VITE secret. Keep its value in memory. | | |
|
|
737
|
+
| [`PushRoute`](../push/routes.d.ts) | Shared, validated route codec. No navigation or browser history side effects. | | |
|
|
738
|
+
| [`PushRouteRules`](../push/routes.d.ts) | | | |
|
|
739
|
+
| [`PushServerAdapter`](../push/notifications.d.ts) | | | |
|
|
740
|
+
| [`pushStack`](../navigation/stack.d.ts) | | | |
|
|
741
|
+
| [`PushSubscriptionPayload`](../push/notifications.d.ts) | | | |
|
|
742
|
+
| [`Query`](../data/database.d.ts) | An immutable query over a collection: `index`, `keyRange`, `reverse`, `limit` and `filter` each return a new query. `useQuery` hands one to its configure callback. | | |
|
|
743
|
+
| [`readAppearanceDiagnostics`](../app/appearance.d.ts) | Returns a short log of appearance changes and lifecycle events, for diagnosing appearance after a resume. | | |
|
|
744
|
+
| [`readDisplayCornerMetrics`](../safe-area/displayCorners.d.ts) | Framework token for the screen containing this app. Display Zoom and unknown models fall back to zero. | | |
|
|
745
|
+
| [`readInstallationFailure`](../app/installationFailure.d.ts) | Reads the last recorded installation failure for an app scope, or null when there is none. | | |
|
|
746
|
+
| [`readSafeAreaMetrics`](../safe-area/useSafeAreaMetrics.d.ts) | | | |
|
|
747
|
+
| [`readSceneValue`](../restoration/scene.d.ts) | | | |
|
|
748
|
+
| [`REFERENCE_CONTENT_HEIGHT_PX`](../glass/lens/referenceBackground.d.ts) | | | |
|
|
749
|
+
| [`ReferenceBackgroundMode`](../glass/lens/referenceBackground.d.ts) | | | |
|
|
750
|
+
| [`ReferenceBackgroundScene`](../glass/lens/Scene.d.ts) | | | |
|
|
751
|
+
| [`registerAppShell`](../sw/registerAppShell.d.ts) | | | |
|
|
752
|
+
| [`RegisterAppShellOptions`](../sw/registerAppShell.d.ts) | | | |
|
|
753
|
+
| [`registerGlassBitmapBackdrop`](../glass/lens/bitmapBackdrop.d.ts) | | | |
|
|
754
|
+
| [`RegistryScreenEntry`](../navigation/store.d.ts) | | | |
|
|
755
|
+
| [`REGULAR_TRIGGER_MATERIAL`](../glass/regularTriggerMaterial.d.ts) | | | |
|
|
756
|
+
| [`REGULAR_TRIGGER_MATERIAL_GLSL`](../glass/regularTriggerMaterial.d.ts) | | | |
|
|
757
|
+
| [`REGULAR_TRIGGER_RIM_CURVES`](../glass/regularTriggerRim.d.ts) | | | |
|
|
758
|
+
| [`RegularMaterialContext`](../glass/regularMaterialContext.d.ts) | A retained source-image index. No DOM reads, GPU readbacks or canvas writes occur when an aperture moves. Disc rows are clipped and renormalized against the visible window, not extended by repeating the boundary pixel. | | |
|
|
759
|
+
| [`regularTriggerRegime`](../glass/regularTriggerMaterial.d.ts) | | | |
|
|
760
|
+
| [`regularTriggerRimResponse`](../glass/regularTriggerRim.d.ts) | | | |
|
|
761
|
+
| [`releaseWarmedAppImages`](../app/warmImage.d.ts) | Release URLs when the app document closes, or explicitly when its image set changes. | | |
|
|
762
|
+
| [`replaceStack`](../navigation/stack.d.ts) | | | |
|
|
763
|
+
| [`reportGlassError`](../glass/errors.d.ts) | | | |
|
|
764
|
+
| [`requestPersistentStorage`](../data/database.d.ts) | Asks WebKit not to evict the app's data under storage pressure; true when granted. | | |
|
|
765
|
+
| [`resolveDisplayCornerMetrics`](../safe-area/displayCorners.d.ts) | Resolution is not a model identifier. Unknown and asymmetric displays use the scalar fallback. | | |
|
|
766
|
+
| [`ReturningMenuTrigger`](../glass/renderSpecs.d.ts) | | | |
|
|
767
|
+
| [`RouteSchema`](../navigation/routeCodec.d.ts) | | | |
|
|
768
|
+
| [`Row`](../list-form/ListForm.d.ts) | | | |
|
|
769
|
+
| [`RowActions`](../actions/RowActions.d.ts) | A row's swipe actions and context menu. Inside an editable `List` item, the item owns the row's one gesture host (it adds swipe-to-delete), so the row hands its actions to the item instead of hosting a second recognizer. Swipe actions are unavailable while the list is editing, as in selection; the context menu stays. | | |
|
|
770
|
+
| [`RowActionsProps`](../actions/types.d.ts) | Row swipe actions and context-menu commands. | | |
|
|
771
|
+
| [`RowIcon`](../list-form/ListForm.d.ts) | A Settings-style icon: a white symbol on a rounded colour tile, for a row's leading edge. | | settings icon |
|
|
772
|
+
| [`RowIconProps`](../list-form/ListForm.d.ts) | The symbol and its tile colour: a system colour name or any CSS colour. | | |
|
|
773
|
+
| [`RowProps`](../list-form/ListForm.d.ts) | Props for `Row`. | | |
|
|
774
|
+
| [`runScriptedDrag`](../glass/lens/motion.d.ts) | | | |
|
|
775
|
+
| [`runScriptedScroll`](../glass/lens/motion.d.ts) | | | |
|
|
776
|
+
| [`RuntimeElements`](../glass/renderSpecs.d.ts) | | | |
|
|
777
|
+
| [`RuntimeGeometry`](../glass/renderSpecs.d.ts) | | | |
|
|
778
|
+
| [`RuntimeOptions`](../glass/renderSpecs.d.ts) | | | |
|
|
779
|
+
| [`RuntimeSnapshot`](../glass/renderSpecs.d.ts) | Probe telemetry shape. The WebGPU runtime does not emit snapshots; GlassPresentation's probe panel still types against it. Fields typed by removed WebGL classes are `unknown`. | | |
|
|
780
|
+
| [`SafeAreaMetrics`](../safe-area/useSafeAreaMetrics.d.ts) | The full safe-area and viewport geometry Satin works from, including the diagnostic coordinate spaces installed-app fixtures compare. Apps want only `insets`. | | |
|
|
781
|
+
| [`SampledMotion`](../menu/sampledMotion.d.ts) | A document-timeline animation, submitted once per input or state transition. Sampling density controls interpolation error, not the display refresh rate. Keep accelerated properties in separate effects from paint-bound properties. | | |
|
|
782
|
+
| [`sampleLiquidShape`](../glass/lens/liquidMotion.d.ts) | | | |
|
|
783
|
+
| [`sampleMenuCadence`](../glass/lens/menuMotion.d.ts) | | | |
|
|
784
|
+
| [`sampleMenuMotion`](../glass/lens/menuMotion.d.ts) | | | |
|
|
785
|
+
| [`sampleNavigationCurve`](../navigation/motionTokens.d.ts) | | | |
|
|
786
|
+
| [`SatinAppShellRegistration`](../sw/registerAppShell.d.ts) | | | |
|
|
787
|
+
| [`SatinRoot`](../root/SatinRoot.d.ts) | | | |
|
|
788
|
+
| [`SatinRootProps`](../root/SatinRoot.d.ts) | Props for `SatinRoot`. | | |
|
|
789
|
+
| [`SatinRuntime`](../root/runtimeContext.d.ts) | | | |
|
|
790
|
+
| [`Scenario`](../glass/renderSpecs.d.ts) | | | |
|
|
791
|
+
| [`ScenarioMetrics`](../glass/renderSpecs.d.ts) | | | |
|
|
792
|
+
| [`SCENE_STYLE`](../glass/lens/Scene.d.ts) | | | |
|
|
793
|
+
| [`SceneRestoration`](../restoration/scene.d.ts) | | | |
|
|
794
|
+
| [`ScreenContainer`](../navigation/ScreenContainer.d.ts) | | | |
|
|
795
|
+
| [`ScreenContainerProps`](../navigation/ScreenContainer.d.ts) | Props for `ScreenContainer`. | | |
|
|
796
|
+
| [`ScreenDefinition`](../navigation/types.d.ts) | | | |
|
|
797
|
+
| [`ScreenEntry`](../navigation/types.d.ts) | | | |
|
|
798
|
+
| [`ScreenId`](../navigation/store.d.ts) | | | |
|
|
799
|
+
| [`ScreenLifecycle`](../navigation/types.d.ts) | Whether a screen is covered by another, and the phase of its current transition. | | |
|
|
800
|
+
| [`ScreenLifecycleCallbacks`](../navigation/types.d.ts) | The `appear` and `disappear` callbacks for `useScreenLifecycle`. | | |
|
|
801
|
+
| [`ScreenParams`](../navigation/store.d.ts) | | | |
|
|
802
|
+
| [`ScreenRegistry`](../navigation/registry.d.ts) | | | |
|
|
803
|
+
| [`scriptedDragFrames`](../glass/lens/motion.d.ts) | | | |
|
|
804
|
+
| [`scriptedDragProgress`](../glass/lens/motion.d.ts) | | | |
|
|
805
|
+
| [`ScriptedMotionMode`](../glass/lens/motion.d.ts) | | | |
|
|
806
|
+
| [`ScriptedScrollMode`](../glass/lens/motion.d.ts) | | | |
|
|
807
|
+
| [`scriptedScrollOffset`](../glass/lens/motion.d.ts) | | | |
|
|
808
|
+
| [`ScrollAxis`](../scroll/types.d.ts) | The axis along which a scroll surface accepts scrolling. | | |
|
|
809
|
+
| [`ScrollDismissesKeyboardMode`](../keyboard/adapter.d.ts) | When scrolling dismisses the keyboard: `never`; `immediately`, as soon as a drag on the surface starts; or `interactively`, when a drag reaches the keyboard. WebKit's keyboard cannot follow the finger, so it then slides away on its own curve and the bottom inset follows it. | | |
|
|
810
|
+
| [`ScrollOffset`](../scroll/types.d.ts) | The scroll position in points along the physical x and y axes. | | |
|
|
811
|
+
| [`ScrollSnapshot`](../scroll/types.d.ts) | | | |
|
|
812
|
+
| [`ScrollSurface`](../scroll/ScrollSurface.d.ts) | A named scroll surface whose position is retained by the framework. | | |
|
|
813
|
+
| [`ScrollSurfaceHandle`](../scroll/ScrollSurface.d.ts) | Imperative scroll positioning for a named scroll view. | | |
|
|
814
|
+
| [`ScrollSurfaceProps`](../scroll/ScrollSurface.d.ts) | A scroll view's content, scroll binding and keyboard dismissal policy. | | |
|
|
815
|
+
| [`ScrollToTopOptions`](../scroll/types.d.ts) | Options for `scrollToTop`: whether to animate. | | |
|
|
816
|
+
| [`Section`](../list-form/ListForm.d.ts) | A group of rows in a `List` or `Form`, with an optional header and footer. | | |
|
|
817
|
+
| [`SectionProps`](../list-form/ListForm.d.ts) | A section's rows and its optional header and footer. | | |
|
|
818
|
+
| [`SecureField`](../text-input/TextField.d.ts) | | | password field |
|
|
819
|
+
| [`SecureFieldProps`](../text-input/TextField.d.ts) | Props for `SecureField`. | | |
|
|
820
|
+
| [`SegmentedControl`](../list-form/ListForm.d.ts) | | | |
|
|
821
|
+
| [`Selectable`](../root/SatinRoot.d.ts) | Lets the user select and copy the text inside it. App chrome turns text selection off everywhere else, so wrap user-authored content such as notes or messages. | | text selection; copy text |
|
|
822
|
+
| [`SelectableProps`](../root/SatinRoot.d.ts) | The wrapped content and plain div attributes. | | |
|
|
823
|
+
| [`SerializedRoute`](../navigation/routeCodec.d.ts) | | | |
|
|
824
|
+
| [`setAppBadge`](../push/notifications.d.ts) | | | |
|
|
825
|
+
| [`SETTINGS_BACK_BUTTON_INLINE_INSET_PX`](../settings/tokens.d.ts) | | | |
|
|
826
|
+
| [`SETTINGS_BACK_BUTTON_SIZE_PX`](../settings/tokens.d.ts) | | | |
|
|
827
|
+
| [`SETTINGS_DETAIL_CONTENT_TOP_OFFSET_PX`](../settings/tokens.d.ts) | | | |
|
|
828
|
+
| [`SETTINGS_DETAIL_INLINE_INSET_PX`](../settings/tokens.d.ts) | | | |
|
|
829
|
+
| [`SETTINGS_DETAIL_ROW_HEIGHT_PX`](../settings/tokens.d.ts) | | | |
|
|
830
|
+
| [`SETTINGS_DISCLOSURE_DARK_COLOR`](../settings/tokens.d.ts) | | | |
|
|
831
|
+
| [`SETTINGS_DISCLOSURE_HEIGHT_PX`](../settings/tokens.d.ts) | | | |
|
|
832
|
+
| [`SETTINGS_DISCLOSURE_LIGHT_COLOR`](../settings/tokens.d.ts) | | | |
|
|
833
|
+
| [`SETTINGS_DISCLOSURE_OFFSET_X_PX`](../settings/tokens.d.ts) | | | |
|
|
834
|
+
| [`SETTINGS_DISCLOSURE_OFFSET_Y_PX`](../settings/tokens.d.ts) | | | |
|
|
835
|
+
| [`SETTINGS_DISCLOSURE_WIDTH_PX`](../settings/tokens.d.ts) | | | |
|
|
836
|
+
| [`SETTINGS_GROUP_CORNER_RADIUS_PX`](../settings/tokens.d.ts) | | | |
|
|
837
|
+
| [`SETTINGS_GROUP_SPACING_PX`](../settings/tokens.d.ts) | | | |
|
|
838
|
+
| [`SETTINGS_LARGE_TITLE_FONT_SIZE_PX`](../settings/tokens.d.ts) | | | |
|
|
839
|
+
| [`SETTINGS_LARGE_TITLE_LINE_HEIGHT_PX`](../settings/tokens.d.ts) | | | |
|
|
840
|
+
| [`SETTINGS_NAVIGATION_BAR_HEIGHT_PX`](../settings/tokens.d.ts) | | | |
|
|
841
|
+
| [`SETTINGS_ROOT_INLINE_INSET_PX`](../settings/tokens.d.ts) | | | |
|
|
842
|
+
| [`SETTINGS_ROOT_LARGE_TITLE_TOP_OFFSET_PX`](../settings/tokens.d.ts) | | | |
|
|
843
|
+
| [`SETTINGS_ROOT_PRO_MAX_INLINE_INSET_PX`](../settings/tokens.d.ts) | | | |
|
|
844
|
+
| [`SETTINGS_ROOT_ROW_HEIGHT_PX`](../settings/tokens.d.ts) | | | |
|
|
845
|
+
| [`SETTINGS_ROW_ICON_CORNER_RADIUS_PX`](../settings/tokens.d.ts) | | | |
|
|
846
|
+
| [`SETTINGS_ROW_ICON_SIZE_PX`](../settings/tokens.d.ts) | | | |
|
|
847
|
+
| [`SETTINGS_ROW_TRAILING_INSET_PX`](../settings/tokens.d.ts) | | | |
|
|
848
|
+
| [`SETTINGS_SEPARATOR_HAIRLINE_PX`](../settings/tokens.d.ts) | | | |
|
|
849
|
+
| [`SETTINGS_SEPARATOR_LEADING_INSET_PX`](../settings/tokens.d.ts) | | | |
|
|
850
|
+
| [`SETTINGS_SEPARATOR_OFFSET_Y_PX`](../settings/tokens.d.ts) | | | |
|
|
851
|
+
| [`SETTINGS_SEPARATOR_TRAILING_INSET_PX`](../settings/tokens.d.ts) | | | |
|
|
852
|
+
| [`settingsChromeTokens`](../settings/tokens.d.ts) | | | |
|
|
853
|
+
| [`SettingsDomScene`](../glass/lens/Scene.d.ts) | | | |
|
|
854
|
+
| [`SettingsPalette`](../glass/lens/theme.d.ts) | | | |
|
|
855
|
+
| [`settingsRootInlineInset`](../settings/tokens.d.ts) | | | |
|
|
856
|
+
| [`Sheet`](../presentation/Presentation.d.ts) | | | sheet; modal presentation; bottom sheet |
|
|
857
|
+
| [`SheetProps`](../presentation/Presentation.d.ts) | Props for `Sheet`. | | |
|
|
858
|
+
| [`shouldCompleteInteractivePop`](../navigation/motionTokens.d.ts) | | | |
|
|
859
|
+
| [`Sidebar`](../navigation/Sidebar.d.ts) | A list of sidebar destinations. Selecting one shows it in the split view's detail column. | | |
|
|
860
|
+
| [`SidebarEntry`](../navigation/Sidebar.d.ts) | One sidebar destination: its id, label, optional icon and disabled state. | | |
|
|
861
|
+
| [`SidebarProps`](../navigation/Sidebar.d.ts) | The sidebar's entries, the selection callback and which entry starts selected. | | |
|
|
862
|
+
| [`SidebarSymbol`](../navigation/SidebarSymbol.d.ts) | Draws the sidebar's `gearshape` or `sidebar.left` icon with `SymbolImage`. The artwork is from Framework7 Icons (MIT). | | |
|
|
863
|
+
| [`sidebarTokens`](../settings/tokens.d.ts) | | | |
|
|
864
|
+
| [`SplitSelection`](../navigation/splitContext.d.ts) | | | |
|
|
865
|
+
| [`springStep`](../glass/lens/liquidMotion.d.ts) | | | |
|
|
866
|
+
| [`stableTabSelection`](../glass/lens/tabSelectionMaterial.d.ts) | | | |
|
|
867
|
+
| [`StateSchema`](../restoration/scene.d.ts) | Small UI checkpoints, read before mount and written in quiet tasks. | | |
|
|
868
|
+
| [`StepperProps`](../list-form/ListForm.d.ts) | Props for `Stepper`. | | |
|
|
869
|
+
| [`StepperRow`](../list-form/ListForm.d.ts) | | | |
|
|
870
|
+
| [`STRIPE_BACKGROUND_MODES`](../glass/lens/referenceBackground.d.ts) | | | |
|
|
871
|
+
| [`SubmitLabel`](../text-input/kinds.d.ts) | The return key's title: `done`, `go`, `next`, `search` or `send`. | | |
|
|
872
|
+
| [`subscribeGlassErrors`](../glass/errors.d.ts) | | | |
|
|
873
|
+
| [`summarize`](../glass/worker/experiment.d.ts) | | | |
|
|
874
|
+
| [`SurfaceId`](../glass/renderSpecs.d.ts) | | | |
|
|
875
|
+
| [`SurfaceRenderSpec`](../glass/renderSpecs.d.ts) | | | |
|
|
876
|
+
| [`SurfaceShape`](../glass/renderSpecs.d.ts) | | | |
|
|
877
|
+
| [`SwipeActions`](../actions/types.d.ts) | The `swipeActions` prop of a row: actions for one edge, or a list with one entry per edge. | | swipe actions; swipe to delete |
|
|
878
|
+
| [`SwipeActionsConfiguration`](../actions/types.d.ts) | The swipe actions on one row edge, `trailing` by default. A full swipe runs the first action unless `allowsFullSwipe` is false. | | |
|
|
879
|
+
| [`Tab`](../tabs/TabView.d.ts) | Declaration consumed by TabView. Each tab owns its content and navigator. | | |
|
|
880
|
+
| [`TAB_BAR_BLUR_SIGMA`](../glass/lens/tabSelectionMaterial.d.ts) | | | |
|
|
881
|
+
| [`TAB_BAR_LOCAL_CENTRES`](../glass/lens/tabSelectionMaterial.d.ts) | | | |
|
|
882
|
+
| [`TAB_ICON_SVG`](../glass/lens/icons.d.ts) | | | |
|
|
883
|
+
| [`TAB_SELECTION_HEIGHT`](../glass/lens/tabSelectionMaterial.d.ts) | | | |
|
|
884
|
+
| [`TAB_SELECTION_WIDTH`](../glass/lens/tabSelectionMaterial.d.ts) | | | |
|
|
885
|
+
| [`TabBar`](../glass/TabBar.d.ts) | | | |
|
|
886
|
+
| [`TabBarItem`](../glass/TabBar.d.ts) | | | |
|
|
887
|
+
| [`TabBarProps`](../glass/TabBar.d.ts) | Props for `TabBar`. | | |
|
|
888
|
+
| [`tabGlyphStyle`](../glass/lens/tabGlyphColours.d.ts) | | | |
|
|
889
|
+
| [`tabPresentation`](../glass/lens/tabPresentation.d.ts) | Backdrops change what is behind the tabs, not whether the tabs exist. Explicit optical probes can still request bare glass. The separate drag and liquid specimens retain their original presentation. | | |
|
|
890
|
+
| [`tabProbeOverride`](../glass/lens/tabPresentation.d.ts) | | | |
|
|
891
|
+
| [`TabProps`](../tabs/TabView.d.ts) | Props for `Tab`. | | |
|
|
892
|
+
| [`tabSelectionCapsule`](../glass/lens/tabSelectionMaterial.d.ts) | | | |
|
|
893
|
+
| [`TabSelectionShape`](../glass/renderSpecs.d.ts) | | | |
|
|
894
|
+
| [`TabView`](../tabs/TabView.d.ts) | Lazy, retained tabs. Hidden app effects remain app-owned; Satin work pauses. | | tab bar; tabs |
|
|
895
|
+
| [`TabViewProps`](../tabs/TabView.d.ts) | Props for `TabView`. | | |
|
|
896
|
+
| [`TextEditor`](../text-input/TextEditor.d.ts) | | | multiline text; text area |
|
|
897
|
+
| [`TextEditorProps`](../text-input/TextEditor.d.ts) | Props for `TextEditor`. | | |
|
|
898
|
+
| [`TextField`](../text-input/TextField.d.ts) | | | text field; text input |
|
|
899
|
+
| [`TextFieldKind`](../text-input/kinds.d.ts) | What a field holds, setting its keyboard, autofill and autocorrection together. | | |
|
|
900
|
+
| [`TextFieldProps`](../text-input/TextField.d.ts) | Props for `TextField`. | | |
|
|
901
|
+
| [`TINT_BACKGROUND_MODES`](../glass/lens/referenceBackground.d.ts) | | | |
|
|
902
|
+
| [`TintBackgroundMode`](../glass/lens/referenceBackground.d.ts) | | | |
|
|
903
|
+
| [`TitleDisplayMode`](../navigation/types.d.ts) | How a screen title is drawn: `inline` in the bar, `large` below it, `inlineLarge` large inside the bar row, or `none`. | | |
|
|
904
|
+
| [`Toggle`](../list-form/Toggle.d.ts) | | | switch; checkbox |
|
|
905
|
+
| [`ToggleProps`](../list-form/Toggle.d.ts) | Props for `Toggle`. | | |
|
|
906
|
+
| [`ToggleRow`](../list-form/Toggle.d.ts) | | | |
|
|
907
|
+
| [`ToolbarGroup`](../glass/GlassEffect.d.ts) | A toolbar group is one glass button: pressing any item lifts the whole group (native). | | |
|
|
908
|
+
| [`ToolbarSpacer`](../glass/GlassEffect.d.ts) | | | |
|
|
909
|
+
| [`trace`](../glass/lens/trace.d.ts) | | | |
|
|
910
|
+
| [`TransactionCollection`](../data/database.d.ts) | A collection as seen inside `db.transaction`: its writes commit together or not at all. | | |
|
|
911
|
+
| [`TransitionBinding`](../navigation/types.d.ts) | | | |
|
|
912
|
+
| [`TransitionCompletion`](../navigation/types.d.ts) | | | |
|
|
913
|
+
| [`TransitionController`](../navigation/types.d.ts) | | | |
|
|
914
|
+
| [`TransitionControllerContext`](../navigation/types.d.ts) | | | |
|
|
915
|
+
| [`TransitionControllerFactory`](../navigation/types.d.ts) | | | |
|
|
916
|
+
| [`TransitionOperation`](../navigation/types.d.ts) | | | |
|
|
917
|
+
| [`TransitionPhase`](../navigation/types.d.ts) | Where a screen is in a navigation transition: `entering`, `exiting` or `settled`. | | |
|
|
918
|
+
| [`TypedRoute`](../navigation/routeCodec.d.ts) | | | |
|
|
919
|
+
| [`useFocusChain`](../text-input/focusChain.d.ts) | Moves focus through a form's fields in `order`. The return key goes to the next field and the last one dismisses the keyboard. Disabled and unmounted fields are skipped. Spread `field(key)` onto each field. | | next field; return key |
|
|
920
|
+
| [`useGlassMaterialDiagnostics`](../glass/context.d.ts) | | | |
|
|
921
|
+
| [`useKeyboardMetrics`](../keyboard/adapter.d.ts) | The software keyboard's live geometry. Most apps never need it: Satin keeps focused fields, bottom insets and bars above the keyboard. | | keyboard height |
|
|
922
|
+
| [`useLayoutClass`](../root/runtimeContext.d.ts) | Classes follow the layout viewport; keyboard occlusion and zoom do not select panes. | | |
|
|
923
|
+
| [`useNavigator`](../navigation/navigationContext.d.ts) | | | |
|
|
924
|
+
| [`useNavigatorState`](../navigation/navigationContext.d.ts) | | | |
|
|
925
|
+
| [`useParams`](../navigation/navigationContext.d.ts) | | | |
|
|
926
|
+
| [`usePushNotifications`](../push/notifications.d.ts) | | | |
|
|
927
|
+
| [`useQuery`](../data/database.d.ts) | Reads a collection's records as `{ data, loading, error }` and keeps them live. Local writes show up synchronously, before they persist. | | live query |
|
|
928
|
+
| [`useReachability`](../reachability/react.d.ts) | The app server's status and the offline view currently shown, with `fetch` and `recheck` helpers that feed the status. | | offline; network status |
|
|
929
|
+
| [`useRecord`](../data/database.d.ts) | One record by key, kept live; `data` is undefined while loading and when no record exists. | | |
|
|
930
|
+
| [`useRestoredState`](../restoration/react.d.ts) | Application/scene values such as the selected tab. Declare schemas outside render. | | |
|
|
931
|
+
| [`useSafeAreaMetrics`](../safe-area/useSafeAreaMetrics.d.ts) | Full diagnostic geometry, including visual viewport changes. | | |
|
|
932
|
+
| [`useSatinRuntime`](../root/runtimeContext.d.ts) | Diagnostic readers receive every live coordinate space, independently of root layout. | | |
|
|
933
|
+
| [`useSceneStorage`](../restoration/react.d.ts) | Entry-scoped state: repeated pushes of the same screen keep independent drafts. | | restorable screen state; draft |
|
|
934
|
+
| [`useScreenLifecycle`](../navigation/navigationContext.d.ts) | Runs `appear` and `disappear` callbacks as the screen is shown and covered or removed, and returns whether it is covered and its transition phase. | | |
|
|
935
|
+
| [`useSplitSelection`](../navigation/splitContext.d.ts) | Returns the split view's mode and the entry shown in its detail column. It throws outside a split view. | | |
|
|
936
|
+
| [`useUnsavedChanges`](../root/runtimeContext.d.ts) | Tells Satin the app has unsaved work while `unsaved` is true, so a pending app update waits instead of reloading over it. Edits in text fields are detected without this hook. | | unsaved changes |
|
|
937
|
+
| [`validatePushRoute`](../push/routes.d.ts) | | | |
|
|
938
|
+
| [`ValueRow`](../list-form/ListForm.d.ts) | | | |
|
|
939
|
+
| [`warmAppImageWhenIdle`](../app/warmImage.d.ts) | | | |
|
|
940
|
+
| [`Zoomable`](../zoom/Zoomable.d.ts) | A region the user can pinch to zoom and pan, such as a photo or a map. The + and - keys zoom about the centre and 0 resets. Give it an accessible label. | | pinch to zoom |
|
|
941
|
+
| [`ZoomableProps`](../zoom/Zoomable.d.ts) | The maximum zoom (4 by default) and a scale callback. Satin owns the pointer handlers. | | |
|
|
934
942
|
|
|
935
943
|
## internal vite API
|
|
936
944
|
|
|
937
945
|
Module: `@satinhq/kit/internal/vite`
|
|
938
946
|
|
|
947
|
+
Lower-level build tools for Satin tooling and tests. Apps use `satinApp` from `@satinhq/kit/vite`.
|
|
948
|
+
|
|
939
949
|
| Satin export | Behavior | Limits | Also known as |
|
|
940
950
|
| --- | --- | --- | --- |
|
|
941
|
-
| [`AppFixture`](../app/head.d.ts) |
|
|
942
|
-
| [`defineApp`](../public/definition.d.ts) | Declares app identity, install metadata and capabilities once. Pass the result to `runApp` and to the `@satinhq/kit/vite` plugin. Everything not given is defaulted and the whole definition is validated, so a bad id or icon fails at build time rather than after install. |
|
|
943
|
-
| [`defineAppFixture`](../app/definition.d.ts) |
|
|
944
|
-
| [`satinApp`](../app/vite.d.ts) |
|
|
945
|
-
| [`satinAppFixtures`](../app/vite.d.ts) | Multi-install lab fixture only. Production apps use satinApp(app). |
|
|
946
|
-
| [`SatinAppOptions`](../app/vite.d.ts) |
|
|
947
|
-
| [`satinAppShell`](../sw/vite.d.ts) |
|
|
948
|
-
| [`SatinAppShellPluginOptions`](../sw/vite.d.ts) |
|
|
951
|
+
| [`AppFixture`](../app/head.d.ts) | One app definition in a multi-install lab build, chosen by exact query parameters. | | |
|
|
952
|
+
| [`defineApp`](../public/definition.d.ts) | Declares app identity, install metadata and capabilities once. Pass the result to `runApp` and to the `@satinhq/kit/vite` plugin. Everything not given is defaulted and the whole definition is validated, so a bad id or icon fails at build time rather than after install. | | app manifest; app config |
|
|
953
|
+
| [`defineAppFixture`](../app/definition.d.ts) | Validates a full app definition and fills in its defaults. `defineApp` uses it; lab fixtures call it directly. | | |
|
|
954
|
+
| [`satinApp`](../app/vite.d.ts) | Generates the app shell and loads framework CSS once, before app styles. The stylesheet participates in Vite CSS HMR and builds; pre-launch paints independently. | | |
|
|
955
|
+
| [`satinAppFixtures`](../app/vite.d.ts) | Multi-install lab fixture only. Production apps use satinApp(app). | | |
|
|
956
|
+
| [`SatinAppOptions`](../app/vite.d.ts) | Build options for `satinApp`: a custom install page, strict glass, the development menu and a media probe. | | |
|
|
957
|
+
| [`satinAppShell`](../sw/vite.d.ts) | The Vite build plugin that generates the app's service worker and precache list. `satinApp` includes it; use it directly only in Satin tooling. | | |
|
|
958
|
+
| [`SatinAppShellPluginOptions`](../sw/vite.d.ts) | Options for the service worker build plugin: extra files to precache, public routes, legacy cache names and diagnostic headers. | | |
|
|
949
959
|
|
|
950
960
|
## server API
|
|
951
961
|
|
|
952
962
|
Module: `@satinhq/kit/server`
|
|
953
963
|
|
|
964
|
+
Node helpers for serving a built app. Keep them out of the browser bundle.
|
|
965
|
+
|
|
954
966
|
| Satin export | Behavior | Limits | Also known as |
|
|
955
967
|
| --- | --- | --- | --- |
|
|
956
|
-
| [`serveStaticFile`](../server.d.ts) |
|
|
968
|
+
| [`serveStaticFile`](../server.d.ts) | Serves a built app's static files from Node. It streams GET and HEAD requests and supports single byte ranges, with no caching or compression. The `fallback` file answers only missing extensionless routes; other methods are left to the caller. The root and every file, symlink targets included, must resolve inside the same real directory. | | |
|
|
957
969
|
|
|
958
970
|
## testing API
|
|
959
971
|
|
|
960
972
|
Module: `@satinhq/kit/testing`
|
|
961
973
|
|
|
974
|
+
Helpers for app tests. They do not prove real touches or notification delivery.
|
|
975
|
+
|
|
962
976
|
| Satin export | Behavior | Limits | Also known as |
|
|
963
977
|
| --- | --- | --- | --- |
|
|
964
|
-
| [`assertNavigation`](../testing.d.ts) |
|
|
965
|
-
| [`sendTestNotification`](../testing.d.ts) |
|
|
978
|
+
| [`assertNavigation`](../testing.d.ts) | Throws unless the visible screen in `container` is the route `screen`. For app tests. | | |
|
|
979
|
+
| [`sendTestNotification`](../testing.d.ts) | Sends a test notification through a push relay and returns how many devices accepted it. The token is requested when called and never stored. | | |
|
|
966
980
|
|
|
967
981
|
## unstable API
|
|
968
982
|
|
|
969
983
|
Module: `@satinhq/kit/unstable`
|
|
970
984
|
|
|
985
|
+
Experimental API. Its contract may change between beta releases.
|
|
986
|
+
|
|
971
987
|
| Satin export | Behavior | Limits | Also known as |
|
|
972
988
|
| --- | --- | --- | --- |
|
|
973
|
-
| [`Animation`](../motion/animationValue.d.ts) | An opaque spring timing value for `withAnimation`. Use a named value or `Animation.spring`. |
|
|
974
|
-
| [`concentricRadius`](../safe-area/displayCorners.d.ts) |
|
|
975
|
-
| [`DetailList`](../navigation/DetailList.d.ts) |
|
|
976
|
-
| [`DragGesture`](../gestures/gesture.d.ts) |
|
|
977
|
-
| [`DragGestureOptions`](../gestures/gesture.d.ts) |
|
|
978
|
-
| [`DragGestureValue`](../gestures/gesture.d.ts) |
|
|
979
|
-
| [`Gesture`](../gestures/gesture.d.ts) |
|
|
980
|
-
| [`GesturePoint`](../gestures/gesture.d.ts) |
|
|
981
|
-
| [`GestureState`](../gestures/gesture.d.ts) |
|
|
982
|
-
| [`GestureView`](../gestures/GestureView.d.ts) | A
|
|
983
|
-
| [`GestureViewProps`](../gestures/GestureView.d.ts) |
|
|
984
|
-
| [`LongPressGesture`](../gestures/gesture.d.ts) |
|
|
985
|
-
| [`LongPressGestureOptions`](../gestures/gesture.d.ts) |
|
|
986
|
-
| [`MagnifyGesture`](../gestures/gesture.d.ts) |
|
|
987
|
-
| [`MagnifyGestureOptions`](../gestures/gesture.d.ts) |
|
|
988
|
-
| [`MagnifyGestureValue`](../gestures/gesture.d.ts) |
|
|
989
|
-
| [`MatchedGeometryEffect`](../motion/matchedGeometry.d.ts) | When a `withAnimation` change removes this view and inserts another with the same id, the new one moves from the old one's frame to its own while the two cross-fade. A view that only moves or resizes animates from where it was. A matched view with no partner fades in or out. Wrap one element that has no transform of its own. Changes made outside `withAnimation` apply at once. |
|
|
990
|
-
| [`MatchedGeometryEffectProps`](../motion/matchedGeometry.d.ts) |
|
|
991
|
-
| [`Sidebar`](../navigation/Sidebar.d.ts) |
|
|
992
|
-
| [`SidebarEntry`](../navigation/Sidebar.d.ts) |
|
|
993
|
-
| [`SidebarProps`](../navigation/Sidebar.d.ts) |
|
|
994
|
-
| [`SidebarSymbol`](../navigation/SidebarSymbol.d.ts) |
|
|
995
|
-
| [`SpringOptions`](../motion/animationValue.d.ts) |
|
|
996
|
-
| [`TapGesture`](../gestures/gesture.d.ts) |
|
|
997
|
-
| [`TapGestureOptions`](../gestures/gesture.d.ts) |
|
|
998
|
-
| [`Transition`](../motion/transition.d.ts) |
|
|
999
|
-
| [`TransitionEdge`](../motion/transition.d.ts) | The edge a view moves through, resolved against its own layout direction. |
|
|
1000
|
-
| [`TransitionView`](../motion/TransitionView.d.ts) |
|
|
1001
|
-
| [`TransitionViewProps`](../motion/TransitionView.d.ts) |
|
|
1002
|
-
| [`useDisplayCornerRadius`](../safe-area/displayCorners.d.ts) |
|
|
1003
|
-
| [`useGestureState`](../gestures/gesture.d.ts) |
|
|
1004
|
-
| [`useSplitSelection`](../navigation/splitContext.d.ts) |
|
|
1005
|
-
| [`withAnimation`](../motion/matchedGeometry.d.ts) | Applies the state changes in `update`, then animates the `MatchedGeometryEffect` views they move, insert or remove. Call it from an event handler. Keyed List rows also move to their new positions. Other views take their new layout at once. Returns the callback result and
|
|
989
|
+
| [`Animation`](../motion/animationValue.d.ts) | An opaque spring timing value for `withAnimation`. Use a named value or `Animation.spring`. | | |
|
|
990
|
+
| [`concentricRadius`](../safe-area/displayCorners.d.ts) | The corner radius for a shape inset evenly inside a rounded container, so the two corners stay concentric. The result never goes below 0; a negative or non-finite argument throws. | | |
|
|
991
|
+
| [`DetailList`](../navigation/DetailList.d.ts) | A grouped list of rows for a split view's detail column at regular width. | | |
|
|
992
|
+
| [`DragGesture`](../gestures/gesture.d.ts) | A drag that starts after the finger moves `minimumDistance` along the accepted axis. | | |
|
|
993
|
+
| [`DragGestureOptions`](../gestures/gesture.d.ts) | A drag's callbacks and state, the distance it must travel before it starts (10 by default) and the axis it accepts. | | |
|
|
994
|
+
| [`DragGestureValue`](../gestures/gesture.d.ts) | A drag's current and start locations, its translation and its velocity. | | |
|
|
995
|
+
| [`Gesture`](../gestures/gesture.d.ts) | A gesture made by `DragGesture`, `LongPressGesture`, `TapGesture` or `MagnifyGesture`, for a `GestureView`. | | |
|
|
996
|
+
| [`GesturePoint`](../gestures/gesture.d.ts) | A point in CSS pixels. | | |
|
|
997
|
+
| [`GestureState`](../gestures/gesture.d.ts) | The binding `useGestureState` returns. A gesture updates it while active and resets it when it ends. | | |
|
|
998
|
+
| [`GestureView`](../gestures/GestureView.d.ts) | A region that recognizes custom gestures on its children. Scrolling and the back swipe still win the touches they own. | | |
|
|
999
|
+
| [`GestureViewProps`](../gestures/GestureView.d.ts) | The gestures a `GestureView` recognizes: a normal, a simultaneous and a high-priority gesture. | | |
|
|
1000
|
+
| [`LongPressGesture`](../gestures/gesture.d.ts) | A press held for `minimumDurationMs` without moving more than `maximumDistance`. | | |
|
|
1001
|
+
| [`LongPressGestureOptions`](../gestures/gesture.d.ts) | A long press's callbacks and state, how long it must be held (500 ms by default) and how far the finger may move (10 by default). | | |
|
|
1002
|
+
| [`MagnifyGesture`](../gestures/gesture.d.ts) | A two-finger pinch that starts once the scale changes by `minimumScaleDelta`. | | |
|
|
1003
|
+
| [`MagnifyGestureOptions`](../gestures/gesture.d.ts) | A pinch's callbacks and state, and how far the scale must change before it starts (0.01 by default). | | |
|
|
1004
|
+
| [`MagnifyGestureValue`](../gestures/gesture.d.ts) | A pinch's scale relative to its start, and the point it started around. | | |
|
|
1005
|
+
| [`MatchedGeometryEffect`](../motion/matchedGeometry.d.ts) | When a `withAnimation` change removes this view and inserts another with the same id, the new one moves from the old one's frame to its own while the two cross-fade. A view that only moves or resizes animates from where it was. A matched view with no partner fades in or out. Wrap one element that has no transform of its own. Changes made outside `withAnimation` apply at once. | | |
|
|
1006
|
+
| [`MatchedGeometryEffectProps`](../motion/matchedGeometry.d.ts) | The effect's id and namespace, whether it is the source, and the one element it wraps. | | |
|
|
1007
|
+
| [`Sidebar`](../navigation/Sidebar.d.ts) | A list of sidebar destinations. Selecting one shows it in the split view's detail column. | | |
|
|
1008
|
+
| [`SidebarEntry`](../navigation/Sidebar.d.ts) | One sidebar destination: its id, label, optional icon and disabled state. | | |
|
|
1009
|
+
| [`SidebarProps`](../navigation/Sidebar.d.ts) | The sidebar's entries, the selection callback and which entry starts selected. | | |
|
|
1010
|
+
| [`SidebarSymbol`](../navigation/SidebarSymbol.d.ts) | Draws the sidebar's `gearshape` or `sidebar.left` icon with `SymbolImage`. The artwork is from Framework7 Icons (MIT). | | |
|
|
1011
|
+
| [`SpringOptions`](../motion/animationValue.d.ts) | A spring's duration in milliseconds and its bounce, for `Animation.spring`. | | |
|
|
1012
|
+
| [`TapGesture`](../gestures/gesture.d.ts) | A tap, or `count` taps, that ends without moving more than `maximumDistance`. It reports where the finger lifted. | | |
|
|
1013
|
+
| [`TapGestureOptions`](../gestures/gesture.d.ts) | A tap's callbacks and state, the number of taps (1 by default) and how far the finger may move (10 by default). | | |
|
|
1014
|
+
| [`Transition`](../motion/transition.d.ts) | How a view enters and leaves: opacity, scale and move effects. `withAnimation` sets the timing. | | |
|
|
1015
|
+
| [`TransitionEdge`](../motion/transition.d.ts) | The edge a view moves through, resolved against its own layout direction. | | |
|
|
1016
|
+
| [`TransitionView`](../motion/TransitionView.d.ts) | Shows or hides its content with a transition when `visible` changes inside `withAnimation`. Keep the view itself mounted. Hidden content stays mounted and inert until its exit finishes, and the first render does not animate. | | |
|
|
1017
|
+
| [`TransitionViewProps`](../motion/TransitionView.d.ts) | Whether the content is visible, the transition to use and the content. | | |
|
|
1018
|
+
| [`useDisplayCornerRadius`](../safe-area/displayCorners.d.ts) | The corner radius of the device screen in points, or 0 when the model is unknown. It updates after rotation, window moves and pixel-ratio changes that fire a resize. | | |
|
|
1019
|
+
| [`useGestureState`](../gestures/gesture.d.ts) | Returns a value that a gesture drives, and the binding to pass as the gesture's `state`. The value goes back to `initialValue` when the gesture ends or is cancelled. | | |
|
|
1020
|
+
| [`useSplitSelection`](../navigation/splitContext.d.ts) | Returns the split view's mode and the entry shown in its detail column. It throws outside a split view. | | |
|
|
1021
|
+
| [`withAnimation`](../motion/matchedGeometry.d.ts) | Applies the state changes in `update`, then animates the `MatchedGeometryEffect` views they move, insert or remove. Call it from an event handler. Keyed List rows also move to their new positions. Other views take their new layout at once. Returns the callback result and passes errors through. Only synchronous updates take part, and nested calls join the outer one. | | animated state update |
|
|
1006
1022
|
|
|
1007
1023
|
## vite API
|
|
1008
1024
|
|
|
1009
1025
|
Module: `@satinhq/kit/vite`
|
|
1010
1026
|
|
|
1027
|
+
The Vite plugin that builds the app, its install page and its service worker.
|
|
1028
|
+
|
|
1011
1029
|
| Satin export | Behavior | Limits | Also known as |
|
|
1012
1030
|
| --- | --- | --- | --- |
|
|
1013
|
-
| [`defineApp`](../public/definition.d.ts) | Declares app identity, install metadata and capabilities once. Pass the result to `runApp` and to the `@satinhq/kit/vite` plugin. Everything not given is defaulted and the whole definition is validated, so a bad id or icon fails at build time rather than after install. |
|
|
1014
|
-
| [`satinApp`](../app/vite.d.ts) |
|
|
1015
|
-
| [`SatinAppOptions`](../app/vite.d.ts) |
|
|
1031
|
+
| [`defineApp`](../public/definition.d.ts) | Declares app identity, install metadata and capabilities once. Pass the result to `runApp` and to the `@satinhq/kit/vite` plugin. Everything not given is defaulted and the whole definition is validated, so a bad id or icon fails at build time rather than after install. | | app manifest; app config |
|
|
1032
|
+
| [`satinApp`](../app/vite.d.ts) | Generates the app shell and loads framework CSS once, before app styles. The stylesheet participates in Vite CSS HMR and builds; pre-launch paints independently. | | |
|
|
1033
|
+
| [`SatinAppOptions`](../app/vite.d.ts) | Build options for `satinApp`: a custom install page, strict glass, the development menu and a media probe. | | |
|
|
1016
1034
|
|
|
1017
1035
|
## Unsupported capabilities
|
|
1018
1036
|
|
|
@@ -1020,17 +1038,17 @@ These capabilities have no public export. The listed alternatives describe suppo
|
|
|
1020
1038
|
|
|
1021
1039
|
| Capability | Supported alternative | Limits |
|
|
1022
1040
|
| --- | --- | --- |
|
|
1023
|
-
| custom hit shapes | Use
|
|
1024
|
-
| custom toolbar backgrounds |
|
|
1025
|
-
| custom container backgrounds | Navigation and
|
|
1026
|
-
| multiple-date selection | No multiple-date selection control is shipped. | DatePicker selects one
|
|
1041
|
+
| custom hit shapes | Use Pressable, which responds across its rectangle. | Unsupported. Hit areas are rectangles. |
|
|
1042
|
+
| custom toolbar backgrounds | Navigation bars keep their standard background. | Unsupported. There is no toolbar background or material override. |
|
|
1043
|
+
| custom container backgrounds | Navigation stacks and sheets keep their standard backgrounds. | Unsupported. Their backgrounds belong to the containers. |
|
|
1044
|
+
| multiple-date selection | No multiple-date selection control is shipped. | DatePicker selects one date. |
|
|
1027
1045
|
| collapsible disclosure groups | Keep sections visible until the framework expander is implemented. | Unsupported. No disclosure expander is exported. |
|
|
1028
|
-
| video playback and audio route selection | Use MediaPlayer only for the supported audio queue
|
|
1029
|
-
| gauge indicators | ProgressView
|
|
1030
|
-
|
|
|
1031
|
-
| background work and scheduled local notifications | Use an authenticated server scheduler and Web Push for scheduled reminders. |
|
|
1032
|
-
| additional reactive state primitives | Use React state, props and the exported framework providers and hooks. |
|
|
1033
|
-
| arbitrary transitions and gesture modifiers | Use withAnimation with MatchedGeometryEffect, or the motion already
|
|
1046
|
+
| video playback and audio route selection | Use MediaPlayer only for the supported audio queue. | No video, AirPlay route picker, fullscreen or Picture-in-Picture support yet. |
|
|
1047
|
+
| gauge indicators | Use ProgressView for linear or circular progress. | No gauge styles are shipped. |
|
|
1048
|
+
| custom title sizing | Use the Screen title and subtitle and the toolbar title placements. | Title sizes are fixed; there is no custom title font. |
|
|
1049
|
+
| background work and scheduled local notifications | Use an authenticated server scheduler and Web Push for scheduled reminders. | A suspended web app cannot run timers or background work. |
|
|
1050
|
+
| additional reactive state primitives | Use React state, props and the exported framework providers and hooks. | Arbitrary environment keys are unsupported; use React context. |
|
|
1051
|
+
| arbitrary transitions and gesture modifiers | Use withAnimation with MatchedGeometryEffect, or the motion already built into navigation, controls and presentations. | No general transition, implicit animation or gesture modifier. Framework springs keep their measured values. |
|
|
1034
1052
|
|
|
1035
1053
|
See [application recipes](app-recipes.md), [local data](data.md), [geometry tokens](tokens.md) and [messaging scroll](messaging-scroll.md) for supported compositions.
|
|
1036
1054
|
|
|
@@ -1855,16 +1873,16 @@ The declarations below have no dedicated reviewed behavior metadata. Type-only d
|
|
|
1855
1873
|
|
|
1856
1874
|
## Declaration graph fingerprints
|
|
1857
1875
|
|
|
1858
|
-
- `@satinhq/kit:
|
|
1859
|
-
- `@satinhq/kit/vite:
|
|
1860
|
-
- `@satinhq/kit/install:
|
|
1861
|
-
- `@satinhq/kit/internal:
|
|
1862
|
-
- `@satinhq/kit/unstable:
|
|
1863
|
-
- `@satinhq/kit/server:
|
|
1864
|
-
- `@satinhq/kit/testing:
|
|
1865
|
-
- `@satinhq/kit/diagnostics:
|
|
1866
|
-
- `@satinhq/kit/internal/vite:
|
|
1876
|
+
- `@satinhq/kit:751c878892f1b84d237adb15aba705fae1b0bab4094036e54aa10ca6115e2a7e`
|
|
1877
|
+
- `@satinhq/kit/vite:aae491af836b19471a7306a4f2fec9e5eb8cd68184ce26ec6aeea033e593a15e`
|
|
1878
|
+
- `@satinhq/kit/install:e080a0874c9490077cf9cbb117e03d5d58252226e9424d84101be7ee4454a422`
|
|
1879
|
+
- `@satinhq/kit/internal:ef9f8b828d9a5f3d775c7cf72cccbdeb98b919ec55379941f2f3d08ce6c4ac41`
|
|
1880
|
+
- `@satinhq/kit/unstable:59f001f3090a2b56ad18df3b0ef8b7d4546c5c7ccbbfc4f793da98d1ad27bf34`
|
|
1881
|
+
- `@satinhq/kit/server:7d2b996d9541bd82fd0936e0482554f3182ffe004be56928e590ad4c4c8c79bd`
|
|
1882
|
+
- `@satinhq/kit/testing:04a86ddf0741e53228777bd599cbd00ff503b9e216a1f86a9791fdbee1bd5e12`
|
|
1883
|
+
- `@satinhq/kit/diagnostics:05327eaa9f5a55ab73834d5abaeaeffd98cfc6294fa5af5d3ba03a8609463eac`
|
|
1884
|
+
- `@satinhq/kit/internal/vite:127e9845619cf9939e4200986696109e5412492394afa432c1ae9c9cde98121b`
|
|
1867
1885
|
|
|
1868
1886
|
## Framework source fingerprint
|
|
1869
1887
|
|
|
1870
|
-
SHA-256 of sorted TS/TSX/CSS source paths and bytes, excluding tests:
|
|
1888
|
+
SHA-256 of sorted TS/TSX/CSS source paths and bytes, excluding tests: 40d2340c8fd86ac09bd15e68f837c5ebd212c0b2e0b8c2cda725e13a156e65f0
|