// GENERATED — DO NOT EDIT

///|
/// [Upstream documentation](https://docs.gtk.org/gio/class.SimpleActionGroup.html).
pub type SimpleActionGroup

///|
pub(open) trait ISimpleActionGroup {
  fn as_simple_action_group(Self) -> SimpleActionGroup
}

///|
pub impl ISimpleActionGroup for SimpleActionGroup with fn as_simple_action_group(
  self,
) {
  self
}

///|
/// [Upstream documentation](https://docs.gtk.org/gio/ctor.SimpleActionGroup.new.html).
pub extern "c" fn SimpleActionGroup::new() -> SimpleActionGroup = "moonbit_g_simple_action_group_new"

///|
pub fn SimpleActionGroup::as_gobject_object(
  self : SimpleActionGroup,
) -> @gobject.Object = "%identity"

///|
pub impl @gobject.IObject for SimpleActionGroup with fn as_object(self) {
  self.as_gobject_object()
}

///|
pub fn SimpleActionGroup::as_action_group(
  self : SimpleActionGroup,
) -> ActionGroup = "%identity"

///|
pub impl IActionGroup for SimpleActionGroup with fn as_action_group(self) {
  self.as_action_group()
}

///|
pub fn SimpleActionGroup::as_action_map(self : SimpleActionGroup) -> ActionMap = "%identity"

///|
pub impl IActionMap for SimpleActionGroup with fn as_action_map(self) {
  self.as_action_map()
}