@gtkx/react 0.21.0 → 1.0.0-rc.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.
Files changed (599) hide show
  1. package/README.md +137 -34
  2. package/dist/adw/config.d.ts +2 -0
  3. package/dist/adw/config.d.ts.map +1 -0
  4. package/dist/adw/config.js +2 -0
  5. package/dist/adw/config.js.map +1 -0
  6. package/dist/adw/dialog.d.ts +8 -0
  7. package/dist/adw/dialog.d.ts.map +1 -0
  8. package/dist/adw/dialog.js +25 -0
  9. package/dist/adw/dialog.js.map +1 -0
  10. package/dist/adw/element-behaviors.d.ts +2 -0
  11. package/dist/adw/element-behaviors.d.ts.map +1 -0
  12. package/dist/adw/element-behaviors.js +299 -0
  13. package/dist/adw/element-behaviors.js.map +1 -0
  14. package/dist/adw/element-config.d.ts +9 -0
  15. package/dist/adw/element-config.d.ts.map +1 -0
  16. package/dist/adw/element-config.js +137 -0
  17. package/dist/adw/element-config.js.map +1 -0
  18. package/dist/adw/index.d.ts +4 -0
  19. package/dist/adw/index.d.ts.map +1 -0
  20. package/dist/adw/index.js +3 -0
  21. package/dist/adw/index.js.map +1 -0
  22. package/dist/adw/prop-types.d.ts +29 -0
  23. package/dist/adw/prop-types.d.ts.map +1 -0
  24. package/dist/adw/prop-types.js +2 -0
  25. package/dist/adw/prop-types.js.map +1 -0
  26. package/dist/bootstrap.d.ts +2 -0
  27. package/dist/bootstrap.d.ts.map +1 -0
  28. package/dist/bootstrap.js +5 -0
  29. package/dist/bootstrap.js.map +1 -0
  30. package/dist/components/application.d.ts +10 -0
  31. package/dist/components/application.d.ts.map +1 -0
  32. package/dist/components/application.js +39 -0
  33. package/dist/components/application.js.map +1 -0
  34. package/dist/components/element.d.ts +6 -0
  35. package/dist/components/element.d.ts.map +1 -0
  36. package/dist/components/element.js +29 -0
  37. package/dist/components/element.js.map +1 -0
  38. package/dist/components/window.d.ts +8 -0
  39. package/dist/components/window.d.ts.map +1 -0
  40. package/dist/components/window.js +22 -0
  41. package/dist/components/window.js.map +1 -0
  42. package/dist/config.d.ts +4 -0
  43. package/dist/config.d.ts.map +1 -0
  44. package/dist/config.js +3 -0
  45. package/dist/config.js.map +1 -0
  46. package/dist/element-behaviors.d.ts +2 -0
  47. package/dist/element-behaviors.d.ts.map +1 -0
  48. package/dist/element-behaviors.js +348 -0
  49. package/dist/element-behaviors.js.map +1 -0
  50. package/dist/element-config.d.ts +10 -0
  51. package/dist/element-config.d.ts.map +1 -0
  52. package/dist/element-config.js +146 -0
  53. package/dist/element-config.js.map +1 -0
  54. package/dist/hooks/use-application.d.ts +9 -0
  55. package/dist/hooks/use-application.d.ts.map +1 -0
  56. package/dist/hooks/use-application.js +14 -0
  57. package/dist/hooks/use-application.js.map +1 -0
  58. package/dist/hooks/use-bind-setting.d.ts +23 -0
  59. package/dist/hooks/use-bind-setting.d.ts.map +1 -0
  60. package/dist/hooks/use-bind-setting.js +30 -0
  61. package/dist/hooks/use-bind-setting.js.map +1 -0
  62. package/dist/hooks/use-merged-refs.d.ts +8 -0
  63. package/dist/hooks/use-merged-refs.d.ts.map +1 -0
  64. package/dist/hooks/use-merged-refs.js +48 -0
  65. package/dist/hooks/use-merged-refs.js.map +1 -0
  66. package/dist/hooks/use-object-value.d.ts +5 -0
  67. package/dist/hooks/use-object-value.d.ts.map +1 -0
  68. package/dist/hooks/use-object-value.js +29 -0
  69. package/dist/hooks/use-object-value.js.map +1 -0
  70. package/dist/hooks/use-parent-window.d.ts +9 -0
  71. package/dist/hooks/use-parent-window.d.ts.map +1 -0
  72. package/dist/hooks/use-parent-window.js +8 -0
  73. package/dist/hooks/use-parent-window.js.map +1 -0
  74. package/dist/hooks/use-property.d.ts +14 -0
  75. package/dist/hooks/use-property.d.ts.map +1 -0
  76. package/dist/hooks/use-property.js +14 -0
  77. package/dist/hooks/use-property.js.map +1 -0
  78. package/dist/hooks/use-setting.d.ts +14 -0
  79. package/dist/hooks/use-setting.d.ts.map +1 -0
  80. package/dist/hooks/use-setting.js +20 -0
  81. package/dist/hooks/use-setting.js.map +1 -0
  82. package/dist/hooks/use-signal.d.ts +24 -0
  83. package/dist/hooks/use-signal.d.ts.map +1 -0
  84. package/dist/hooks/use-signal.js +31 -0
  85. package/dist/hooks/use-signal.js.map +1 -0
  86. package/dist/index.d.ts +13 -7
  87. package/dist/index.d.ts.map +1 -1
  88. package/dist/index.js +9 -7
  89. package/dist/index.js.map +1 -1
  90. package/dist/internal.d.ts +13 -0
  91. package/dist/internal.d.ts.map +1 -0
  92. package/dist/internal.js +12 -0
  93. package/dist/internal.js.map +1 -0
  94. package/dist/prop-types.d.ts +110 -0
  95. package/dist/prop-types.d.ts.map +1 -0
  96. package/dist/prop-types.js +2 -0
  97. package/dist/prop-types.js.map +1 -0
  98. package/dist/reconciler/apply-props.d.ts +11 -0
  99. package/dist/reconciler/apply-props.d.ts.map +1 -0
  100. package/dist/reconciler/apply-props.js +190 -0
  101. package/dist/reconciler/apply-props.js.map +1 -0
  102. package/dist/reconciler/behaviors.d.ts +59 -0
  103. package/dist/reconciler/behaviors.d.ts.map +1 -0
  104. package/dist/reconciler/behaviors.js +172 -0
  105. package/dist/reconciler/behaviors.js.map +1 -0
  106. package/dist/reconciler/child-routing.d.ts +5 -0
  107. package/dist/reconciler/child-routing.d.ts.map +1 -0
  108. package/dist/reconciler/child-routing.js +156 -0
  109. package/dist/reconciler/child-routing.js.map +1 -0
  110. package/dist/reconciler/host-config.d.ts +9 -0
  111. package/dist/reconciler/host-config.d.ts.map +1 -0
  112. package/dist/reconciler/host-config.js +214 -0
  113. package/dist/reconciler/host-config.js.map +1 -0
  114. package/dist/reconciler/instance.d.ts +5 -0
  115. package/dist/reconciler/instance.d.ts.map +1 -0
  116. package/dist/reconciler/instance.js +49 -0
  117. package/dist/reconciler/instance.js.map +1 -0
  118. package/dist/reconciler/metadata.d.ts +17 -0
  119. package/dist/reconciler/metadata.d.ts.map +1 -0
  120. package/dist/reconciler/metadata.js +82 -0
  121. package/dist/reconciler/metadata.js.map +1 -0
  122. package/dist/reconciler/node.d.ts +76 -0
  123. package/dist/reconciler/node.d.ts.map +1 -0
  124. package/dist/reconciler/node.js +53 -0
  125. package/dist/reconciler/node.js.map +1 -0
  126. package/dist/reconciler/placement.d.ts +5 -0
  127. package/dist/reconciler/placement.d.ts.map +1 -0
  128. package/dist/reconciler/placement.js +175 -0
  129. package/dist/reconciler/placement.js.map +1 -0
  130. package/dist/reconciler/registry.d.ts +92 -0
  131. package/dist/reconciler/registry.d.ts.map +1 -0
  132. package/dist/reconciler/registry.js +64 -0
  133. package/dist/reconciler/registry.js.map +1 -0
  134. package/dist/reconciler/root-element.d.ts +11 -0
  135. package/dist/reconciler/root-element.d.ts.map +1 -0
  136. package/dist/reconciler/root-element.js +7 -0
  137. package/dist/reconciler/root-element.js.map +1 -0
  138. package/dist/reconciler/root.d.ts +56 -0
  139. package/dist/reconciler/root.d.ts.map +1 -0
  140. package/dist/reconciler/root.js +109 -0
  141. package/dist/reconciler/root.js.map +1 -0
  142. package/dist/reconciler/signals.d.ts +10 -0
  143. package/dist/reconciler/signals.d.ts.map +1 -0
  144. package/dist/reconciler/signals.js +70 -0
  145. package/dist/reconciler/signals.js.map +1 -0
  146. package/dist/reconciler/text.d.ts +19 -0
  147. package/dist/reconciler/text.d.ts.map +1 -0
  148. package/dist/reconciler/text.js +276 -0
  149. package/dist/reconciler/text.js.map +1 -0
  150. package/dist/utils/accessible-metadata.d.ts +12 -0
  151. package/dist/utils/accessible-metadata.d.ts.map +1 -0
  152. package/dist/utils/accessible-metadata.js +25 -0
  153. package/dist/utils/accessible-metadata.js.map +1 -0
  154. package/dist/utils/accessible-props.d.ts +60 -0
  155. package/dist/utils/accessible-props.d.ts.map +1 -0
  156. package/dist/utils/accessible-props.js +181 -0
  157. package/dist/utils/accessible-props.js.map +1 -0
  158. package/dist/utils/ref-prop.d.ts +15 -0
  159. package/dist/utils/ref-prop.d.ts.map +1 -0
  160. package/dist/utils/ref-prop.js +18 -0
  161. package/dist/utils/ref-prop.js.map +1 -0
  162. package/dist/utils/settings.d.ts +17 -0
  163. package/dist/utils/settings.d.ts.map +1 -0
  164. package/dist/utils/settings.js +37 -0
  165. package/dist/utils/settings.js.map +1 -0
  166. package/dist/utils/variant.d.ts +57 -0
  167. package/dist/utils/variant.d.ts.map +1 -0
  168. package/dist/utils/variant.js +197 -0
  169. package/dist/utils/variant.js.map +1 -0
  170. package/env.d.ts +9 -0
  171. package/package.json +49 -10
  172. package/src/adw/config.ts +1 -0
  173. package/src/adw/dialog.tsx +35 -0
  174. package/src/adw/element-behaviors.ts +379 -0
  175. package/src/adw/element-config.ts +140 -0
  176. package/src/adw/index.ts +4 -0
  177. package/src/adw/prop-types.ts +42 -0
  178. package/src/bootstrap.ts +5 -0
  179. package/src/components/application.tsx +62 -0
  180. package/src/components/element.tsx +47 -0
  181. package/src/components/window.tsx +35 -0
  182. package/src/config.ts +3 -0
  183. package/src/element-behaviors.ts +424 -0
  184. package/src/element-config.ts +148 -0
  185. package/src/env.d.ts +1 -0
  186. package/src/hooks/use-application.ts +19 -0
  187. package/src/hooks/use-bind-setting.ts +51 -0
  188. package/src/hooks/use-merged-refs.ts +64 -0
  189. package/src/hooks/use-object-value.ts +54 -0
  190. package/src/hooks/use-parent-window.ts +11 -0
  191. package/src/hooks/use-property.ts +23 -0
  192. package/src/hooks/use-setting.ts +34 -0
  193. package/src/hooks/use-signal.ts +60 -0
  194. package/src/index.ts +14 -14
  195. package/src/internal.ts +13 -0
  196. package/src/prop-types.ts +142 -0
  197. package/src/reconciler/apply-props.ts +265 -0
  198. package/src/reconciler/behaviors.ts +324 -0
  199. package/src/reconciler/child-routing.ts +202 -0
  200. package/src/reconciler/host-config.ts +278 -0
  201. package/src/reconciler/instance.ts +82 -0
  202. package/src/reconciler/metadata.ts +119 -0
  203. package/src/reconciler/node.ts +161 -0
  204. package/src/reconciler/placement.ts +255 -0
  205. package/src/reconciler/registry.ts +161 -0
  206. package/src/reconciler/root-element.ts +12 -0
  207. package/src/reconciler/root.ts +175 -0
  208. package/src/reconciler/signals.ts +113 -0
  209. package/src/reconciler/text.ts +407 -0
  210. package/src/utils/accessible-metadata.ts +31 -0
  211. package/src/utils/accessible-props.ts +279 -0
  212. package/src/utils/ref-prop.ts +30 -0
  213. package/src/utils/settings.ts +69 -0
  214. package/src/utils/variant.ts +368 -0
  215. package/dist/components/compound.d.ts +0 -40
  216. package/dist/components/compound.d.ts.map +0 -1
  217. package/dist/components/compound.js +0 -46
  218. package/dist/components/compound.js.map +0 -1
  219. package/dist/components/list.d.ts +0 -75
  220. package/dist/components/list.d.ts.map +0 -1
  221. package/dist/components/list.js +0 -81
  222. package/dist/components/list.js.map +0 -1
  223. package/dist/components/slot-widget.d.ts +0 -15
  224. package/dist/components/slot-widget.d.ts.map +0 -1
  225. package/dist/components/slot-widget.js +0 -37
  226. package/dist/components/slot-widget.js.map +0 -1
  227. package/dist/errors.d.ts +0 -15
  228. package/dist/errors.d.ts.map +0 -1
  229. package/dist/errors.js +0 -44
  230. package/dist/errors.js.map +0 -1
  231. package/dist/factory.d.ts +0 -5
  232. package/dist/factory.d.ts.map +0 -1
  233. package/dist/factory.js +0 -37
  234. package/dist/factory.js.map +0 -1
  235. package/dist/generated/compounds.d.ts +0 -2672
  236. package/dist/generated/compounds.d.ts.map +0 -1
  237. package/dist/generated/compounds.js +0 -2624
  238. package/dist/generated/compounds.js.map +0 -1
  239. package/dist/generated/internal.d.ts +0 -16
  240. package/dist/generated/internal.d.ts.map +0 -1
  241. package/dist/generated/internal.js +0 -3638
  242. package/dist/generated/internal.js.map +0 -1
  243. package/dist/generated/jsx.d.ts +0 -17074
  244. package/dist/generated/jsx.d.ts.map +0 -1
  245. package/dist/generated/jsx.js +0 -6715
  246. package/dist/generated/jsx.js.map +0 -1
  247. package/dist/generated/registry.d.ts +0 -5
  248. package/dist/generated/registry.d.ts.map +0 -1
  249. package/dist/generated/registry.js +0 -13
  250. package/dist/generated/registry.js.map +0 -1
  251. package/dist/host-config.d.ts +0 -24
  252. package/dist/host-config.d.ts.map +0 -1
  253. package/dist/host-config.js +0 -172
  254. package/dist/host-config.js.map +0 -1
  255. package/dist/jsx.d.ts +0 -974
  256. package/dist/jsx.d.ts.map +0 -1
  257. package/dist/jsx.js +0 -8
  258. package/dist/jsx.js.map +0 -1
  259. package/dist/metadata.d.ts +0 -5
  260. package/dist/metadata.d.ts.map +0 -1
  261. package/dist/metadata.js +0 -33
  262. package/dist/metadata.js.map +0 -1
  263. package/dist/node.d.ts +0 -25
  264. package/dist/node.d.ts.map +0 -1
  265. package/dist/node.js +0 -85
  266. package/dist/node.js.map +0 -1
  267. package/dist/nodes/adjustable.d.ts +0 -11
  268. package/dist/nodes/adjustable.d.ts.map +0 -1
  269. package/dist/nodes/adjustable.js +0 -46
  270. package/dist/nodes/adjustable.js.map +0 -1
  271. package/dist/nodes/alert-dialog-response.d.ts +0 -15
  272. package/dist/nodes/alert-dialog-response.d.ts.map +0 -1
  273. package/dist/nodes/alert-dialog-response.js +0 -61
  274. package/dist/nodes/alert-dialog-response.js.map +0 -1
  275. package/dist/nodes/alert-dialog.d.ts +0 -14
  276. package/dist/nodes/alert-dialog.d.ts.map +0 -1
  277. package/dist/nodes/alert-dialog.js +0 -41
  278. package/dist/nodes/alert-dialog.js.map +0 -1
  279. package/dist/nodes/animation.d.ts +0 -39
  280. package/dist/nodes/animation.d.ts.map +0 -1
  281. package/dist/nodes/animation.js +0 -326
  282. package/dist/nodes/animation.js.map +0 -1
  283. package/dist/nodes/application.d.ts +0 -12
  284. package/dist/nodes/application.d.ts.map +0 -1
  285. package/dist/nodes/application.js +0 -51
  286. package/dist/nodes/application.js.map +0 -1
  287. package/dist/nodes/calendar.d.ts +0 -18
  288. package/dist/nodes/calendar.d.ts.map +0 -1
  289. package/dist/nodes/calendar.js +0 -28
  290. package/dist/nodes/calendar.js.map +0 -1
  291. package/dist/nodes/color-dialog-button.d.ts +0 -15
  292. package/dist/nodes/color-dialog-button.d.ts.map +0 -1
  293. package/dist/nodes/color-dialog-button.js +0 -43
  294. package/dist/nodes/color-dialog-button.js.map +0 -1
  295. package/dist/nodes/column-view-column.d.ts +0 -36
  296. package/dist/nodes/column-view-column.d.ts.map +0 -1
  297. package/dist/nodes/column-view-column.js +0 -168
  298. package/dist/nodes/column-view-column.js.map +0 -1
  299. package/dist/nodes/container-slot.d.ts +0 -18
  300. package/dist/nodes/container-slot.d.ts.map +0 -1
  301. package/dist/nodes/container-slot.js +0 -81
  302. package/dist/nodes/container-slot.js.map +0 -1
  303. package/dist/nodes/dialog.d.ts +0 -10
  304. package/dist/nodes/dialog.d.ts.map +0 -1
  305. package/dist/nodes/dialog.js +0 -20
  306. package/dist/nodes/dialog.js.map +0 -1
  307. package/dist/nodes/drawing-area.d.ts +0 -19
  308. package/dist/nodes/drawing-area.d.ts.map +0 -1
  309. package/dist/nodes/drawing-area.js +0 -40
  310. package/dist/nodes/drawing-area.js.map +0 -1
  311. package/dist/nodes/event-controller.d.ts +0 -15
  312. package/dist/nodes/event-controller.d.ts.map +0 -1
  313. package/dist/nodes/event-controller.js +0 -73
  314. package/dist/nodes/event-controller.js.map +0 -1
  315. package/dist/nodes/fixed-child.d.ts +0 -19
  316. package/dist/nodes/fixed-child.d.ts.map +0 -1
  317. package/dist/nodes/fixed-child.js +0 -99
  318. package/dist/nodes/fixed-child.js.map +0 -1
  319. package/dist/nodes/font-dialog-button.d.ts +0 -15
  320. package/dist/nodes/font-dialog-button.d.ts.map +0 -1
  321. package/dist/nodes/font-dialog-button.js +0 -76
  322. package/dist/nodes/font-dialog-button.js.map +0 -1
  323. package/dist/nodes/grid-child.d.ts +0 -19
  324. package/dist/nodes/grid-child.d.ts.map +0 -1
  325. package/dist/nodes/grid-child.js +0 -94
  326. package/dist/nodes/grid-child.js.map +0 -1
  327. package/dist/nodes/internal/accessible.d.ts +0 -5
  328. package/dist/nodes/internal/accessible.d.ts.map +0 -1
  329. package/dist/nodes/internal/accessible.js +0 -119
  330. package/dist/nodes/internal/accessible.js.map +0 -1
  331. package/dist/nodes/internal/bound-item.d.ts +0 -4
  332. package/dist/nodes/internal/bound-item.d.ts.map +0 -1
  333. package/dist/nodes/internal/bound-item.js +0 -2
  334. package/dist/nodes/internal/bound-item.js.map +0 -1
  335. package/dist/nodes/internal/construct.d.ts +0 -3
  336. package/dist/nodes/internal/construct.d.ts.map +0 -1
  337. package/dist/nodes/internal/construct.js +0 -44
  338. package/dist/nodes/internal/construct.js.map +0 -1
  339. package/dist/nodes/internal/predicates.d.ts +0 -51
  340. package/dist/nodes/internal/predicates.d.ts.map +0 -1
  341. package/dist/nodes/internal/predicates.js +0 -36
  342. package/dist/nodes/internal/predicates.js.map +0 -1
  343. package/dist/nodes/internal/props.d.ts +0 -6
  344. package/dist/nodes/internal/props.d.ts.map +0 -1
  345. package/dist/nodes/internal/props.js +0 -43
  346. package/dist/nodes/internal/props.js.map +0 -1
  347. package/dist/nodes/internal/signal-store.d.ts +0 -22
  348. package/dist/nodes/internal/signal-store.d.ts.map +0 -1
  349. package/dist/nodes/internal/signal-store.js +0 -98
  350. package/dist/nodes/internal/signal-store.js.map +0 -1
  351. package/dist/nodes/internal/text-buffer-controller.d.ts +0 -40
  352. package/dist/nodes/internal/text-buffer-controller.d.ts.map +0 -1
  353. package/dist/nodes/internal/text-buffer-controller.js +0 -327
  354. package/dist/nodes/internal/text-buffer-controller.js.map +0 -1
  355. package/dist/nodes/internal/widget.d.ts +0 -8
  356. package/dist/nodes/internal/widget.d.ts.map +0 -1
  357. package/dist/nodes/internal/widget.js +0 -68
  358. package/dist/nodes/internal/widget.js.map +0 -1
  359. package/dist/nodes/level-bar.d.ts +0 -12
  360. package/dist/nodes/level-bar.d.ts.map +0 -1
  361. package/dist/nodes/level-bar.js +0 -24
  362. package/dist/nodes/level-bar.js.map +0 -1
  363. package/dist/nodes/list-item-node.d.ts +0 -12
  364. package/dist/nodes/list-item-node.d.ts.map +0 -1
  365. package/dist/nodes/list-item-node.js +0 -45
  366. package/dist/nodes/list-item-node.js.map +0 -1
  367. package/dist/nodes/list.d.ts +0 -100
  368. package/dist/nodes/list.d.ts.map +0 -1
  369. package/dist/nodes/list.js +0 -950
  370. package/dist/nodes/list.js.map +0 -1
  371. package/dist/nodes/menu.d.ts +0 -7
  372. package/dist/nodes/menu.d.ts.map +0 -1
  373. package/dist/nodes/menu.js +0 -20
  374. package/dist/nodes/menu.js.map +0 -1
  375. package/dist/nodes/models/menu.d.ts +0 -47
  376. package/dist/nodes/models/menu.d.ts.map +0 -1
  377. package/dist/nodes/models/menu.js +0 -240
  378. package/dist/nodes/models/menu.js.map +0 -1
  379. package/dist/nodes/navigation-page.d.ts +0 -19
  380. package/dist/nodes/navigation-page.d.ts.map +0 -1
  381. package/dist/nodes/navigation-page.js +0 -129
  382. package/dist/nodes/navigation-page.js.map +0 -1
  383. package/dist/nodes/navigation-view.d.ts +0 -19
  384. package/dist/nodes/navigation-view.d.ts.map +0 -1
  385. package/dist/nodes/navigation-view.js +0 -51
  386. package/dist/nodes/navigation-view.js.map +0 -1
  387. package/dist/nodes/notebook-page-tab.d.ts +0 -15
  388. package/dist/nodes/notebook-page-tab.d.ts.map +0 -1
  389. package/dist/nodes/notebook-page-tab.js +0 -40
  390. package/dist/nodes/notebook-page-tab.js.map +0 -1
  391. package/dist/nodes/notebook-page.d.ts +0 -29
  392. package/dist/nodes/notebook-page.d.ts.map +0 -1
  393. package/dist/nodes/notebook-page.js +0 -151
  394. package/dist/nodes/notebook-page.js.map +0 -1
  395. package/dist/nodes/notebook.d.ts +0 -16
  396. package/dist/nodes/notebook.d.ts.map +0 -1
  397. package/dist/nodes/notebook.js +0 -31
  398. package/dist/nodes/notebook.js.map +0 -1
  399. package/dist/nodes/overlay-child.d.ts +0 -20
  400. package/dist/nodes/overlay-child.d.ts.map +0 -1
  401. package/dist/nodes/overlay-child.js +0 -109
  402. package/dist/nodes/overlay-child.js.map +0 -1
  403. package/dist/nodes/popover-menu.d.ts +0 -19
  404. package/dist/nodes/popover-menu.d.ts.map +0 -1
  405. package/dist/nodes/popover-menu.js +0 -54
  406. package/dist/nodes/popover-menu.js.map +0 -1
  407. package/dist/nodes/scale.d.ts +0 -10
  408. package/dist/nodes/scale.d.ts.map +0 -1
  409. package/dist/nodes/scale.js +0 -19
  410. package/dist/nodes/scale.js.map +0 -1
  411. package/dist/nodes/scrolled-window.d.ts +0 -11
  412. package/dist/nodes/scrolled-window.d.ts.map +0 -1
  413. package/dist/nodes/scrolled-window.js +0 -18
  414. package/dist/nodes/scrolled-window.js.map +0 -1
  415. package/dist/nodes/search-bar.d.ts +0 -11
  416. package/dist/nodes/search-bar.d.ts.map +0 -1
  417. package/dist/nodes/search-bar.js +0 -16
  418. package/dist/nodes/search-bar.js.map +0 -1
  419. package/dist/nodes/shortcut.d.ts +0 -19
  420. package/dist/nodes/shortcut.d.ts.map +0 -1
  421. package/dist/nodes/shortcut.js +0 -72
  422. package/dist/nodes/shortcut.js.map +0 -1
  423. package/dist/nodes/slot.d.ts +0 -21
  424. package/dist/nodes/slot.d.ts.map +0 -1
  425. package/dist/nodes/slot.js +0 -102
  426. package/dist/nodes/slot.js.map +0 -1
  427. package/dist/nodes/source-view.d.ts +0 -18
  428. package/dist/nodes/source-view.d.ts.map +0 -1
  429. package/dist/nodes/source-view.js +0 -94
  430. package/dist/nodes/source-view.js.map +0 -1
  431. package/dist/nodes/spin-row.d.ts +0 -14
  432. package/dist/nodes/spin-row.d.ts.map +0 -1
  433. package/dist/nodes/spin-row.js +0 -46
  434. package/dist/nodes/spin-row.js.map +0 -1
  435. package/dist/nodes/stack-page.d.ts +0 -22
  436. package/dist/nodes/stack-page.d.ts.map +0 -1
  437. package/dist/nodes/stack-page.js +0 -140
  438. package/dist/nodes/stack-page.js.map +0 -1
  439. package/dist/nodes/stack.d.ts +0 -13
  440. package/dist/nodes/stack.d.ts.map +0 -1
  441. package/dist/nodes/stack.js +0 -21
  442. package/dist/nodes/stack.js.map +0 -1
  443. package/dist/nodes/switch-row.d.ts +0 -11
  444. package/dist/nodes/switch-row.d.ts.map +0 -1
  445. package/dist/nodes/switch-row.js +0 -15
  446. package/dist/nodes/switch-row.js.map +0 -1
  447. package/dist/nodes/text-anchor.d.ts +0 -23
  448. package/dist/nodes/text-anchor.d.ts.map +0 -1
  449. package/dist/nodes/text-anchor.js +0 -74
  450. package/dist/nodes/text-anchor.js.map +0 -1
  451. package/dist/nodes/text-content.d.ts +0 -12
  452. package/dist/nodes/text-content.d.ts.map +0 -1
  453. package/dist/nodes/text-content.js +0 -2
  454. package/dist/nodes/text-content.js.map +0 -1
  455. package/dist/nodes/text-paintable.d.ts +0 -19
  456. package/dist/nodes/text-paintable.d.ts.map +0 -1
  457. package/dist/nodes/text-paintable.js +0 -42
  458. package/dist/nodes/text-paintable.js.map +0 -1
  459. package/dist/nodes/text-segment.d.ts +0 -18
  460. package/dist/nodes/text-segment.d.ts.map +0 -1
  461. package/dist/nodes/text-segment.js +0 -38
  462. package/dist/nodes/text-segment.js.map +0 -1
  463. package/dist/nodes/text-tag.d.ts +0 -38
  464. package/dist/nodes/text-tag.d.ts.map +0 -1
  465. package/dist/nodes/text-tag.js +0 -247
  466. package/dist/nodes/text-tag.js.map +0 -1
  467. package/dist/nodes/text-view.d.ts +0 -29
  468. package/dist/nodes/text-view.d.ts.map +0 -1
  469. package/dist/nodes/text-view.js +0 -80
  470. package/dist/nodes/text-view.js.map +0 -1
  471. package/dist/nodes/toggle-group.d.ts +0 -17
  472. package/dist/nodes/toggle-group.d.ts.map +0 -1
  473. package/dist/nodes/toggle-group.js +0 -65
  474. package/dist/nodes/toggle-group.js.map +0 -1
  475. package/dist/nodes/toggle.d.ts +0 -16
  476. package/dist/nodes/toggle.d.ts.map +0 -1
  477. package/dist/nodes/toggle.js +0 -61
  478. package/dist/nodes/toggle.js.map +0 -1
  479. package/dist/nodes/virtual.d.ts +0 -7
  480. package/dist/nodes/virtual.d.ts.map +0 -1
  481. package/dist/nodes/virtual.js +0 -9
  482. package/dist/nodes/virtual.js.map +0 -1
  483. package/dist/nodes/web-view.d.ts +0 -11
  484. package/dist/nodes/web-view.d.ts.map +0 -1
  485. package/dist/nodes/web-view.js +0 -16
  486. package/dist/nodes/web-view.js.map +0 -1
  487. package/dist/nodes/widget.d.ts +0 -26
  488. package/dist/nodes/widget.d.ts.map +0 -1
  489. package/dist/nodes/widget.js +0 -308
  490. package/dist/nodes/widget.js.map +0 -1
  491. package/dist/nodes/window.d.ts +0 -31
  492. package/dist/nodes/window.d.ts.map +0 -1
  493. package/dist/nodes/window.js +0 -122
  494. package/dist/nodes/window.js.map +0 -1
  495. package/dist/portal.d.ts +0 -29
  496. package/dist/portal.d.ts.map +0 -1
  497. package/dist/portal.js +0 -35
  498. package/dist/portal.js.map +0 -1
  499. package/dist/reconciler.d.ts +0 -34
  500. package/dist/reconciler.d.ts.map +0 -1
  501. package/dist/reconciler.js +0 -48
  502. package/dist/reconciler.js.map +0 -1
  503. package/dist/registry.d.ts +0 -18
  504. package/dist/registry.d.ts.map +0 -1
  505. package/dist/registry.js +0 -98
  506. package/dist/registry.js.map +0 -1
  507. package/dist/render.d.ts +0 -117
  508. package/dist/render.d.ts.map +0 -1
  509. package/dist/render.js +0 -159
  510. package/dist/render.js.map +0 -1
  511. package/dist/types.d.ts +0 -6
  512. package/dist/types.d.ts.map +0 -1
  513. package/dist/types.js +0 -2
  514. package/dist/types.js.map +0 -1
  515. package/dist/use-property.d.ts +0 -29
  516. package/dist/use-property.d.ts.map +0 -1
  517. package/dist/use-property.js +0 -44
  518. package/dist/use-property.js.map +0 -1
  519. package/dist/use-setting.d.ts +0 -36
  520. package/dist/use-setting.d.ts.map +0 -1
  521. package/dist/use-setting.js +0 -68
  522. package/dist/use-setting.js.map +0 -1
  523. package/src/components/compound.tsx +0 -57
  524. package/src/components/list.tsx +0 -140
  525. package/src/components/slot-widget.tsx +0 -46
  526. package/src/errors.ts +0 -53
  527. package/src/factory.ts +0 -62
  528. package/src/generated/compounds.ts +0 -2741
  529. package/src/generated/internal.ts +0 -3642
  530. package/src/generated/jsx.ts +0 -17383
  531. package/src/generated/registry.ts +0 -17
  532. package/src/host-config.ts +0 -219
  533. package/src/jsx.ts +0 -1033
  534. package/src/metadata.ts +0 -43
  535. package/src/node.ts +0 -107
  536. package/src/nodes/adjustable.ts +0 -68
  537. package/src/nodes/alert-dialog-response.ts +0 -78
  538. package/src/nodes/alert-dialog.ts +0 -55
  539. package/src/nodes/animation.ts +0 -409
  540. package/src/nodes/application.ts +0 -61
  541. package/src/nodes/calendar.ts +0 -42
  542. package/src/nodes/color-dialog-button.ts +0 -69
  543. package/src/nodes/column-view-column.ts +0 -189
  544. package/src/nodes/container-slot.ts +0 -100
  545. package/src/nodes/dialog.ts +0 -25
  546. package/src/nodes/drawing-area.ts +0 -53
  547. package/src/nodes/event-controller.ts +0 -96
  548. package/src/nodes/fixed-child.ts +0 -122
  549. package/src/nodes/font-dialog-button.ts +0 -107
  550. package/src/nodes/grid-child.ts +0 -116
  551. package/src/nodes/internal/accessible.ts +0 -155
  552. package/src/nodes/internal/bound-item.ts +0 -4
  553. package/src/nodes/internal/construct.ts +0 -60
  554. package/src/nodes/internal/predicates.ts +0 -80
  555. package/src/nodes/internal/props.ts +0 -51
  556. package/src/nodes/internal/signal-store.ts +0 -141
  557. package/src/nodes/internal/text-buffer-controller.ts +0 -417
  558. package/src/nodes/internal/widget.ts +0 -74
  559. package/src/nodes/level-bar.ts +0 -36
  560. package/src/nodes/list-item-node.ts +0 -53
  561. package/src/nodes/list.ts +0 -1082
  562. package/src/nodes/menu.ts +0 -27
  563. package/src/nodes/models/menu.ts +0 -314
  564. package/src/nodes/navigation-page.ts +0 -154
  565. package/src/nodes/navigation-view.ts +0 -66
  566. package/src/nodes/notebook-page-tab.ts +0 -55
  567. package/src/nodes/notebook-page.ts +0 -189
  568. package/src/nodes/notebook.ts +0 -42
  569. package/src/nodes/overlay-child.ts +0 -130
  570. package/src/nodes/popover-menu.ts +0 -67
  571. package/src/nodes/scale.ts +0 -28
  572. package/src/nodes/scrolled-window.ts +0 -23
  573. package/src/nodes/search-bar.ts +0 -27
  574. package/src/nodes/shortcut.ts +0 -86
  575. package/src/nodes/slot.ts +0 -138
  576. package/src/nodes/source-view.ts +0 -130
  577. package/src/nodes/spin-row.ts +0 -72
  578. package/src/nodes/stack-page.ts +0 -170
  579. package/src/nodes/stack.ts +0 -35
  580. package/src/nodes/switch-row.ts +0 -26
  581. package/src/nodes/text-anchor.ts +0 -88
  582. package/src/nodes/text-content.ts +0 -14
  583. package/src/nodes/text-paintable.ts +0 -51
  584. package/src/nodes/text-segment.ts +0 -55
  585. package/src/nodes/text-tag.ts +0 -298
  586. package/src/nodes/text-view.ts +0 -100
  587. package/src/nodes/toggle-group.ts +0 -81
  588. package/src/nodes/toggle.ts +0 -72
  589. package/src/nodes/virtual.ts +0 -16
  590. package/src/nodes/web-view.ts +0 -22
  591. package/src/nodes/widget.ts +0 -369
  592. package/src/nodes/window.ts +0 -172
  593. package/src/portal.ts +0 -37
  594. package/src/reconciler.ts +0 -52
  595. package/src/registry.ts +0 -119
  596. package/src/render.tsx +0 -192
  597. package/src/types.ts +0 -13
  598. package/src/use-property.ts +0 -58
  599. package/src/use-setting.ts +0 -96
package/dist/jsx.d.ts DELETED
@@ -1,974 +0,0 @@
1
- import type * as Adw from "@gtkx/ffi/adw";
2
- import type * as cairo from "@gtkx/ffi/cairo";
3
- import type * as Gdk from "@gtkx/ffi/gdk";
4
- import type * as Gsk from "@gtkx/ffi/gsk";
5
- import type * as Gtk from "@gtkx/ffi/gtk";
6
- import type * as GtkSource from "@gtkx/ffi/gtksource";
7
- import type * as Pango from "@gtkx/ffi/pango";
8
- import type { ReactNode } from "react";
9
- import type { WidgetSlotNames } from "./generated/jsx.js";
10
- /**
11
- * CSS properties that can be animated on a widget.
12
- *
13
- * All transforms are applied via GTK CSS and rendered through the widget's style context.
14
- */
15
- export type AnimatableProperties = {
16
- /** Opacity from 0 (fully transparent) to 1 (fully opaque) */
17
- opacity?: number;
18
- /** Horizontal translation in pixels (positive moves right) */
19
- translateX?: number;
20
- /** Vertical translation in pixels (positive moves down) */
21
- translateY?: number;
22
- /** Uniform scale factor (1 = original size, 2 = double size) */
23
- scale?: number;
24
- /** Horizontal scale factor */
25
- scaleX?: number;
26
- /** Vertical scale factor */
27
- scaleY?: number;
28
- /** Rotation angle in degrees (positive rotates clockwise) */
29
- rotate?: number;
30
- /** Horizontal skew angle in degrees */
31
- skewX?: number;
32
- /** Vertical skew angle in degrees */
33
- skewY?: number;
34
- };
35
- /** @internal */
36
- type AnimationBaseProps = {
37
- /** Initial property values before animation starts, or `false` to skip initial state */
38
- initial?: AnimatableProperties | false;
39
- /** Target property values to animate towards */
40
- animate?: AnimatableProperties;
41
- /** Property values to animate to when the component unmounts */
42
- exit?: AnimatableProperties;
43
- /** Whether to animate from `initial` to `animate` when first mounted (default: false) */
44
- animateOnMount?: boolean;
45
- /** Callback fired when an animation begins */
46
- onAnimationStart?: () => void;
47
- /** Callback fired when an animation completes */
48
- onAnimationComplete?: () => void;
49
- /** The child widget to animate (must be a single GTK widget) */
50
- children?: ReactNode;
51
- };
52
- /**
53
- * Props for a timed (duration-based) animation using Adw.TimedAnimation.
54
- *
55
- * @example
56
- * ```tsx
57
- * <AdwTimedAnimation
58
- * initial={{ opacity: 0 }}
59
- * animate={{ opacity: 1 }}
60
- * duration={300}
61
- * easing={Adw.Easing.EASE_OUT_CUBIC}
62
- * animateOnMount
63
- * >
64
- * <GtkLabel label="Fade in" />
65
- * </AdwTimedAnimation>
66
- * ```
67
- */
68
- export type AdwTimedAnimationProps = AnimationBaseProps & {
69
- /** Animation duration in milliseconds (default: 300) */
70
- duration?: number;
71
- /** Easing function for the animation curve (default: EASE_OUT_CUBIC) */
72
- easing?: Adw.Easing;
73
- /** Delay before starting the animation in milliseconds */
74
- delay?: number;
75
- /** Number of times to repeat the animation (0 = no repeat, -1 = infinite) */
76
- repeat?: number;
77
- /** Whether to play the animation in reverse */
78
- reverse?: boolean;
79
- /** Whether to alternate direction on each repeat */
80
- alternate?: boolean;
81
- };
82
- /**
83
- * Props for a spring (physics-based) animation using Adw.SpringAnimation.
84
- *
85
- * @example
86
- * ```tsx
87
- * <AdwSpringAnimation
88
- * initial={{ scale: 0.9, opacity: 0 }}
89
- * animate={{ scale: 1, opacity: 1 }}
90
- * damping={0.8}
91
- * stiffness={200}
92
- * animateOnMount
93
- * >
94
- * <GtkButton label="Spring in" />
95
- * </AdwSpringAnimation>
96
- * ```
97
- */
98
- export type AdwSpringAnimationProps = AnimationBaseProps & {
99
- /** Damping ratio controlling oscillation decay (default: 1, critically damped) */
100
- damping?: number;
101
- /** Spring stiffness in N/m affecting animation speed (default: 100) */
102
- stiffness?: number;
103
- /** Virtual mass in kg affecting momentum (default: 1) */
104
- mass?: number;
105
- /** Initial velocity to apply at animation start */
106
- initialVelocity?: number;
107
- /** Whether to clamp the animation value to prevent overshooting */
108
- clamp?: boolean;
109
- /** Delay before starting the animation in milliseconds */
110
- delay?: number;
111
- };
112
- /**
113
- * @internal Union type used by the AnimationNode internally.
114
- */
115
- export type AnimationProps = AdwTimedAnimationProps | AdwSpringAnimationProps;
116
- /**
117
- * Props for the Shortcut virtual element.
118
- *
119
- * Defines a keyboard shortcut. Must be a child of `<GtkShortcutController>`.
120
- *
121
- * @example
122
- * ```tsx
123
- * <GtkShortcutController>
124
- * <x.Shortcut trigger="<Control>s" onActivate={save} />
125
- * <x.Shortcut trigger={["F5", "<Control>r"]} onActivate={refresh} />
126
- * <x.Shortcut trigger="Escape" onActivate={cancel} disabled={!canCancel} />
127
- * </GtkShortcutController>
128
- * ```
129
- */
130
- export type ShortcutProps = {
131
- /** The trigger string(s) using GTK accelerator format (e.g., "\<Control\>s", "F1") */
132
- trigger: string | string[];
133
- /**
134
- * Called when the shortcut is activated.
135
- * Return false to indicate the shortcut was not handled; otherwise it is considered handled.
136
- */
137
- onActivate: () => boolean | void;
138
- /** Whether the shortcut is disabled */
139
- disabled?: boolean;
140
- };
141
- /**
142
- * Props for the TextAnchor virtual element.
143
- *
144
- * Used to declaratively embed widgets within text content in a TextBuffer.
145
- * The anchor is placed at the current position in the text flow.
146
- *
147
- * @example
148
- * ```tsx
149
- * <GtkTextView>
150
- * <x.TextBuffer>
151
- * Click here: <x.TextAnchor>
152
- * <GtkButton label="Click me" />
153
- * </x.TextAnchor> to continue.
154
- * </x.TextBuffer>
155
- * </GtkTextView>
156
- * ```
157
- */
158
- export type TextAnchorProps = {
159
- /** Replacement character displayed when the widget is not visible (e.g. in serialized text) */
160
- replacementChar?: string;
161
- /** The widget to embed at this anchor position */
162
- children?: ReactNode;
163
- };
164
- /**
165
- * Props for the TextPaintable virtual element.
166
- *
167
- * Used to embed inline images or icons within text content in a GtkTextView.
168
- */
169
- export type TextPaintableProps = {
170
- /** The paintable (image, icon, etc.) to embed inline with the text */
171
- paintable: Gdk.Paintable;
172
- };
173
- /**
174
- * Props for the TextTag virtual element.
175
- *
176
- * Used to declaratively define and apply text formatting to content within a TextBuffer.
177
- *
178
- * @example
179
- * ```tsx
180
- * <GtkTextView>
181
- * <x.TextBuffer>
182
- * Hello <x.TextTag id="bold" weight={Pango.Weight.BOLD}>bold</x.TextTag> world
183
- * </x.TextBuffer>
184
- * </GtkTextView>
185
- * ```
186
- */
187
- export type TextTagProps = {
188
- /** Unique identifier for this tag in the tag table */
189
- id: string;
190
- /** Priority of this tag (higher wins when multiple tags affect same property) */
191
- priority?: number;
192
- /** Background color as a string (e.g., "red", "#ff0000") */
193
- background?: string;
194
- /** Whether the background fills the entire line height */
195
- backgroundFullHeight?: boolean;
196
- /** Foreground (text) color as a string */
197
- foreground?: string;
198
- /** Font family name (e.g., "Sans", "Monospace") */
199
- family?: string;
200
- /** Font description string (e.g., "Sans Italic 12") */
201
- font?: string;
202
- /** Font size in points */
203
- sizePoints?: number;
204
- /** Font size in Pango units */
205
- size?: number;
206
- /** Font size scale factor relative to default */
207
- scale?: number;
208
- /** Font weight (use Pango.Weight constants) */
209
- weight?: Pango.Weight | number;
210
- /** Font style (use Pango.Style constants) */
211
- style?: Pango.Style;
212
- /** Font stretch (use Pango.Stretch constants) */
213
- stretch?: Pango.Stretch;
214
- /** Font variant (use Pango.Variant constants) */
215
- variant?: Pango.Variant;
216
- /** Whether to strike through the text */
217
- strikethrough?: boolean;
218
- /** Underline style (use Pango.Underline constants) */
219
- underline?: Pango.Underline;
220
- /** Overline style (use Pango.Overline constants) */
221
- overline?: Pango.Overline;
222
- /** Offset of text above baseline in Pango units (negative = below) */
223
- rise?: number;
224
- /** Extra spacing between characters in Pango units */
225
- letterSpacing?: number;
226
- /** Factor to scale line height by */
227
- lineHeight?: number;
228
- /** Left margin in pixels */
229
- leftMargin?: number;
230
- /** Right margin in pixels */
231
- rightMargin?: number;
232
- /** Paragraph indent in pixels (negative = hanging) */
233
- indent?: number;
234
- /** Pixels of blank space above paragraphs */
235
- pixelsAboveLines?: number;
236
- /** Pixels of blank space below paragraphs */
237
- pixelsBelowLines?: number;
238
- /** Pixels of blank space between wrapped lines */
239
- pixelsInsideWrap?: number;
240
- /** Text justification */
241
- justification?: Gtk.Justification;
242
- /** Text direction */
243
- direction?: Gtk.TextDirection;
244
- /** Wrap mode for line breaks */
245
- wrapMode?: Gtk.WrapMode;
246
- /** Whether the text can be modified */
247
- editable?: boolean;
248
- /** Whether the text is invisible/hidden */
249
- invisible?: boolean;
250
- /** Whether breaks are allowed */
251
- allowBreaks?: boolean;
252
- /** Whether to insert hyphens at breaks */
253
- insertHyphens?: boolean;
254
- /** Whether font fallback is enabled */
255
- fallback?: boolean;
256
- /** Whether margins accumulate */
257
- accumulativeMargin?: boolean;
258
- /** Paragraph background color as a string */
259
- paragraphBackground?: string;
260
- /** How to render invisible characters */
261
- showSpaces?: Pango.ShowFlags;
262
- /** How to transform text for display */
263
- textTransform?: Pango.TextTransform;
264
- /** OpenType font features as a string */
265
- fontFeatures?: string;
266
- /** Language code (e.g., "en-US") */
267
- language?: string;
268
- /** Text content and nested TextTag children */
269
- children?: ReactNode;
270
- };
271
- /** Props for the TextSegment virtual element.
272
- *
273
- * Represents a segment of text within a TextBuffer.
274
- */
275
- export type TextSegmentProps = {
276
- /** The text content of this segment */
277
- text: string;
278
- };
279
- /**
280
- * Configuration for a mark on a GtkScale widget.
281
- *
282
- * Marks are visual indicators placed along the scale at specific values,
283
- * optionally with text labels.
284
- *
285
- * @see {@link https://docs.gtk.org/gtk4/method.Scale.add_mark.html GtkScale.add_mark}
286
- */
287
- export type ScaleMark = {
288
- /** The value at which to place the mark */
289
- value: number;
290
- /** Position of the mark relative to the scale (default: BOTTOM) */
291
- position?: Gtk.PositionType;
292
- /** Optional text label to display at the mark */
293
- label?: string | null;
294
- };
295
- /**
296
- * Configuration for an offset threshold on a GtkLevelBar widget.
297
- *
298
- * Offsets define named value thresholds that change the bar's appearance
299
- * (e.g., "low", "high", "full"). Built-in offsets include GTK_LEVEL_BAR_OFFSET_LOW,
300
- * GTK_LEVEL_BAR_OFFSET_HIGH, and GTK_LEVEL_BAR_OFFSET_FULL.
301
- *
302
- * @see {@link https://docs.gtk.org/gtk4/method.LevelBar.add_offset_value.html GtkLevelBar.add_offset_value}
303
- */
304
- export type LevelBarOffset = {
305
- /** Unique identifier for this offset (e.g., "low", "high", "full") */
306
- id: string;
307
- /** The threshold value at which this offset applies */
308
- value: number;
309
- };
310
- /**
311
- * Props for slot-based child positioning.
312
- *
313
- * Used internally by compound components with slot props (e.g. `titleWidget` on `AdwHeaderBar`).
314
- */
315
- export type SlotProps = {
316
- /** The slot identifier */
317
- id?: string;
318
- /** Content to place in the slot */
319
- children?: ReactNode;
320
- };
321
- /**
322
- * Props for method-based container slot child positioning.
323
- */
324
- export type ContainerSlotProps = {
325
- /** The method name to call on the parent widget */
326
- id: string;
327
- /** Content to place in the container slot */
328
- children?: ReactNode;
329
- };
330
- /**
331
- * A data item for list/grid/column views and dropdowns.
332
- *
333
- * Uses a discriminated union on the `section` field:
334
- * - Regular items have `value: T` and optional tree-mode properties
335
- * - Section headers have `value: S`, `section: true`, and required `children`
336
- *
337
- * Mode is detected from data shape:
338
- * - Any item has `section: true` → section mode
339
- * - Any item has non-empty `children` (without `section`) → tree mode
340
- * - Otherwise → flat mode
341
- *
342
- * @typeParam T - The type of data for regular items
343
- * @typeParam S - The type of data for section headers
344
- */
345
- export type ListItem<T = unknown, S = unknown> = {
346
- id: string;
347
- value: T;
348
- section?: false | undefined;
349
- children?: ListItem<T, S>[];
350
- hideExpander?: boolean;
351
- indentForDepth?: boolean;
352
- indentForIcon?: boolean;
353
- } | {
354
- id: string;
355
- value: S;
356
- section: true;
357
- children: ListItem<T, S>[];
358
- };
359
- /**
360
- * Props for positioning children within a GtkGrid.
361
- *
362
- * Used by `GtkGrid.Child` compound component.
363
- */
364
- export type GridChildProps = {
365
- /** Content to place in the grid cell */
366
- children?: ReactNode;
367
- /** Column index (0-based) */
368
- column?: number;
369
- /** Row index (0-based) */
370
- row?: number;
371
- /** Number of columns to span */
372
- columnSpan?: number;
373
- /** Number of rows to span */
374
- rowSpan?: number;
375
- };
376
- /**
377
- * Props for positioning children within a GtkFixed.
378
- *
379
- * Used by `GtkFixed.Child` compound component.
380
- */
381
- export type FixedChildProps = {
382
- /** Content to place in the fixed container */
383
- children?: ReactNode;
384
- /** X coordinate in pixels */
385
- x?: number;
386
- /** Y coordinate in pixels */
387
- y?: number;
388
- /** 3D transform to apply to the child (perspective, rotation, etc.) */
389
- transform?: Gsk.Transform;
390
- };
391
- /**
392
- * Props for defining a column in a ColumnView (table).
393
- *
394
- * @typeParam T - The type of data for each row
395
- *
396
- * Used by `GtkColumnView.Column` compound component.
397
- */
398
- export type ColumnViewColumnProps<T = unknown> = {
399
- /** Column header text */
400
- title: string;
401
- /** Whether the column expands to fill available space */
402
- expand?: boolean;
403
- /** Whether the column can be resized by the user */
404
- resizable?: boolean;
405
- /** Fixed width in pixels */
406
- fixedWidth?: number;
407
- /** Unique identifier for this column */
408
- id: string;
409
- /** Whether clicking the header sorts by this column */
410
- sortable?: boolean;
411
- /** Whether this column is visible */
412
- visible?: boolean;
413
- /** Function to render the cell content for each row */
414
- renderCell: (item: T) => ReactNode;
415
- /** Menu items for the column header context menu */
416
- children?: ReactNode;
417
- };
418
- /**
419
- * Props for notebook (tabbed) pages.
420
- */
421
- export type NotebookPageProps = {
422
- /** Content to place in the notebook page */
423
- children?: ReactNode;
424
- /** Tab label text (optional when using Notebook.PageTab) */
425
- label?: string;
426
- /** Whether the tab should expand to fill available space */
427
- tabExpand?: boolean;
428
- /** Whether the tab should fill its allocated space */
429
- tabFill?: boolean;
430
- };
431
- /**
432
- * Props for custom notebook page tab widgets.
433
- */
434
- export type NotebookPageTabProps = {
435
- /** Content to place in the notebook page tab */
436
- children?: ReactNode;
437
- };
438
- /**
439
- * Props for pages within a Stack or ViewStack.
440
- *
441
- * Used by `GtkStack.Page` and `AdwViewStack.Page` compound components.
442
- */
443
- export type StackPageProps = {
444
- /** Content to place in the stack page */
445
- children?: ReactNode;
446
- /** Unique identifier for this page (used with page prop) */
447
- id?: string;
448
- /** Display title shown in stack switchers */
449
- title?: string;
450
- /** Icon name from the icon theme */
451
- iconName?: string;
452
- /** Whether to show an attention indicator */
453
- needsAttention?: boolean;
454
- /** Whether this page is visible in switchers */
455
- visible?: boolean;
456
- /** Whether underscores in title indicate mnemonics */
457
- useUnderline?: boolean;
458
- /** Badge number shown on the page indicator */
459
- badgeNumber?: number;
460
- };
461
- /**
462
- * Props for menu items.
463
- *
464
- * Used by menu compound components like `GtkMenuButton.MenuItem`.
465
- */
466
- export type MenuItemProps = {
467
- /** Unique identifier for this menu item */
468
- id: string;
469
- /** Display label */
470
- label: string;
471
- /** Callback when the item is activated */
472
- onActivate: () => void;
473
- /** Keyboard accelerator(s) (e.g., "\<Control\>q") */
474
- accels?: string | string[];
475
- };
476
- /**
477
- * Props for menu sections.
478
- *
479
- * Sections group related menu items with optional labels.
480
- */
481
- export type MenuSectionProps = {
482
- /** Optional section header label */
483
- label?: string;
484
- /** Menu items in this section */
485
- children?: ReactNode;
486
- };
487
- /**
488
- * Props for submenus.
489
- */
490
- export type MenuSubmenuProps = {
491
- /** Submenu label */
492
- label: string;
493
- /** Menu items in this submenu */
494
- children?: ReactNode;
495
- };
496
- /**
497
- * Props for children within an Overlay container.
498
- */
499
- export type OverlayChildProps = {
500
- /** Content to place in the overlay child */
501
- children?: ReactNode;
502
- /** Whether to include this child in size measurement */
503
- measure?: boolean;
504
- /** Whether to clip this overlay child to the main child bounds */
505
- clipOverlay?: boolean;
506
- };
507
- /**
508
- * Props for the Toggle virtual element.
509
- *
510
- * Used to declaratively add toggles to an AdwToggleGroup.
511
- *
512
- * @example
513
- * ```tsx
514
- * <AdwToggleGroup>
515
- * <x.Toggle id="view-list" iconName="view-list-symbolic" />
516
- * <x.Toggle id="view-grid" iconName="view-grid-symbolic" />
517
- * <x.Toggle id="view-flow" label="Flow" />
518
- * </AdwToggleGroup>
519
- * ```
520
- */
521
- export type ToggleProps = {
522
- /** Optional identifier for accessing toggle by id instead of index */
523
- id?: string | null;
524
- /** Label text to display */
525
- label?: string | null;
526
- /** Icon name to display */
527
- iconName?: string | null;
528
- /** Tooltip text (supports Pango markup) */
529
- tooltip?: string;
530
- /** Whether the toggle is enabled */
531
- enabled?: boolean;
532
- /** Whether underline in label indicates mnemonic */
533
- useUnderline?: boolean;
534
- };
535
- /**
536
- * Props for response buttons in an AdwAlertDialog.
537
- *
538
- * Each response represents a button the user can click to dismiss the dialog.
539
- *
540
- * Used by `AdwAlertDialog.Response` compound component.
541
- */
542
- export type AlertDialogResponseProps = {
543
- /** Unique response ID (used in response signal and for default/close response) */
544
- id: string;
545
- /** Button label text */
546
- label: string;
547
- /** Visual appearance of the response button */
548
- appearance?: Adw.ResponseAppearance;
549
- /** Whether the response button is enabled */
550
- enabled?: boolean;
551
- };
552
- /**
553
- * Base props shared by all navigation page declarations, regardless
554
- * of the parent container (NavigationView or NavigationSplitView).
555
- */
556
- export type NavigationPageBaseProps = {
557
- /** Display title for the navigation page */
558
- title?: string;
559
- /** Whether the page can be popped from the navigation stack */
560
- canPop?: boolean;
561
- /** Page content */
562
- children?: ReactNode;
563
- };
564
- /**
565
- * Props for a navigation page inside an `AdwNavigationView`.
566
- *
567
- * The `id` serves as the page tag for navigation history.
568
- */
569
- export type NavigationViewPageProps = NavigationPageBaseProps & {
570
- id: string;
571
- };
572
- /**
573
- * Props for a navigation page inside an `AdwNavigationSplitView`.
574
- *
575
- * The `id` is narrowed to the valid slot positions of the split view.
576
- */
577
- export type NavigationSplitViewPageProps = NavigationPageBaseProps & {
578
- id: WidgetSlotNames["AdwNavigationSplitView"];
579
- };
580
- /**
581
- * Props for the NavigationPage virtual element with type-safe targeting.
582
- *
583
- * The `for` prop is required and determines valid `id` values:
584
- * - `AdwNavigationView`: `id` can be any string (page tags for navigation history)
585
- * - `AdwNavigationSplitView`: `id` is narrowed to `"content" | "sidebar"` (slot positions)
586
- *
587
- * @example
588
- * ```tsx
589
- * // In NavigationView - id can be any string
590
- * <AdwNavigationView history={["home", "details"]}>
591
- * <x.NavigationPage for={AdwNavigationView} id="home" title="Home">
592
- * <HomeContent />
593
- * </x.NavigationPage>
594
- * </AdwNavigationView>
595
- *
596
- * // In NavigationSplitView - id is narrowed to "content" | "sidebar"
597
- * <AdwNavigationSplitView>
598
- * <x.NavigationPage for={AdwNavigationSplitView} id="sidebar" title="Sidebar">
599
- * <SidebarContent />
600
- * </x.NavigationPage>
601
- * <x.NavigationPage for={AdwNavigationSplitView} id="content" title="Content">
602
- * <MainContent />
603
- * </x.NavigationPage>
604
- * </AdwNavigationSplitView>
605
- * ```
606
- */
607
- export type NavigationPageProps = (NavigationPageBaseProps & {
608
- for: "AdwNavigationView";
609
- id: string;
610
- }) | (NavigationPageBaseProps & {
611
- for: "AdwNavigationSplitView";
612
- id: WidgetSlotNames["AdwNavigationSplitView"];
613
- });
614
- /**
615
- * Props shared by text buffer hosts (GtkTextView, GtkSourceView).
616
- *
617
- * Provides undo control and buffer mutation callbacks.
618
- */
619
- export type TextBufferProps = {
620
- /** Whether undo/redo is enabled on the text buffer */
621
- enableUndo?: boolean;
622
- /** Callback fired when the buffer content changes */
623
- onBufferChanged?: ((buffer: Gtk.TextBuffer) => void) | null;
624
- /** Callback fired when text is inserted into the buffer */
625
- onTextInserted?: ((buffer: Gtk.TextBuffer, offset: number, text: string) => void) | null;
626
- /** Callback fired when text is deleted from the buffer */
627
- onTextDeleted?: ((buffer: Gtk.TextBuffer, startOffset: number, endOffset: number) => void) | null;
628
- /** Callback fired when the undo availability changes */
629
- onCanUndoChanged?: ((canUndo: boolean) => void) | null;
630
- /** Callback fired when the redo availability changes */
631
- onCanRedoChanged?: ((canRedo: boolean) => void) | null;
632
- };
633
- /** @internal */
634
- type BaseListViewProps = {
635
- /** Estimated item height in pixels for virtualization */
636
- estimatedItemHeight?: number;
637
- /** Estimated item width in pixels for virtualization */
638
- estimatedItemWidth?: number;
639
- /** Array of selected item IDs */
640
- selected?: string[] | null;
641
- /** Callback fired when the selection changes */
642
- onSelectionChanged?: ((ids: string[]) => void) | null;
643
- /** Selection behavior (single, multiple, none, etc.) */
644
- selectionMode?: Gtk.SelectionMode | null;
645
- };
646
- /**
647
- * Props for the {@link GtkListView} compound component.
648
- *
649
- * Extends the shared list-view base props with item data, a render
650
- * callback, optional tree expansion, and section header rendering.
651
- */
652
- export type ListViewProps<T = unknown, S = unknown> = BaseListViewProps & {
653
- /** Data items to display in the list */
654
- items?: ListItem<T, S>[];
655
- /** Function to render each list item. The `row` parameter provides tree state for hierarchical lists. */
656
- renderItem: (item: T, row?: Gtk.TreeListRow | null) => ReactNode;
657
- /** Whether to automatically expand new tree rows (default: false) */
658
- autoexpand?: boolean;
659
- /** Function to render section headers when items contain section entries */
660
- renderHeader?: ((item: S) => ReactNode) | null;
661
- };
662
- /**
663
- * Props for the {@link GtkGridView} compound component.
664
- *
665
- * Extends the shared list-view base props with item data and a
666
- * render callback for each grid cell.
667
- */
668
- export type GridViewProps<T = unknown> = BaseListViewProps & {
669
- /** Data items to display in the grid */
670
- items?: ListItem<T>[];
671
- /** Function to render each grid item */
672
- renderItem: (item: T) => ReactNode;
673
- };
674
- /**
675
- * Props shared by single-selection dropdown widgets (GtkDropDown, AdwComboRow).
676
- */
677
- export type DropDownProps<T = unknown, S = unknown> = {
678
- /** Data items to display in the dropdown */
679
- items?: ListItem<T, S>[];
680
- /** ID of the currently selected item */
681
- selectedId?: string | null;
682
- /** Callback fired when the selected item changes */
683
- onSelectionChanged?: ((id: string) => void) | null;
684
- /** Function to render each item. Sets the primary factory, used for both button and popup list unless overridden by renderListItem. */
685
- renderItem?: ((item: T) => ReactNode) | null;
686
- /** Function to render items in the popup list only, overriding renderItem for the list. */
687
- renderListItem?: ((item: T) => ReactNode) | null;
688
- /** Function to render section headers when items contain section entries */
689
- renderHeader?: ((item: S) => ReactNode) | null;
690
- };
691
- /**
692
- * Props shared by dialog button widgets (GtkColorDialogButton, GtkFontDialogButton).
693
- */
694
- export type DialogButtonProps = {
695
- /** Title for the chooser dialog */
696
- title?: string;
697
- /** Whether the dialog is modal */
698
- modal?: boolean;
699
- };
700
- /**
701
- * Props for widgets backed by a GtkAdjustment.
702
- *
703
- * Used by GtkRange, GtkScaleButton, GtkSpinButton, and AdwSpinRow
704
- * to configure the adjustment bounds, increments, and value change callback.
705
- */
706
- export type AdjustableProps = {
707
- /** The current value of the adjustable */
708
- value?: number;
709
- /** The minimum allowed value */
710
- lower?: number;
711
- /** The maximum allowed value */
712
- upper?: number;
713
- /** The step increment for small adjustments */
714
- stepIncrement?: number;
715
- /** The page increment for larger adjustments */
716
- pageIncrement?: number;
717
- /** The size of the visible portion (for scrollbars) */
718
- pageSize?: number;
719
- /** Callback fired when the adjustable value changes */
720
- onValueChanged?: ((value: number, self: Gtk.Range | Gtk.ScaleButton | Gtk.SpinButton | Adw.SpinRow) => void) | null;
721
- };
722
- interface StackProps {
723
- /** ID of the currently visible page */
724
- page?: string | null;
725
- }
726
- declare global {
727
- namespace React {
728
- namespace JSX {
729
- interface IntrinsicElements {
730
- Slot: SlotProps;
731
- AdwTimedAnimation: AdwTimedAnimationProps;
732
- AdwSpringAnimation: AdwSpringAnimationProps;
733
- ContainerSlot: ContainerSlotProps;
734
- ColumnViewColumn: ColumnViewColumnProps;
735
- FixedChild: FixedChildProps;
736
- GridChild: GridChildProps;
737
- MenuItem: MenuItemProps;
738
- MenuSection: MenuSectionProps;
739
- MenuSubmenu: MenuSubmenuProps;
740
- NotebookPage: NotebookPageProps;
741
- NotebookPageTab: NotebookPageTabProps;
742
- OverlayChild: OverlayChildProps;
743
- TextAnchor: TextAnchorProps;
744
- TextPaintable: TextPaintableProps;
745
- TextTag: TextTagProps;
746
- StackPage: StackPageProps;
747
- NavigationPage: NavigationPageProps;
748
- Shortcut: ShortcutProps;
749
- }
750
- }
751
- }
752
- }
753
- /**
754
- * Accessibility attribute props mixed into every widget.
755
- *
756
- * Maps to the GTK `GtkAccessible` interface properties, states,
757
- * and relations, allowing assistive technologies to query widget
758
- * semantics.
759
- */
760
- export type AccessibleProps = {
761
- accessibleAutocomplete?: Gtk.AccessibleAutocomplete;
762
- accessibleDescription?: string;
763
- accessibleHasPopup?: boolean;
764
- accessibleKeyShortcuts?: string;
765
- accessibleLabel?: string;
766
- accessibleLevel?: number;
767
- accessibleModal?: boolean;
768
- accessibleMultiLine?: boolean;
769
- accessibleMultiSelectable?: boolean;
770
- accessibleOrientation?: Gtk.Orientation;
771
- accessiblePlaceholder?: string;
772
- accessibleReadOnly?: boolean;
773
- accessibleRequired?: boolean;
774
- accessibleRoleDescription?: string;
775
- accessibleSort?: Gtk.AccessibleSort;
776
- accessibleValueMax?: number;
777
- accessibleValueMin?: number;
778
- accessibleValueNow?: number;
779
- accessibleValueText?: string;
780
- accessibleHelpText?: string;
781
- accessibleBusy?: boolean;
782
- accessibleChecked?: Gtk.AccessibleTristate;
783
- accessibleDisabled?: boolean;
784
- accessibleExpanded?: boolean;
785
- accessibleHidden?: boolean;
786
- accessibleInvalid?: Gtk.AccessibleInvalidState;
787
- accessiblePressed?: Gtk.AccessibleTristate;
788
- accessibleSelected?: boolean;
789
- accessibleVisited?: boolean;
790
- accessibleActiveDescendant?: Gtk.Widget;
791
- accessibleColCount?: number;
792
- accessibleColIndex?: number;
793
- accessibleColIndexText?: string;
794
- accessibleColSpan?: number;
795
- accessibleControls?: Gtk.Widget[];
796
- accessibleDescribedBy?: Gtk.Widget[];
797
- accessibleDetails?: Gtk.Widget[];
798
- accessibleErrorMessage?: Gtk.Widget[];
799
- accessibleFlowTo?: Gtk.Widget[];
800
- accessibleLabelledBy?: Gtk.Widget[];
801
- accessibleOwns?: Gtk.Widget[];
802
- accessiblePosInSet?: number;
803
- accessibleRowCount?: number;
804
- accessibleRowIndex?: number;
805
- accessibleRowIndexText?: string;
806
- accessibleRowSpan?: number;
807
- accessibleSetSize?: number;
808
- };
809
- declare module "./generated/jsx.js" {
810
- interface WidgetProps extends AccessibleProps {
811
- }
812
- interface GtkRangeProps extends Omit<AdjustableProps, "onValueChanged"> {
813
- /** Callback fired when the range value changes */
814
- onValueChanged?: ((value: number, self: Gtk.Range) => void) | null;
815
- }
816
- interface GtkScaleProps {
817
- /** Visual marks placed along the scale at specific values */
818
- marks?: Array<{
819
- value: number;
820
- position?: Gtk.PositionType;
821
- label?: string | null;
822
- }> | null;
823
- }
824
- interface GtkScaleButtonProps extends Omit<AdjustableProps, "value" | "onValueChanged"> {
825
- /** Callback fired when the scale button value changes */
826
- onValueChanged?: ((value: number, self: Gtk.ScaleButton) => void) | null;
827
- }
828
- interface GtkSpinButtonProps extends Omit<AdjustableProps, "value" | "onValueChanged"> {
829
- /** Callback fired when the spin button value changes */
830
- onValueChanged?: ((value: number, self: Gtk.SpinButton) => void) | null;
831
- }
832
- interface AdwSpinRowProps extends Omit<AdjustableProps, "value" | "onValueChanged"> {
833
- /** Callback fired when the spin row value changes */
834
- onValueChanged?: ((value: number, self: Adw.SpinRow) => void) | null;
835
- }
836
- interface AdwSwitchRowProps {
837
- /** Callback fired when the switch row active state changes */
838
- onActiveChanged?: ((active: boolean, self: Adw.SwitchRow) => void) | null;
839
- }
840
- interface GtkCalendarProps {
841
- /** Array of day numbers (1-31) to display as marked */
842
- markedDays?: number[] | null;
843
- }
844
- interface GtkLevelBarProps {
845
- /** Named offset thresholds that change the bar's appearance */
846
- offsets?: Array<{
847
- id: string;
848
- value: number;
849
- }> | null;
850
- }
851
- interface GtkTextViewProps extends TextBufferProps {
852
- }
853
- interface GtkSourceViewProps extends TextBufferProps {
854
- /** Language for syntax highlighting (ID string or Language object) */
855
- language?: string | GtkSource.Language;
856
- /** Color scheme for syntax highlighting (ID string or StyleScheme object) */
857
- styleScheme?: string | GtkSource.StyleScheme;
858
- /** Whether syntax highlighting is enabled */
859
- highlightSyntax?: boolean;
860
- /** Whether matching brackets are highlighted */
861
- highlightMatchingBrackets?: boolean;
862
- /** Whether the buffer has an implicit trailing newline */
863
- implicitTrailingNewline?: boolean;
864
- /** Callback fired when the cursor position changes */
865
- onCursorMoved?: (() => void) | null;
866
- /** Callback fired when the highlighted region is updated */
867
- onHighlightUpdated?: ((start: Gtk.TextIter, end: Gtk.TextIter) => void) | null;
868
- }
869
- interface GtkListViewProps extends ListViewProps {
870
- }
871
- interface GtkGridViewProps extends GridViewProps {
872
- }
873
- interface GtkColumnViewProps {
874
- /** Data items to display in the column view */
875
- items?: ListItem[];
876
- /** Array of selected row IDs */
877
- selected?: string[] | null;
878
- /** Callback fired when the selection changes */
879
- onSelectionChanged?: ((ids: string[]) => void) | null;
880
- /** Selection behavior (single, multiple, none, etc.) */
881
- selectionMode?: Gtk.SelectionMode | null;
882
- /** ID of the currently sorted column, or null for no sorting */
883
- sortColumn?: string | null;
884
- /** Sort direction (ascending or descending) */
885
- sortOrder?: Gtk.SortType | null;
886
- /** Callback fired when the sort column or order changes */
887
- onSortChanged?: ((column: string | null, order: Gtk.SortType) => void) | null;
888
- /** Estimated row height in pixels for virtualization */
889
- estimatedRowHeight?: number | null;
890
- /** Function to render section headers when items contain section entries */
891
- renderHeader?: ((item: unknown) => ReactNode) | null;
892
- }
893
- interface GtkDropDownProps extends DropDownProps {
894
- }
895
- interface AdwComboRowProps extends DropDownProps {
896
- }
897
- interface GtkStackProps extends StackProps {
898
- /** Callback fired when the visible page changes */
899
- onPageChanged?: ((page: string | null, self: Gtk.Stack) => void) | null;
900
- }
901
- interface AdwViewStackProps extends StackProps {
902
- /** Callback fired when the visible page changes */
903
- onPageChanged?: ((page: string | null, self: Adw.ViewStack) => void) | null;
904
- }
905
- interface AdwNavigationViewProps {
906
- /** Ordered list of page tags representing the navigation stack */
907
- history?: string[] | null;
908
- /** Callback fired when the navigation history changes */
909
- onHistoryChanged?: ((history: string[]) => void) | null;
910
- }
911
- interface GtkWindowProps {
912
- /** Callback fired when the window close button is clicked */
913
- onClose?: (() => void) | null;
914
- }
915
- interface GtkDrawingAreaProps {
916
- /** Render function called when the drawing area needs to be redrawn. Changing this reference automatically queues a redraw. */
917
- render?: ((cr: cairo.Context, width: number, height: number, self: Gtk.DrawingArea) => void) | null;
918
- }
919
- interface GtkColorDialogButtonProps extends DialogButtonProps {
920
- /** Callback fired when the selected color changes */
921
- onRgbaChanged?: ((rgba: Gdk.RGBA) => void) | null;
922
- /** Whether to show an alpha (opacity) channel */
923
- withAlpha?: boolean;
924
- }
925
- interface GtkFontDialogButtonProps extends DialogButtonProps {
926
- /** Callback fired when the selected font changes */
927
- onFontDescChanged?: ((fontDesc: Pango.FontDescription) => void) | null;
928
- /** Filter to restrict which fonts are shown in the dialog */
929
- filter?: Gtk.Filter | null;
930
- /** Custom font map to select fonts from */
931
- fontMap?: Pango.FontMap | null;
932
- }
933
- interface GtkAboutDialogProps {
934
- /** Additional credit sections with names and lists of people */
935
- creditSections?: Array<{
936
- name: string;
937
- people: string[];
938
- }>;
939
- }
940
- interface GtkSearchBarProps {
941
- /** Callback fired when search mode is toggled */
942
- onSearchModeChanged?: ((searchMode: boolean) => void) | null;
943
- }
944
- interface AdwToggleGroupProps {
945
- /** Callback fired when the active toggle changes */
946
- onActiveChanged?: ((active: number, activeName: string | null) => void) | null;
947
- /** Declarative toggle definitions for the group */
948
- toggles?: ToggleProps[];
949
- }
950
- interface AdwAlertDialogProps {
951
- /** Declarative response button definitions for the dialog */
952
- responses?: AlertDialogResponseProps[];
953
- }
954
- interface GtkDragSourceProps {
955
- /** Paintable to use as the drag icon */
956
- icon?: Gdk.Paintable | null;
957
- /** X offset of the hotspot within the drag icon */
958
- iconHotX?: number;
959
- /** Y offset of the hotspot within the drag icon */
960
- iconHotY?: number;
961
- }
962
- interface GtkDropTargetProps {
963
- /** GType values for accepted drop content types */
964
- types?: number[];
965
- }
966
- }
967
- export { AdwComboRow, GtkColumnView, GtkDropDown, GtkGridView, GtkListView } from "./components/list.js";
968
- export * from "./generated/compounds.js";
969
- /** JSX intrinsic element name for timed (duration-based) Adwaita animations. */
970
- export declare const AdwTimedAnimation: "AdwTimedAnimation";
971
- /** JSX intrinsic element name for spring-physics-based Adwaita animations. */
972
- export declare const AdwSpringAnimation: "AdwSpringAnimation";
973
- export * from "./generated/jsx.js";
974
- //# sourceMappingURL=jsx.d.ts.map