// This file was generated by gir (https://github.com/gtk-rs/gir)
// from ../../girs
// from ../../gtk-girs
// DO NOT EDIT

use crate::{ffi,Request};
use glib::{translate::*};

glib::wrapper! {
    /// Cancels the session that is currently under configuration.
    ///
    /// # Implements
    ///
    /// [`RequestExt`][trait@crate::prelude::RequestExt]
    #[doc(alias = "AstalGreetCancelSession")]
    pub struct CancelSession(Object<ffi::AstalGreetCancelSession, ffi::AstalGreetCancelSessionClass>) @extends Request;

    match fn {
        type_ => || ffi::astal_greet_cancel_session_get_type(),
    }
}

impl CancelSession {
        pub const NONE: Option<&'static CancelSession> = None;
    

    #[doc(alias = "astal_greet_cancel_session_new")]
    pub fn new() -> CancelSession {
        assert_initialized_main_thread!();
        unsafe {
            from_glib_full(ffi::astal_greet_cancel_session_new())
        }
    }
}

impl Default for CancelSession {
                     fn default() -> Self {
                         Self::new()
                     }
                 }
