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

///|
#external
pub type GTAOSettings

///|
#module("@mizchi/three-mbt/render-extra")
pub extern "js" fn GTAOSettings::GTAOSettings() -> GTAOSettings = "gTAOSettings"

///|
pub extern "js" fn GTAOSettings::set_radius(
  self : GTAOSettings,
  value : Double,
) -> Unit =
  #| (self, value) => { self.radius = value; }

///|
pub extern "js" fn GTAOSettings::set_distance_exponent(
  self : GTAOSettings,
  value : Double,
) -> Unit =
  #| (self, value) => { self.distanceExponent = value; }

///|
pub extern "js" fn GTAOSettings::set_thickness(
  self : GTAOSettings,
  value : Double,
) -> Unit =
  #| (self, value) => { self.thickness = value; }

///|
pub extern "js" fn GTAOSettings::set_distance_fall_off(
  self : GTAOSettings,
  value : Double,
) -> Unit =
  #| (self, value) => { self.distanceFallOff = value; }

///|
pub extern "js" fn GTAOSettings::set_scale(
  self : GTAOSettings,
  value : Double,
) -> Unit =
  #| (self, value) => { self.scale = value; }

///|
pub extern "js" fn GTAOSettings::set_samples(
  self : GTAOSettings,
  value : Int,
) -> Unit =
  #| (self, value) => { self.samples = value; }

///|
pub extern "js" fn GTAOSettings::set_screen_space_radius(
  self : GTAOSettings,
  value : Bool,
) -> Unit =
  #| (self, value) => { self.screenSpaceRadius = value; }