import { astalify, Gtk, type ConstructProps } from 'astal/gtk3'; import { register } from 'astal/gobject'; @register() export class ToggleButton extends astalify(Gtk.ToggleButton) { constructor(props: ConstructProps< ToggleButton, Gtk.ToggleButton.ConstructorProps >) { // eslint-disable-next-line @typescript-eslint/no-explicit-any super(props as any); } } @register() export class RadioButton extends astalify(Gtk.RadioButton) { constructor(props: ConstructProps< RadioButton, Gtk.RadioButton.ConstructorProps > = {}) { // eslint-disable-next-line @typescript-eslint/no-explicit-any super(props as any); } } @register() export class ListBox extends astalify(Gtk.ListBox) { override get_children() { return super.get_children() as Gtk.ListBoxRow[]; } constructor(props: ConstructProps< ListBox, Gtk.ListBox.ConstructorProps > = {}) { // eslint-disable-next-line @typescript-eslint/no-explicit-any super(props as any); } } @register() export class ProgressBar extends astalify(Gtk.ProgressBar) { constructor(props: ConstructProps< ProgressBar, Gtk.ProgressBar.ConstructorProps > = {}) { // eslint-disable-next-line @typescript-eslint/no-explicit-any super(props as any); } } @register() export class ComboBoxText extends astalify(Gtk.ComboBoxText) { constructor(props: ConstructProps< ComboBoxText, Gtk.ComboBoxText.ConstructorProps > = {}) { // eslint-disable-next-line @typescript-eslint/no-explicit-any super(props as any); } }