superdoc 2.23.1-next.9 → 2.24.0-next.2

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.
@@ -706,6 +706,9 @@
706
706
  --sd-ui-surface-content-padding: 16px 20px 20px;
707
707
  --sd-ui-dialog-backdrop: rgba(0, 0, 0, 0.4);
708
708
  --sd-ui-dialog-max-width: 480px;
709
+ --sd-ui-cross-reference-max-width: 480px;
710
+ --sd-ui-cross-reference-list-height: 320px;
711
+ --sd-ui-cross-reference-selected-bg: color-mix(in srgb, var(--sd-ui-action) 8%, var(--sd-ui-surface-bg));
709
712
  --sd-ui-floating-width: 360px;
710
713
  --sd-ui-floating-max-width: 480px;
711
714
  --sd-ui-floating-max-height: min(60vh, calc(100% - 32px));
@@ -1975,12 +1978,12 @@ img[data-v-c95b2073] {
1975
1978
  padding: 38px 75px 75px;
1976
1979
  }
1977
1980
 
1978
- .link-input-wrapper[data-v-498a6e6e] {
1981
+ .link-input-wrapper[data-v-360db842] {
1979
1982
  display: flex;
1980
1983
  flex-direction: column;
1981
1984
  gap: 8px;
1982
1985
  }
1983
- .link-input-ctn[data-v-498a6e6e] {
1986
+ .link-input-ctn[data-v-360db842] {
1984
1987
  width: 320px;
1985
1988
  display: flex;
1986
1989
  flex-direction: column;
@@ -1989,20 +1992,20 @@ img[data-v-c95b2073] {
1989
1992
  background-color: var(--sd-ui-dropdown-bg, #ffffff);
1990
1993
  box-sizing: border-box;
1991
1994
  }
1992
- .link-input-ctn[data-v-498a6e6e] svg {
1995
+ .link-input-ctn[data-v-360db842] svg {
1993
1996
  width: 100%;
1994
1997
  height: 100%;
1995
1998
  display: block;
1996
1999
  fill: currentColor;
1997
2000
  }
1998
- .link-input-ctn .input-row[data-v-498a6e6e] {
2001
+ .link-input-ctn .input-row[data-v-360db842] {
1999
2002
  align-content: baseline;
2000
2003
  display: flex;
2001
2004
  align-items: center;
2002
2005
  position: relative;
2003
2006
  font-size: var(--sd-ui-font-size-600, 16px);
2004
2007
  }
2005
- .link-input-ctn .input-row input[data-v-498a6e6e] {
2008
+ .link-input-ctn .input-row input[data-v-360db842] {
2006
2009
  font-size: var(--sd-ui-font-size-300, 13px);
2007
2010
  flex-grow: 1;
2008
2011
  min-width: 0;
@@ -2014,22 +2017,22 @@ img[data-v-c95b2073] {
2014
2017
  border: 1px solid var(--sd-ui-border, #dbdbdb);
2015
2018
  box-sizing: border-box;
2016
2019
  }
2017
- .link-input-ctn .input-row input[data-v-498a6e6e]:active,
2018
- .link-input-ctn .input-row input[data-v-498a6e6e]:focus {
2020
+ .link-input-ctn .input-row input[data-v-360db842]:active,
2021
+ .link-input-ctn .input-row input[data-v-360db842]:focus {
2019
2022
  outline: none;
2020
2023
  border: 1px solid var(--sd-ui-action, #1355ff);
2021
2024
  }
2022
- .link-input-ctn .input-row input[readonly][data-v-498a6e6e] {
2025
+ .link-input-ctn .input-row input[readonly][data-v-360db842] {
2023
2026
  background-color: var(--sd-ui-disabled-bg, #f5f5f5);
2024
2027
  cursor: default;
2025
2028
  color: var(--sd-ui-text-disabled, #888);
2026
2029
  border-color: var(--sd-ui-border, #e0e0e0);
2027
2030
  }
2028
- .link-input-ctn .input-row input[readonly][data-v-498a6e6e]:active,
2029
- .link-input-ctn .input-row input[readonly][data-v-498a6e6e]:focus {
2031
+ .link-input-ctn .input-row input[readonly][data-v-360db842]:active,
2032
+ .link-input-ctn .input-row input[readonly][data-v-360db842]:focus {
2030
2033
  border-color: var(--sd-ui-border, #e0e0e0);
2031
2034
  }
2032
- .link-input-ctn .input-icon[data-v-498a6e6e] {
2035
+ .link-input-ctn .input-icon[data-v-360db842] {
2033
2036
  position: absolute;
2034
2037
  left: 12px;
2035
2038
  width: 14px;
@@ -2038,18 +2041,18 @@ img[data-v-c95b2073] {
2038
2041
  text-align: center;
2039
2042
  z-index: 1;
2040
2043
  }
2041
- .link-input-ctn .input-icon[data-v-498a6e6e]:not(.text-input-icon) {
2044
+ .link-input-ctn .input-icon[data-v-360db842]:not(.text-input-icon) {
2042
2045
  transform: rotate(45deg);
2043
2046
  height: 14px;
2044
2047
  }
2045
- .link-input-ctn.high-contrast .input-icon[data-v-498a6e6e] {
2048
+ .link-input-ctn.high-contrast .input-icon[data-v-360db842] {
2046
2049
  color: var(--sd-ui-text, #47484a);
2047
2050
  }
2048
- .link-input-ctn.high-contrast .input-row input[data-v-498a6e6e] {
2051
+ .link-input-ctn.high-contrast .input-row input[data-v-360db842] {
2049
2052
  color: var(--sd-ui-text, #47484a);
2050
2053
  border-color: var(--sd-ui-text, #47484a);
2051
2054
  }
2052
- .open-link-icon[data-v-498a6e6e] {
2055
+ .open-link-icon[data-v-360db842] {
2053
2056
  margin-left: 10px;
2054
2057
  width: 30px;
2055
2058
  height: 30px;
@@ -2062,57 +2065,57 @@ img[data-v-c95b2073] {
2062
2065
  transition: all 0.2s ease;
2063
2066
  cursor: pointer;
2064
2067
  }
2065
- .open-link-icon[data-v-498a6e6e]:hover {
2068
+ .open-link-icon[data-v-360db842]:hover {
2066
2069
  color: var(--sd-ui-action, #1355ff);
2067
2070
  background-color: var(--sd-ui-bg, #ffffff);
2068
2071
  border: 1px solid var(--sd-ui-border, #dbdbdb);
2069
2072
  }
2070
- .open-link-icon[data-v-498a6e6e] svg {
2073
+ .open-link-icon[data-v-360db842] svg {
2071
2074
  width: 15px;
2072
2075
  height: 15px;
2073
2076
  }
2074
- .sd-disabled[data-v-498a6e6e] {
2077
+ .sd-disabled[data-v-360db842] {
2075
2078
  opacity: 0.6;
2076
2079
  cursor: not-allowed;
2077
2080
  pointer-events: none;
2078
2081
  }
2079
- .link-buttons[data-v-498a6e6e] {
2082
+ .link-buttons[data-v-360db842] {
2080
2083
  display: flex;
2081
2084
  justify-content: flex-end;
2082
2085
  margin-top: 10px;
2083
2086
  }
2084
- .remove-btn__icon[data-v-498a6e6e] {
2087
+ .remove-btn__icon[data-v-360db842] {
2085
2088
  display: inline-flex;
2086
2089
  width: 13px;
2087
2090
  height: 13px;
2088
2091
  flex-shrink: 0;
2089
2092
  margin-right: 4px;
2090
2093
  }
2091
- .link-buttons button[data-v-498a6e6e] {
2094
+ .link-buttons button[data-v-360db842] {
2092
2095
  margin-left: 5px;
2093
2096
  }
2094
- .disable-btn[data-v-498a6e6e] {
2097
+ .disable-btn[data-v-360db842] {
2095
2098
  opacity: 0.6;
2096
2099
  cursor: not-allowed;
2097
2100
  pointer-events: none;
2098
2101
  }
2099
- .go-to-anchor a[data-v-498a6e6e] {
2102
+ .go-to-anchor a[data-v-360db842] {
2100
2103
  font-size: var(--sd-ui-font-size-400, 14px);
2101
2104
  text-decoration: underline;
2102
2105
  }
2103
- .clickable[data-v-498a6e6e] {
2106
+ .clickable[data-v-360db842] {
2104
2107
  cursor: pointer;
2105
2108
  }
2106
- .link-title[data-v-498a6e6e] {
2109
+ .link-title[data-v-360db842] {
2107
2110
  font-size: var(--sd-ui-font-size-400, 14px);
2108
2111
  font-weight: 600;
2109
2112
  color: var(--sd-ui-text, #47484a);
2110
2113
  margin-bottom: 10px;
2111
2114
  }
2112
- .hasBottomMargin[data-v-498a6e6e] {
2115
+ .hasBottomMargin[data-v-360db842] {
2113
2116
  margin-bottom: 1em;
2114
2117
  }
2115
- .remove-btn[data-v-498a6e6e] {
2118
+ .remove-btn[data-v-360db842] {
2116
2119
  display: inline-flex;
2117
2120
  justify-content: center;
2118
2121
  align-items: center;
@@ -2128,10 +2131,10 @@ img[data-v-c95b2073] {
2128
2131
  border: 1px solid var(--sd-ui-border, #dbdbdb);
2129
2132
  box-sizing: border-box;
2130
2133
  }
2131
- .remove-btn[data-v-498a6e6e]:hover {
2134
+ .remove-btn[data-v-360db842]:hover {
2132
2135
  background-color: var(--sd-ui-hover-bg, #dbdbdb);
2133
2136
  }
2134
- .sd-submit-btn[data-v-498a6e6e] {
2137
+ .sd-submit-btn[data-v-360db842] {
2135
2138
  display: inline-flex;
2136
2139
  justify-content: center;
2137
2140
  align-items: center;
@@ -2147,10 +2150,10 @@ img[data-v-c95b2073] {
2147
2150
  transition: all 0.2s ease;
2148
2151
  box-sizing: border-box;
2149
2152
  }
2150
- .sd-submit-btn[data-v-498a6e6e]:hover {
2153
+ .sd-submit-btn[data-v-360db842]:hover {
2151
2154
  background-color: var(--sd-ui-action-hover, #0f44cc);
2152
2155
  }
2153
- .sd-error[data-v-498a6e6e] {
2156
+ .sd-error[data-v-360db842] {
2154
2157
  border-color: red !important;
2155
2158
  background-color: #ff00001a;
2156
2159
  }
@@ -2159,7 +2162,7 @@ img[data-v-c95b2073] {
2159
2162
  width: 100%;
2160
2163
  }
2161
2164
 
2162
- .sd-surface-dialog-backdrop[data-v-582b6534] {
2165
+ .sd-surface-dialog-backdrop[data-v-5cee3b11] {
2163
2166
  position: fixed;
2164
2167
  inset: 0;
2165
2168
  z-index: var(--sd-ui-dialog-z-index, 2147483001);
@@ -2170,7 +2173,7 @@ img[data-v-c95b2073] {
2170
2173
  justify-content: center;
2171
2174
  background: var(--sd-ui-dialog-backdrop, rgba(18, 24, 38, 0.32));
2172
2175
  }
2173
- .sd-surface-dialog[data-v-582b6534] {
2176
+ .sd-surface-dialog[data-v-5cee3b11] {
2174
2177
  box-sizing: border-box;
2175
2178
  min-width: 0;
2176
2179
  background: var(--sd-ui-surface-bg);
@@ -2185,35 +2188,35 @@ img[data-v-c95b2073] {
2185
2188
  font-family: var(--sd-ui-font-family);
2186
2189
  color: var(--sd-ui-text);
2187
2190
  }
2188
- .sd-surface-dialog__title[data-v-582b6534] {
2191
+ .sd-surface-dialog__title[data-v-5cee3b11] {
2189
2192
  padding: var(--sd-ui-surface-title-padding);
2190
2193
  font-size: var(--sd-ui-font-size-500, 15px);
2191
2194
  font-weight: 600;
2192
2195
  line-height: 1.4;
2193
2196
  }
2194
- .sd-surface-dialog__content[data-v-582b6534] {
2197
+ .sd-surface-dialog__content[data-v-5cee3b11] {
2195
2198
  padding: var(--sd-ui-surface-content-padding);
2196
2199
  }
2197
2200
 
2198
2201
  /* Built-in dialogs share chrome while their components own fields and actions. */
2199
- .sd-surface-dialog[data-v-582b6534]:has(.sd-dialog-content) {
2202
+ .sd-surface-dialog[data-v-5cee3b11]:has(.sd-dialog-content) {
2200
2203
  display: flex;
2201
2204
  flex-direction: column;
2202
2205
  overflow: hidden;
2203
2206
  }
2204
- .sd-surface-dialog__content[data-v-582b6534]:has(> .sd-dialog-content) {
2207
+ .sd-surface-dialog__content[data-v-5cee3b11]:has(> .sd-dialog-content) {
2205
2208
  display: flex;
2206
2209
  flex-direction: column;
2207
2210
  min-height: 0;
2208
2211
  padding: 0;
2209
2212
  }
2210
- .sd-surface-dialog[data-v-582b6534] .sd-dialog-content {
2213
+ .sd-surface-dialog[data-v-5cee3b11] .sd-dialog-content {
2211
2214
  display: flex;
2212
2215
  flex-direction: column;
2213
2216
  min-height: 0;
2214
2217
  max-height: calc(100dvh - 34px);
2215
2218
  }
2216
- .sd-surface-dialog[data-v-582b6534] .sd-dialog-header {
2219
+ .sd-surface-dialog[data-v-5cee3b11] .sd-dialog-header {
2217
2220
  display: flex;
2218
2221
  flex: none;
2219
2222
  align-items: center;
@@ -2222,13 +2225,13 @@ img[data-v-c95b2073] {
2222
2225
  padding: 14px 16px;
2223
2226
  border-bottom: 1px solid var(--sd-ui-surface-border, #e4e7ec);
2224
2227
  }
2225
- .sd-surface-dialog[data-v-582b6534] .sd-dialog-header h2 {
2228
+ .sd-surface-dialog[data-v-5cee3b11] .sd-dialog-header h2 {
2226
2229
  margin: 0;
2227
2230
  font-size: 18px;
2228
2231
  font-weight: 650;
2229
2232
  letter-spacing: -0.01em;
2230
2233
  }
2231
- .sd-surface-dialog[data-v-582b6534] .sd-dialog-close {
2234
+ .sd-surface-dialog[data-v-5cee3b11] .sd-dialog-close {
2232
2235
  display: grid;
2233
2236
  flex: none;
2234
2237
  place-items: center;
@@ -2243,10 +2246,10 @@ img[data-v-c95b2073] {
2243
2246
  line-height: 1;
2244
2247
  cursor: pointer;
2245
2248
  }
2246
- .sd-surface-dialog[data-v-582b6534] .sd-dialog-close:hover {
2249
+ .sd-surface-dialog[data-v-5cee3b11] .sd-dialog-close:hover {
2247
2250
  background: var(--sd-ui-hover-bg, #f2f4f7);
2248
2251
  }
2249
- .sd-surface-dialog[data-v-582b6534] .sd-dialog-footer {
2252
+ .sd-surface-dialog[data-v-5cee3b11] .sd-dialog-footer {
2250
2253
  display: flex;
2251
2254
  flex: none;
2252
2255
  align-items: center;
@@ -2256,7 +2259,7 @@ img[data-v-c95b2073] {
2256
2259
  border-top: 1px solid var(--sd-ui-surface-border, #eaecf0);
2257
2260
  background: var(--sd-ui-surface-bg, #fff);
2258
2261
  }
2259
- .sd-surface-dialog[data-v-582b6534] .sd-dialog-footer button {
2262
+ .sd-surface-dialog[data-v-5cee3b11] .sd-dialog-footer button {
2260
2263
  min-width: 72px;
2261
2264
  min-height: 32px;
2262
2265
  padding: 7px 12px;
@@ -2266,17 +2269,17 @@ img[data-v-c95b2073] {
2266
2269
  font-weight: 600;
2267
2270
  cursor: pointer;
2268
2271
  }
2269
- .sd-surface-dialog[data-v-582b6534] .sd-dialog-secondary {
2272
+ .sd-surface-dialog[data-v-5cee3b11] .sd-dialog-secondary {
2270
2273
  border: 1px solid var(--sd-ui-surface-border, #cfd4dc);
2271
2274
  background: var(--sd-ui-surface-bg, #fff);
2272
2275
  color: var(--sd-ui-text, #344054);
2273
2276
  }
2274
- .sd-surface-dialog[data-v-582b6534] .sd-dialog-primary {
2277
+ .sd-surface-dialog[data-v-5cee3b11] .sd-dialog-primary {
2275
2278
  border: 1px solid var(--sd-ui-action, #3367d6);
2276
2279
  background: var(--sd-ui-action, #3367d6);
2277
2280
  color: var(--sd-ui-action-text, #fff);
2278
2281
  }
2279
- .sd-surface-dialog[data-v-582b6534] .sd-dialog-footer button:disabled {
2282
+ .sd-surface-dialog[data-v-5cee3b11] .sd-dialog-footer button:disabled {
2280
2283
  cursor: not-allowed;
2281
2284
  opacity: 0.55;
2282
2285
  }
@@ -2967,10 +2970,10 @@ img[data-v-c95b2073] {
2967
2970
  color: #fff;
2968
2971
  }
2969
2972
 
2970
- .sd-tooltip-trigger[data-v-1449088a] {
2973
+ .sd-tooltip-trigger[data-v-71c6de4c] {
2971
2974
  display: inline-flex;
2972
2975
  }
2973
- .sd-tooltip-content[data-v-1449088a] {
2976
+ .sd-tooltip-content[data-v-71c6de4c] {
2974
2977
  background-color: var(--sd-ui-tooltip-bg, #262626);
2975
2978
  color: var(--sd-ui-tooltip-text, #fff);
2976
2979
  font-size: var(--sd-ui-font-size-400, 14px);
@@ -2981,7 +2984,7 @@ img[data-v-c95b2073] {
2981
2984
  pointer-events: auto;
2982
2985
  white-space: nowrap;
2983
2986
  }
2984
- .sd-tooltip-arrow[data-v-1449088a] {
2987
+ .sd-tooltip-arrow[data-v-71c6de4c] {
2985
2988
  position: absolute;
2986
2989
  left: 50%;
2987
2990
  bottom: -5px;
@@ -2990,19 +2993,20 @@ img[data-v-c95b2073] {
2990
2993
  background-color: var(--sd-ui-tooltip-bg, #262626);
2991
2994
  transform: translateX(-50%) rotate(45deg);
2992
2995
  }
2993
- .fade-in-scale-up-transition-enter-active[data-v-1449088a] {
2994
- transform-origin: bottom center;
2996
+ .sd-tooltip-below .sd-tooltip-arrow[data-v-71c6de4c] {
2997
+ top: -5px;
2998
+ bottom: auto;
2995
2999
  }
2996
- .fade-in-scale-up-transition-enter-active[data-v-1449088a] {
3000
+ .fade-in-scale-up-transition-enter-active[data-v-71c6de4c] {
2997
3001
  transition:
2998
3002
  opacity 0.2s cubic-bezier(0, 0, 0.2, 1),
2999
3003
  transform 0.2s cubic-bezier(0, 0, 0.2, 1);
3000
3004
  }
3001
- .fade-in-scale-up-transition-enter-from[data-v-1449088a] {
3005
+ .fade-in-scale-up-transition-enter-from[data-v-71c6de4c] {
3002
3006
  opacity: 0;
3003
3007
  transform: scale(0.9);
3004
3008
  }
3005
- .fade-in-scale-up-transition-enter-to[data-v-1449088a] {
3009
+ .fade-in-scale-up-transition-enter-to[data-v-71c6de4c] {
3006
3010
  opacity: 1;
3007
3011
  transform: scale(1);
3008
3012
  }
@@ -156,8 +156,13 @@ export type BookmarkGetResult = {
156
156
  range?: {
157
157
  from?: {
158
158
  blockId?: string;
159
+ offset?: number;
159
160
  };
160
161
  } | undefined;
162
+ tableColumn?: {
163
+ colFirst: number;
164
+ colLast: number;
165
+ } | undefined;
161
166
  };
162
167
  /**
163
168
  * The narrow Document API subset this composable reads. The host facade
@@ -189,6 +194,15 @@ export type LinkPopoverDocumentApi = {
189
194
  }) => HyperlinkGetResult | Promise<HyperlinkGetResult | null | undefined> | null | undefined;
190
195
  } | null | undefined;
191
196
  bookmarks?: {
197
+ list?: () => Promise<{
198
+ items: Array<{
199
+ name: string;
200
+ }>;
201
+ }> | {
202
+ items: Array<{
203
+ name: string;
204
+ }>;
205
+ };
192
206
  get?: (input: {
193
207
  target: {
194
208
  kind: "entity";
@@ -1270,6 +1270,20 @@ export interface MetadataHandle {
1270
1270
  * through; custom UIs read it to enable / label their own table controls.
1271
1271
  */
1272
1272
  export interface TableContextInfo {
1273
+ /** Runtime always supplies status; stale/pending snapshots carry no previous cell IDs. */
1274
+ status?: SliceStatus;
1275
+ /** Inclusive logical bounding geometry; use tableSelection for exact membership. */
1276
+ cellRange?: {
1277
+ start: {
1278
+ rowIndex: number;
1279
+ columnIndex: number;
1280
+ };
1281
+ end: {
1282
+ rowIndex: number;
1283
+ columnIndex: number;
1284
+ };
1285
+ } | null;
1286
+ tableSelection?: SelectionInfo['tableSelection'];
1273
1287
  /** Whether the current selection is inside a table. */
1274
1288
  inTable: boolean;
1275
1289
  /** Stable node id of the enclosing table, when resolved. */
@@ -1289,6 +1303,8 @@ export interface TableContextInfo {
1289
1303
  export interface TablesHandle {
1290
1304
  /** Read the current table context snapshot. */
1291
1305
  getContext(): TableContextInfo;
1306
+ /** Resolve fresh, bounded table context for immediate context-menu callbacks. */
1307
+ getContextAsync(): Promise<TableContextInfo>;
1292
1308
  /** Convenience: whether the current selection is inside a table. */
1293
1309
  isInTable(): boolean;
1294
1310
  }
@@ -89,6 +89,8 @@ import type { SuperDocUIOptions as __Cjs_SuperDocUIOptions } from './ui.js' with
89
89
  import type { SuperDocUIReason as __Cjs_SuperDocUIReason } from './ui.js' with { "resolution-mode": "import" };
90
90
  import type { SuperDocUIScope as __Cjs_SuperDocUIScope } from './ui.js' with { "resolution-mode": "import" };
91
91
  import type { SuperDocUIState as __Cjs_SuperDocUIState } from './ui.js' with { "resolution-mode": "import" };
92
+ import type { TableContextInfo as __Cjs_TableContextInfo } from './ui.js' with { "resolution-mode": "import" };
93
+ import type { TablesHandle as __Cjs_TablesHandle } from './ui.js' with { "resolution-mode": "import" };
92
94
  import type { TextAddress as __Cjs_TextAddress } from './ui.js' with { "resolution-mode": "import" };
93
95
  import type { TextTarget as __Cjs_TextTarget } from './ui.js' with { "resolution-mode": "import" };
94
96
  import type { TextWatermark as __Cjs_TextWatermark } from './ui.js' with { "resolution-mode": "import" };
@@ -214,6 +216,8 @@ export type { __Cjs_SuperDocUIOptions as SuperDocUIOptions };
214
216
  export type { __Cjs_SuperDocUIReason as SuperDocUIReason };
215
217
  export type { __Cjs_SuperDocUIScope as SuperDocUIScope };
216
218
  export type { __Cjs_SuperDocUIState as SuperDocUIState };
219
+ export type { __Cjs_TableContextInfo as TableContextInfo };
220
+ export type { __Cjs_TablesHandle as TablesHandle };
217
221
  export type { __Cjs_TextAddress as TextAddress };
218
222
  export type { __Cjs_TextTarget as TextTarget };
219
223
  export type { __Cjs_TextWatermark as TextWatermark };
@@ -26,4 +26,4 @@
26
26
  export { createSuperDocUI } from './ui/create-super-doc-ui.js';
27
27
  export { shallowEqual } from './ui/equality.js';
28
28
  export { BUILT_IN_COMMAND_IDS } from './ui/commands.js';
29
- export type { EqualityFn, SelectorFn, Subscribable, SuperDocUI, BorrowedSuperDocUI, SuperDocUIOptions, SuperDocUIState, SuperDocUIScope, SuperDocLike, SuperDocEditorLike, CommandHandle, CommandState, CommandExecutionResult, WorkflowReceipt, WorkflowActionResult, WorkflowScrollResult, SelectionRestoreResult, SuperDocUIReason, CommandId, CommandsHandle, ContextMenuItem, ContextMenuHandle, WatermarkHandle, SearchController, SearchHandle, SearchQueryOptions, CustomCommandContext, CustomCommandHandle, CustomCommandHandleState, CustomCommandRegistration, CustomCommandRegistrationResult, MetadataHandle, SelectionHandle, ToolbarHandle, BuiltInCommandId, ToolbarCommandId, CommentsHandle, TrackChangesHandle, ContentControlsHandle, BookmarksHandle, BookmarkAddress, ContentControlFocusResult, ContentControlHighlightResult, FontsHandle, ZoomHandle, DocumentHandle, DocumentReplacementResult, ViewportHandle, StylesHandle, ActiveParagraphStyle, SliceStatus, SelectionSlice, SelectionCapture, CommentAnchorCapture, ToolbarSnapshotSlice, CommentsSlice, TrackChangesSlice, ContentControlsSlice, FontsSlice, ZoomSlice, DocumentSlice, StylesSlice, SearchSnapshot, SearchSlice, StyleCatalogView, StyleCatalogItemType, StyleCatalogFilterType, StyleProvenance, StyleCatalogItemVisibility, StyleCatalogItemUsage, StyleCatalogItemPreview, StyleCatalogItem, StyleCatalogDefaults, StyleCatalogDiagnostic, StyleCatalogSourceStatus, StylesGetCatalogInput, StylesGetCatalogResult, CommentInfo, CommentsListQuery, TrackChangeInfo, TrackChangePointHit, TrackChangesItem, FontFamilyOption, FontSizeOption, CommentAddress, TrackedChangeAddress, ContentControlViewportAddress, ViewportEntityAddress, ViewportEntityHit, ViewportContext, ViewportRect, ViewportGetRectInput, ViewportRectResult, BrowserDocumentApi, PartialBrowserDocumentApi, DocumentApi, Receipt, SelectionInfo, SelectionTarget, SelectionPoint, TextTarget, TextAddress, ScrollIntoViewInput, ScrollIntoViewOutput, EntityAddress, CommentsListResult, TrackChangesListResult, ContentControlsListResult, ContentControlInfo, ContentControlTarget, RichContentInsertInput, OperationCapabilityResolveResult, SDHtmlMarkdownSupportCheckResult, PictureWatermarkInput, RetainedPictureWatermarkInput, TextWatermark, WatermarkInfo, WatermarkTarget, WatermarksApplyInput, WatermarksApplyResult, WatermarksApplySuccess, WatermarksApplyTarget, } from './ui/types.js';
29
+ export type { EqualityFn, SelectorFn, Subscribable, SuperDocUI, BorrowedSuperDocUI, SuperDocUIOptions, SuperDocUIState, SuperDocUIScope, SuperDocLike, SuperDocEditorLike, CommandHandle, CommandState, CommandExecutionResult, WorkflowReceipt, WorkflowActionResult, WorkflowScrollResult, SelectionRestoreResult, SuperDocUIReason, CommandId, CommandsHandle, ContextMenuItem, ContextMenuHandle, WatermarkHandle, SearchController, SearchHandle, SearchQueryOptions, CustomCommandContext, CustomCommandHandle, CustomCommandHandleState, CustomCommandRegistration, CustomCommandRegistrationResult, MetadataHandle, SelectionHandle, TablesHandle, TableContextInfo, ToolbarHandle, BuiltInCommandId, ToolbarCommandId, CommentsHandle, TrackChangesHandle, ContentControlsHandle, BookmarksHandle, BookmarkAddress, ContentControlFocusResult, ContentControlHighlightResult, FontsHandle, ZoomHandle, DocumentHandle, DocumentReplacementResult, ViewportHandle, StylesHandle, ActiveParagraphStyle, SliceStatus, SelectionSlice, SelectionCapture, CommentAnchorCapture, ToolbarSnapshotSlice, CommentsSlice, TrackChangesSlice, ContentControlsSlice, FontsSlice, ZoomSlice, DocumentSlice, StylesSlice, SearchSnapshot, SearchSlice, StyleCatalogView, StyleCatalogItemType, StyleCatalogFilterType, StyleProvenance, StyleCatalogItemVisibility, StyleCatalogItemUsage, StyleCatalogItemPreview, StyleCatalogItem, StyleCatalogDefaults, StyleCatalogDiagnostic, StyleCatalogSourceStatus, StylesGetCatalogInput, StylesGetCatalogResult, CommentInfo, CommentsListQuery, TrackChangeInfo, TrackChangePointHit, TrackChangesItem, FontFamilyOption, FontSizeOption, CommentAddress, TrackedChangeAddress, ContentControlViewportAddress, ViewportEntityAddress, ViewportEntityHit, ViewportContext, ViewportRect, ViewportGetRectInput, ViewportRectResult, BrowserDocumentApi, PartialBrowserDocumentApi, DocumentApi, Receipt, SelectionInfo, SelectionTarget, SelectionPoint, TextTarget, TextAddress, ScrollIntoViewInput, ScrollIntoViewOutput, EntityAddress, CommentsListResult, TrackChangesListResult, ContentControlsListResult, ContentControlInfo, ContentControlTarget, RichContentInsertInput, OperationCapabilityResolveResult, SDHtmlMarkdownSupportCheckResult, PictureWatermarkInput, RetainedPictureWatermarkInput, TextWatermark, WatermarkInfo, WatermarkTarget, WatermarksApplyInput, WatermarksApplyResult, WatermarksApplySuccess, WatermarksApplyTarget, } from './ui/types.js';