//! # `DBus` interface proxy for: `org.a11y.atspi.TableCell`
//!
//! This code was generated by `zbus-xmlgen` `2.0.1` from `DBus` introspection data.
//! Source: `TableCell.xml`.
//!
//! You may prefer to adapt it, instead of using it verbatim.
//!
//! More information can be found in the
//! [Writing a client proxy](https://dbus.pages.freedesktop.org/zbus/client.html)
//! section of the zbus documentation.
//!

use crate::common::ObjectRef;

#[zbus::proxy(interface = "org.a11y.atspi.TableCell", assume_defaults = true)]
pub trait TableCell {
	/// GetColumnHeaderCells method
	fn get_column_header_cells(&self) -> zbus::Result<Vec<ObjectRef>>;

	/// GetRowColumnSpan method
	fn get_row_column_span(&self) -> zbus::Result<(bool, i32, i32, i32, i32)>;

	/// GetRowHeaderCells method
	fn get_row_header_cells(&self) -> zbus::Result<Vec<ObjectRef>>;

	/// ColumnSpan property
	#[zbus(property)]
	fn column_span(&self) -> zbus::Result<i32>;

	/// Position property
	#[zbus(property)]
	fn position(&self) -> zbus::Result<(i32, i32)>;

	/// RowSpan property
	#[zbus(property)]
	fn row_span(&self) -> zbus::Result<i32>;

	/// Table property
	#[zbus(property)]
	fn table(&self) -> zbus::Result<ObjectRef>;
}
