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

///|
#external
pub type MTLMaterialOptions

///|
#module("@mizchi/three-mbt/modeling-io")
pub extern "js" fn MTLMaterialOptions::MTLMaterialOptions() -> MTLMaterialOptions = "mTLMaterialOptions"

///|
pub extern "js" fn MTLMaterialOptions::side(self : MTLMaterialOptions) -> Side =
  #| (self) => self.side

///|
pub extern "js" fn MTLMaterialOptions::set_side(
  self : MTLMaterialOptions,
  value : Side,
) -> Unit =
  #| (self, value) => { self.side = value; }

///|
pub extern "js" fn MTLMaterialOptions::wrap(
  self : MTLMaterialOptions,
) -> Wrapping =
  #| (self) => self.wrap

///|
pub extern "js" fn MTLMaterialOptions::set_wrap(
  self : MTLMaterialOptions,
  value : Wrapping,
) -> Unit =
  #| (self, value) => { self.wrap = value; }

///|
pub extern "js" fn MTLMaterialOptions::normalize_rgb(
  self : MTLMaterialOptions,
) -> Bool =
  #| (self) => self.normalizeRGB

///|
pub extern "js" fn MTLMaterialOptions::set_normalize_rgb(
  self : MTLMaterialOptions,
  value : Bool,
) -> Unit =
  #| (self, value) => { self.normalizeRGB = value; }

///|
pub extern "js" fn MTLMaterialOptions::ignore_zero_rgbs(
  self : MTLMaterialOptions,
) -> Bool =
  #| (self) => self.ignoreZeroRGBs

///|
pub extern "js" fn MTLMaterialOptions::set_ignore_zero_rgbs(
  self : MTLMaterialOptions,
  value : Bool,
) -> Unit =
  #| (self, value) => { self.ignoreZeroRGBs = value; }

///|
pub extern "js" fn MTLMaterialOptions::invert_tr(
  self : MTLMaterialOptions,
) -> Bool =
  #| (self) => self.invertTrProperty

///|
pub extern "js" fn MTLMaterialOptions::set_invert_tr(
  self : MTLMaterialOptions,
  value : Bool,
) -> Unit =
  #| (self, value) => { self.invertTrProperty = value; }