// Generated by scripts/generate.mjs from bindings/api.mjs. Do not edit.

///|
#external
pub type ShadowRenderContext

///|
pub extern "js" fn ShadowRenderContext::renderer(
  self : ShadowRenderContext,
) -> WebGLRenderer =
  #| (self) => self.renderer

///|
pub extern "js" fn ShadowRenderContext::object(
  self : ShadowRenderContext,
) -> Object3D =
  #| (self) => self.object

///|
pub extern "js" fn ShadowRenderContext::camera(
  self : ShadowRenderContext,
) -> Camera =
  #| (self) => self.camera

///|
pub extern "js" fn ShadowRenderContext::shadow_camera(
  self : ShadowRenderContext,
) -> Camera =
  #| (self) => self.shadowCamera

///|
pub extern "js" fn ShadowRenderContext::geometry(
  self : ShadowRenderContext,
) -> BufferGeometry =
  #| (self) => self.geometry

///|
pub extern "js" fn ShadowRenderContext::depth_material(
  self : ShadowRenderContext,
) -> Material =
  #| (self) => self.depthMaterial

///|
extern "js" fn ShadowRenderContext::ffi_group(
  self : ShadowRenderContext,
) -> Nullable[GeometryGroup] =
  #| (self) => self.group

///|
pub fn ShadowRenderContext::group(self : ShadowRenderContext) -> GeometryGroup? {
  self.ffi_group().to_option()
}