// @generated by tools/generate_api_shims.py; do not edit by hand.
#![allow(clippy::missing_errors_doc)]
#![allow(clippy::must_use_candidate)]
#![allow(clippy::all, clippy::pedantic, dead_code, unused_variables)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]

/// C# type: `T:LibreMetaverse.StructuredData.OSD`.
#[non_exhaustive]
pub enum OSD {
    Undefined,
    Boolean(bool),
    Integer(i32),
    Real(f64),
    String(String),
    UUID(libremetaverse_types::UUID),
    Date(std::time::SystemTime),
    Uri(libremetaverse_types::compat::Uri),
    Binary(Vec<u8>),
    Array(Vec<OSD>),
    Map(std::collections::HashMap<String, OSD>),
    LlsdXml(String),
}
impl OSD {
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.#ctor`.
    pub fn new() -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.#ctor")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.AsBinary`.
    pub fn as_binary(&self) -> Result<Vec<u8>, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.AsBinary")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.AsBoolean`.
    pub fn as_boolean(&self) -> Result<bool, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.AsBoolean")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.AsColor4`.
    pub fn as_color4(&self) -> Result<libremetaverse_types::Color4, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.AsColor4")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.AsDate`.
    pub fn as_date(&self) -> Result<std::time::SystemTime, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.AsDate")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.AsInteger`.
    pub fn as_integer(&self) -> Result<i32, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.AsInteger")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.AsLong`.
    pub fn as_long(&self) -> Result<i64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.AsLong")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.AsQuaternion`.
    pub fn as_quaternion(&self) -> Result<libremetaverse_types::Quaternion, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.AsQuaternion")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.AsReal`.
    pub fn as_real(&self) -> Result<f64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.AsReal")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.AsString`.
    pub fn as_string(&self) -> Result<String, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.AsString")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.AsUInteger`.
    pub fn as_u_integer(&self) -> Result<u32, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.AsUInteger")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.AsULong`.
    pub fn as_u_long(&self) -> Result<u64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.AsULong")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.AsUUID`.
    pub fn as_uuid(&self) -> Result<libremetaverse_types::UUID, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.AsUUID")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.AsUri`.
    pub fn as_uri(&self) -> Result<Option<libremetaverse_types::compat::Uri>, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.AsUri")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.AsVector2`.
    pub fn as_vector2(&self) -> Result<libremetaverse_types::Vector2, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.AsVector2")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.AsVector3`.
    pub fn as_vector3(&self) -> Result<libremetaverse_types::Vector3, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.AsVector3")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.AsVector3d`.
    pub fn as_vector3d(&self) -> Result<libremetaverse_types::Vector3d, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.AsVector3d")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.AsVector4`.
    pub fn as_vector4(&self) -> Result<libremetaverse_types::Vector4, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.AsVector4")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.Copy`.
    pub fn copy(&self) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSD.Copy")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.DeserializeMembers(System.Object@,LibreMetaverse.StructuredData.OSDMap)`.
    pub fn deserialize_members(
        obj: &mut libremetaverse_types::compat::Object,
        serialized: libremetaverse_structured_data::OSDMap,
    ) -> Result<(), crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.DeserializeMembers(System.Object@,LibreMetaverse.StructuredData.OSDMap)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromBinary(System.Byte[])`.
    pub fn from_binary(
        value: Vec<u8>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromBinary(System.Byte[])",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromBoolean(System.Boolean)`.
    pub fn from_boolean(value: bool) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromBoolean(System.Boolean)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromColor4(LibreMetaverse.Color4)`.
    pub fn from_color4(
        value: libremetaverse_types::Color4,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromColor4(LibreMetaverse.Color4)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromDate(System.DateTime)`.
    pub fn from_date(
        value: std::time::SystemTime,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromDate(System.DateTime)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromInteger(System.Byte)`.
    pub fn from_integer_with_byte(
        value: u8,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromInteger(System.Byte)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromInteger(System.Int16)`.
    pub fn from_integer_with_int16(
        value: i16,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromInteger(System.Int16)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromInteger(System.Int32)`.
    pub fn from_integer_with_int32(
        value: i32,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromInteger(System.Int32)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromInteger(System.SByte)`.
    pub fn from_integer_with_s_byte(
        value: i8,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromInteger(System.SByte)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromInteger(System.UInt16)`.
    pub fn from_integer_with_u_int16(
        value: u16,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromInteger(System.UInt16)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromInteger(System.UInt32)`.
    pub fn from_integer_with_u_int32(
        value: u32,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromInteger(System.UInt32)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromLong(System.Int64)`.
    pub fn from_long(value: i64) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromLong(System.Int64)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromObject(System.Object)`.
    pub fn from_object(
        value: libremetaverse_types::compat::Object,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromObject(System.Object)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromQuaternion(LibreMetaverse.Quaternion)`.
    pub fn from_quaternion(
        value: libremetaverse_types::Quaternion,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromQuaternion(LibreMetaverse.Quaternion)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromReal(System.Double)`.
    pub fn from_real_with_double(
        value: f64,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromReal(System.Double)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromReal(System.Single)`.
    pub fn from_real_with_single(
        value: f32,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromReal(System.Single)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromString(System.String)`.
    pub fn from_string(value: String) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromString(System.String)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromUInteger(System.UInt32)`.
    pub fn from_u_integer(value: u32) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromUInteger(System.UInt32)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromULong(System.UInt64)`.
    pub fn from_u_long(value: u64) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromULong(System.UInt64)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromUUID(LibreMetaverse.UUID)`.
    pub fn from_uuid(
        value: libremetaverse_types::UUID,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromUUID(LibreMetaverse.UUID)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromUri(System.Uri)`.
    pub fn from_uri(
        value: libremetaverse_types::compat::Uri,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromUri(System.Uri)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromVector2(LibreMetaverse.Vector2)`.
    pub fn from_vector2(
        value: libremetaverse_types::Vector2,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromVector2(LibreMetaverse.Vector2)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromVector3(LibreMetaverse.Vector3)`.
    pub fn from_vector3(
        value: libremetaverse_types::Vector3,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromVector3(LibreMetaverse.Vector3)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromVector3d(LibreMetaverse.Vector3d)`.
    pub fn from_vector3d(
        value: libremetaverse_types::Vector3d,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromVector3d(LibreMetaverse.Vector3d)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.FromVector4(LibreMetaverse.Vector4)`.
    pub fn from_vector4(
        value: libremetaverse_types::Vector4,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.FromVector4(LibreMetaverse.Vector4)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.SerializeMembers(System.Object)`.
    pub fn serialize_members(
        obj: libremetaverse_types::compat::Object,
    ) -> Result<libremetaverse_structured_data::OSDMap, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.SerializeMembers(System.Object)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.ToObject(System.Type,LibreMetaverse.StructuredData.OSD)`.
    pub fn to_object(
        type_: libremetaverse_types::compat::TypeId,
        value: libremetaverse_structured_data::OSD,
    ) -> Result<libremetaverse_types::compat::Object, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSD.ToObject(System.Type,LibreMetaverse.StructuredData.OSD)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.ToString`.
    pub fn to_string(&self) -> String {
        libremetaverse_types::unimplemented_api!("M:LibreMetaverse.StructuredData.OSD.ToString")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.Color4)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_color4(
        value: libremetaverse_types::Color4,
    ) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.Color4)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.Quaternion)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_quaternion(
        value: libremetaverse_types::Quaternion,
    ) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.Quaternion)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.Color4`.
    pub fn from_with_osd(
        value: libremetaverse_structured_data::OSD,
    ) -> libremetaverse_types::Color4 {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.Color4"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.Quaternion`.
    pub fn from_with_osd_b8ef4612(
        value: libremetaverse_structured_data::OSD,
    ) -> libremetaverse_types::Quaternion {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.Quaternion"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.UUID`.
    pub fn from_with_osd_eba15316(
        value: libremetaverse_structured_data::OSD,
    ) -> libremetaverse_types::UUID {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.UUID"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.Vector2`.
    pub fn from_with_osd_e9aee905(
        value: libremetaverse_structured_data::OSD,
    ) -> libremetaverse_types::Vector2 {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.Vector2"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.Vector3`.
    pub fn from_with_osd_93c123bc(
        value: libremetaverse_structured_data::OSD,
    ) -> libremetaverse_types::Vector3 {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.Vector3"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.Vector3d`.
    pub fn from_with_osd_d799abcc(
        value: libremetaverse_structured_data::OSD,
    ) -> libremetaverse_types::Vector3d {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.Vector3d"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.Vector4`.
    pub fn from_with_osd_866cd1d2(
        value: libremetaverse_structured_data::OSD,
    ) -> libremetaverse_types::Vector4 {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~LibreMetaverse.Vector4"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Boolean`.
    pub fn from_with_osd_f50c5016(value: libremetaverse_structured_data::OSD) -> bool {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Boolean"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Byte[]`.
    pub fn from_with_osd_ffa78bdc(value: libremetaverse_structured_data::OSD) -> Vec<u8> {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Byte[]"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.DateTime`.
    pub fn from_with_osd_37aede2f(
        value: libremetaverse_structured_data::OSD,
    ) -> std::time::SystemTime {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.DateTime"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Double`.
    pub fn from_with_osd_1b5df47b(value: libremetaverse_structured_data::OSD) -> f64 {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Double"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Int32`.
    pub fn from_with_osd_0d6b9c45(value: libremetaverse_structured_data::OSD) -> i32 {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Int32"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Int64`.
    pub fn from_with_osd_75ba279e(value: libremetaverse_structured_data::OSD) -> i64 {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Int64"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Single`.
    pub fn from_with_osd_232c9960(value: libremetaverse_structured_data::OSD) -> f32 {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Single"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.String`.
    pub fn from_with_osd_853f4d5d(value: libremetaverse_structured_data::OSD) -> String {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.String"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.UInt32`.
    pub fn from_with_osd_6a01d439(value: libremetaverse_structured_data::OSD) -> u32 {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.UInt32"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.UInt64`.
    pub fn from_with_osd_1ae3c138(value: libremetaverse_structured_data::OSD) -> u64 {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.UInt64"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Uri`.
    pub fn from_with_osd_8dbb79ec(
        value: libremetaverse_structured_data::OSD,
    ) -> Option<libremetaverse_types::compat::Uri> {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.StructuredData.OSD)~System.Uri"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.UUID)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_uuid(
        value: libremetaverse_types::UUID,
    ) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.UUID)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.Vector2)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_vector2(
        value: libremetaverse_types::Vector2,
    ) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.Vector2)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.Vector3)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_vector3(
        value: libremetaverse_types::Vector3,
    ) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.Vector3)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.Vector3d)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_vector3d(
        value: libremetaverse_types::Vector3d,
    ) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.Vector3d)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.Vector4)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_vector4(
        value: libremetaverse_types::Vector4,
    ) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(LibreMetaverse.Vector4)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Boolean)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_boolean(value: bool) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Boolean)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Byte)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_byte(value: u8) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Byte)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Byte[])~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_bytes(value: Vec<u8>) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Byte[])~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.DateTime)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_date_time(
        value: std::time::SystemTime,
    ) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.DateTime)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Double)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_double(value: f64) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Double)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Int16)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_int16(value: i16) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Int16)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Int32)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_int32(value: i32) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Int32)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Int64)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_int64(value: i64) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Int64)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.SByte)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_s_byte(value: i8) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.SByte)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Single)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_single(value: f32) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Single)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.String)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_string(value: String) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.String)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.UInt16)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_u_int16(value: u16) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.UInt16)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.UInt32)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_u_int32(value: u32) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.UInt32)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.UInt64)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_u_int64(value: u64) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.UInt64)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Uri)~LibreMetaverse.StructuredData.OSD`.
    pub fn from_with_uri(
        value: libremetaverse_types::compat::Uri,
    ) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSD.op_Implicit(System.Uri)~LibreMetaverse.StructuredData.OSD"
        )
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSD.Type`.
    pub fn type_(&self) -> libremetaverse_structured_data::OSDType {
        libremetaverse_types::unimplemented_api!("P:LibreMetaverse.StructuredData.OSD.Type")
    }
}

/// C# type: `T:LibreMetaverse.StructuredData.OSDArray`.
pub struct OSDArray {
    values: Vec<OSD>,
}
impl OSDArray {
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.#ctor`.
    pub fn new_with_constructor() -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDArray.#ctor")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.#ctor(System.Collections.Generic.List{LibreMetaverse.StructuredData.OSD})`.
    pub fn new_with_list(
        value: Vec<libremetaverse_structured_data::OSD>,
    ) -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDArray.#ctor(System.Collections.Generic.List{LibreMetaverse.StructuredData.OSD})",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.#ctor(System.Int32)`.
    pub fn new_with_int32(capacity: i32) -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDArray.#ctor(System.Int32)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.Add(LibreMetaverse.StructuredData.OSD)`.
    pub fn add(&self, llsd: libremetaverse_structured_data::OSD) -> Result<(), crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDArray.Add(LibreMetaverse.StructuredData.OSD)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsBinary`.
    pub fn as_binary(&self) -> Result<Vec<u8>, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDArray.AsBinary")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsBoolean`.
    pub fn as_boolean(&self) -> Result<bool, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDArray.AsBoolean")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsColor4`.
    pub fn as_color4(&self) -> Result<libremetaverse_types::Color4, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDArray.AsColor4")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsLong`.
    pub fn as_long(&self) -> Result<i64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDArray.AsLong")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsQuaternion`.
    pub fn as_quaternion(&self) -> Result<libremetaverse_types::Quaternion, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDArray.AsQuaternion",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsUInteger`.
    pub fn as_u_integer(&self) -> Result<u32, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDArray.AsUInteger")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsULong`.
    pub fn as_u_long(&self) -> Result<u64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDArray.AsULong")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsVector2`.
    pub fn as_vector2(&self) -> Result<libremetaverse_types::Vector2, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDArray.AsVector2")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsVector3`.
    pub fn as_vector3(&self) -> Result<libremetaverse_types::Vector3, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDArray.AsVector3")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsVector3d`.
    pub fn as_vector3d(&self) -> Result<libremetaverse_types::Vector3d, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDArray.AsVector3d")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.AsVector4`.
    pub fn as_vector4(&self) -> Result<libremetaverse_types::Vector4, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDArray.AsVector4")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.Clear`.
    pub fn clear(&self) -> Result<(), crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDArray.Clear")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.Contains(LibreMetaverse.StructuredData.OSD)`.
    pub fn contains_with_osd(
        &self,
        llsd: libremetaverse_structured_data::OSD,
    ) -> Result<bool, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDArray.Contains(LibreMetaverse.StructuredData.OSD)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.Contains(System.String)`.
    pub fn contains_with_string(&self, element: String) -> Result<bool, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDArray.Contains(System.String)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.Copy`.
    pub fn copy(&self) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDArray.Copy")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.CopyTo(LibreMetaverse.StructuredData.OSD[],System.Int32)`.
    pub fn copy_to(
        &self,
        array: Vec<libremetaverse_structured_data::OSD>,
        index: i32,
    ) -> Result<(), crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDArray.CopyTo(LibreMetaverse.StructuredData.OSD[],System.Int32)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.IndexOf(LibreMetaverse.StructuredData.OSD)`.
    pub fn index_of(&self, item: libremetaverse_structured_data::OSD) -> Result<i32, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDArray.IndexOf(LibreMetaverse.StructuredData.OSD)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.Insert(System.Int32,LibreMetaverse.StructuredData.OSD)`.
    pub fn insert(
        &self,
        index: i32,
        item: libremetaverse_structured_data::OSD,
    ) -> Result<(), crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDArray.Insert(System.Int32,LibreMetaverse.StructuredData.OSD)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.Remove(LibreMetaverse.StructuredData.OSD)`.
    pub fn remove(&self, llsd: libremetaverse_structured_data::OSD) -> Result<bool, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDArray.Remove(LibreMetaverse.StructuredData.OSD)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.RemoveAt(System.Int32)`.
    pub fn remove_at(&self, index: i32) -> Result<(), crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDArray.RemoveAt(System.Int32)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.ToArrayList`.
    pub fn to_array_list(&self) -> Result<libremetaverse_types::compat::ArrayList, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDArray.ToArrayList",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDArray.ToString`.
    pub fn to_string(&self) -> String {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSDArray.ToString"
        )
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDArray.Count`.
    pub fn count(&self) -> i32 {
        libremetaverse_types::unimplemented_api!("P:LibreMetaverse.StructuredData.OSDArray.Count")
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDArray.IsReadOnly`.
    pub fn is_read_only(&self) -> bool {
        libremetaverse_types::unimplemented_api!(
            "P:LibreMetaverse.StructuredData.OSDArray.IsReadOnly"
        )
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDArray.Item(System.Int32)`.
    pub fn item(&self, index: i32) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "P:LibreMetaverse.StructuredData.OSDArray.Item(System.Int32)"
        )
    }
    /// Setter for C# member: `P:LibreMetaverse.StructuredData.OSDArray.Item(System.Int32)`.
    pub fn set_item(&mut self, index: i32, value: libremetaverse_structured_data::OSD) {
        libremetaverse_types::unimplemented_api!(
            "P:LibreMetaverse.StructuredData.OSDArray.Item(System.Int32)"
        )
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDArray.Type`.
    pub fn type_(&self) -> libremetaverse_structured_data::OSDType {
        libremetaverse_types::unimplemented_api!("P:LibreMetaverse.StructuredData.OSDArray.Type")
    }
}

/// C# type: `T:LibreMetaverse.StructuredData.OSDBinary`.
pub struct OSDBinary {
    value: Vec<u8>,
}
impl OSDBinary {
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.#ctor(System.Byte[])`.
    pub fn new_with_bytes(value: Vec<u8>) -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDBinary.#ctor(System.Byte[])",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.#ctor(System.Int64)`.
    pub fn new_with_int64(value: i64) -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDBinary.#ctor(System.Int64)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.#ctor(System.UInt32)`.
    pub fn new_with_u_int32(value: u32) -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDBinary.#ctor(System.UInt32)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.#ctor(System.UInt64)`.
    pub fn new_with_u_int64(value: u64) -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDBinary.#ctor(System.UInt64)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.AsBinary`.
    pub fn as_binary(&self) -> Result<Vec<u8>, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDBinary.AsBinary")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.AsLong`.
    pub fn as_long(&self) -> Result<i64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDBinary.AsLong")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.AsString`.
    pub fn as_string(&self) -> Result<String, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDBinary.AsString")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.AsUInteger`.
    pub fn as_u_integer(&self) -> Result<u32, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDBinary.AsUInteger",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.AsULong`.
    pub fn as_u_long(&self) -> Result<u64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDBinary.AsULong")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.Copy`.
    pub fn copy(&self) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDBinary.Copy")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBinary.ToString`.
    pub fn to_string(&self) -> String {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSDBinary.ToString"
        )
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDBinary.Type`.
    pub fn type_(&self) -> libremetaverse_structured_data::OSDType {
        libremetaverse_types::unimplemented_api!("P:LibreMetaverse.StructuredData.OSDBinary.Type")
    }
}

/// C# type: `T:LibreMetaverse.StructuredData.OSDBoolean`.
pub struct OSDBoolean {
    value: bool,
}
impl OSDBoolean {
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBoolean.#ctor(System.Boolean)`.
    pub fn new(value: bool) -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDBoolean.#ctor(System.Boolean)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBoolean.AsBinary`.
    pub fn as_binary(&self) -> Result<Vec<u8>, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDBoolean.AsBinary")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBoolean.AsBoolean`.
    pub fn as_boolean(&self) -> Result<bool, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDBoolean.AsBoolean",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBoolean.AsInteger`.
    pub fn as_integer(&self) -> Result<i32, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDBoolean.AsInteger",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBoolean.AsReal`.
    pub fn as_real(&self) -> Result<f64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDBoolean.AsReal")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBoolean.AsString`.
    pub fn as_string(&self) -> Result<String, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDBoolean.AsString")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBoolean.Copy`.
    pub fn copy(&self) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDBoolean.Copy")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDBoolean.ToString`.
    pub fn to_string(&self) -> String {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSDBoolean.ToString"
        )
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDBoolean.Type`.
    pub fn type_(&self) -> libremetaverse_structured_data::OSDType {
        libremetaverse_types::unimplemented_api!("P:LibreMetaverse.StructuredData.OSDBoolean.Type")
    }
}

/// C# type: `T:LibreMetaverse.StructuredData.OSDDate`.
pub struct OSDDate {
    value: std::time::SystemTime,
}
impl OSDDate {
    /// C# member: `M:LibreMetaverse.StructuredData.OSDDate.#ctor(System.DateTime)`.
    pub fn new(dt: std::time::SystemTime) -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDDate.#ctor(System.DateTime)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDDate.AsBinary`.
    pub fn as_binary(&self) -> Result<Vec<u8>, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDDate.AsBinary")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDDate.AsDate`.
    pub fn as_date(&self) -> Result<std::time::SystemTime, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDDate.AsDate")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDDate.AsInteger`.
    pub fn as_integer(&self) -> Result<i32, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDDate.AsInteger")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDDate.AsLong`.
    pub fn as_long(&self) -> Result<i64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDDate.AsLong")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDDate.AsString`.
    pub fn as_string(&self) -> Result<String, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDDate.AsString")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDDate.AsUInteger`.
    pub fn as_u_integer(&self) -> Result<u32, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDDate.AsUInteger")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDDate.AsULong`.
    pub fn as_u_long(&self) -> Result<u64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDDate.AsULong")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDDate.Copy`.
    pub fn copy(&self) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDDate.Copy")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDDate.ToString`.
    pub fn to_string(&self) -> String {
        libremetaverse_types::unimplemented_api!("M:LibreMetaverse.StructuredData.OSDDate.ToString")
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDDate.Type`.
    pub fn type_(&self) -> libremetaverse_structured_data::OSDType {
        libremetaverse_types::unimplemented_api!("P:LibreMetaverse.StructuredData.OSDDate.Type")
    }
}

/// C# type: `T:LibreMetaverse.StructuredData.OSDException`.
pub struct OSDException {
    message: String,
}
impl OSDException {
    /// C# member: `M:LibreMetaverse.StructuredData.OSDException.#ctor`.
    pub fn new_with_constructor() -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDException.#ctor")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDException.#ctor(System.String)`.
    pub fn new_with_string(message: String) -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDException.#ctor(System.String)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDException.#ctor(System.String,System.Exception)`.
    pub fn new_with_string_exception(
        message: String,
        inner_exception: libremetaverse_types::compat::ExternalError,
    ) -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDException.#ctor(System.String,System.Exception)",
        )
    }
}

/// C# type: `T:LibreMetaverse.StructuredData.OSDFormat`.
#[derive(Clone, Copy, Debug, Eq, Hash, PartialEq)]
#[repr(i32)]
pub enum OSDFormat {
    /// C# member: `F:LibreMetaverse.StructuredData.OSDFormat.Binary`.
    Binary = 2,
    /// C# member: `F:LibreMetaverse.StructuredData.OSDFormat.Json`.
    Json = 1,
    /// C# member: `F:LibreMetaverse.StructuredData.OSDFormat.Xml`.
    Xml = 0,
}

/// C# type: `T:LibreMetaverse.StructuredData.OSDInteger`.
pub struct OSDInteger {
    value: i32,
}
impl OSDInteger {
    /// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.#ctor(System.Int32)`.
    pub fn new(value: i32) -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDInteger.#ctor(System.Int32)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.AsBinary`.
    pub fn as_binary(&self) -> Result<Vec<u8>, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDInteger.AsBinary")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.AsBoolean`.
    pub fn as_boolean(&self) -> Result<bool, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDInteger.AsBoolean",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.AsInteger`.
    pub fn as_integer(&self) -> Result<i32, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDInteger.AsInteger",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.AsLong`.
    pub fn as_long(&self) -> Result<i64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDInteger.AsLong")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.AsReal`.
    pub fn as_real(&self) -> Result<f64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDInteger.AsReal")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.AsString`.
    pub fn as_string(&self) -> Result<String, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDInteger.AsString")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.AsUInteger`.
    pub fn as_u_integer(&self) -> Result<u32, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDInteger.AsUInteger",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.AsULong`.
    pub fn as_u_long(&self) -> Result<u64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDInteger.AsULong")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.Copy`.
    pub fn copy(&self) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDInteger.Copy")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDInteger.ToString`.
    pub fn to_string(&self) -> String {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSDInteger.ToString"
        )
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDInteger.Type`.
    pub fn type_(&self) -> libremetaverse_structured_data::OSDType {
        libremetaverse_types::unimplemented_api!("P:LibreMetaverse.StructuredData.OSDInteger.Type")
    }
}

/// C# type: `T:LibreMetaverse.StructuredData.OSDLlsdXml`.
pub struct OSDLlsdXml {
    /// C# member: `F:LibreMetaverse.StructuredData.OSDLlsdXml.value`.
    pub value: String,
}
impl OSDLlsdXml {
    /// C# member: `M:LibreMetaverse.StructuredData.OSDLlsdXml.#ctor(System.String)`.
    pub fn new(value: String) -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDLlsdXml.#ctor(System.String)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDLlsdXml.AsBinary`.
    pub fn as_binary(&self) -> Result<Vec<u8>, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDLlsdXml.AsBinary")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDLlsdXml.AsString`.
    pub fn as_string(&self) -> Result<String, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDLlsdXml.AsString")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDLlsdXml.Copy`.
    pub fn copy(&self) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDLlsdXml.Copy")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDLlsdXml.ToString`.
    pub fn to_string(&self) -> String {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSDLlsdXml.ToString"
        )
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDLlsdXml.Type`.
    pub fn type_(&self) -> libremetaverse_structured_data::OSDType {
        libremetaverse_types::unimplemented_api!("P:LibreMetaverse.StructuredData.OSDLlsdXml.Type")
    }
}

/// C# type: `T:LibreMetaverse.StructuredData.OSDMap`.
pub struct OSDMap {
    values: std::collections::HashMap<String, OSD>,
}
impl OSDMap {
    /// C# member: `M:LibreMetaverse.StructuredData.OSDMap.#ctor`.
    pub fn new_with_constructor() -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDMap.#ctor")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDMap.#ctor(System.Collections.Generic.Dictionary{System.String,LibreMetaverse.StructuredData.OSD})`.
    pub fn new_with_dictionary(
        value: std::collections::HashMap<String, libremetaverse_structured_data::OSD>,
    ) -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDMap.#ctor(System.Collections.Generic.Dictionary{System.String,LibreMetaverse.StructuredData.OSD})",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDMap.#ctor(System.Int32)`.
    pub fn new_with_int32(capacity: i32) -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDMap.#ctor(System.Int32)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDMap.Add(System.Collections.Generic.KeyValuePair{System.String,LibreMetaverse.StructuredData.OSD})`.
    pub fn add_with_key_value_pair(
        &self,
        kvp: (String, libremetaverse_structured_data::OSD),
    ) -> Result<(), crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDMap.Add(System.Collections.Generic.KeyValuePair{System.String,LibreMetaverse.StructuredData.OSD})",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDMap.Add(System.String,LibreMetaverse.StructuredData.OSD)`.
    pub fn add_with_string_osd(
        &self,
        key: String,
        llsd: libremetaverse_structured_data::OSD,
    ) -> Result<(), crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDMap.Add(System.String,LibreMetaverse.StructuredData.OSD)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDMap.AsBoolean`.
    pub fn as_boolean(&self) -> Result<bool, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDMap.AsBoolean")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDMap.Clear`.
    pub fn clear(&self) -> Result<(), crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDMap.Clear")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDMap.Contains(System.Collections.Generic.KeyValuePair{System.String,LibreMetaverse.StructuredData.OSD})`.
    pub fn contains(
        &self,
        kvp: (String, libremetaverse_structured_data::OSD),
    ) -> Result<bool, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDMap.Contains(System.Collections.Generic.KeyValuePair{System.String,LibreMetaverse.StructuredData.OSD})",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDMap.ContainsKey(System.String)`.
    pub fn contains_key(&self, key: String) -> Result<bool, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDMap.ContainsKey(System.String)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDMap.Copy`.
    pub fn copy(&self) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDMap.Copy")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDMap.CopyTo(System.Collections.Generic.KeyValuePair{System.String,LibreMetaverse.StructuredData.OSD}[],System.Int32)`.
    pub fn copy_to(
        &self,
        array: Vec<(String, libremetaverse_structured_data::OSD)>,
        index: i32,
    ) -> Result<(), crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDMap.CopyTo(System.Collections.Generic.KeyValuePair{System.String,LibreMetaverse.StructuredData.OSD}[],System.Int32)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDMap.GetEnumerator`.
    pub fn get_enumerator(
        &self,
    ) -> Result<libremetaverse_types::compat::IDictionaryEnumerator, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDMap.GetEnumerator",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDMap.Remove(System.Collections.Generic.KeyValuePair{System.String,LibreMetaverse.StructuredData.OSD})`.
    pub fn remove_with_key_value_pair(
        &self,
        kvp: (String, libremetaverse_structured_data::OSD),
    ) -> Result<bool, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDMap.Remove(System.Collections.Generic.KeyValuePair{System.String,LibreMetaverse.StructuredData.OSD})",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDMap.Remove(System.String)`.
    pub fn remove_with_string(&self, key: String) -> Result<bool, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDMap.Remove(System.String)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDMap.ToHashtable`.
    pub fn to_hashtable(&self) -> Result<libremetaverse_types::compat::Hashtable, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDMap.ToHashtable")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDMap.ToString`.
    pub fn to_string(&self) -> String {
        libremetaverse_types::unimplemented_api!("M:LibreMetaverse.StructuredData.OSDMap.ToString")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDMap.TryGetValue(System.String,LibreMetaverse.StructuredData.OSD@)`.
    pub fn try_get_value(
        &self,
        key: String,
        llsd: &mut libremetaverse_structured_data::OSD,
    ) -> bool {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSDMap.TryGetValue(System.String,LibreMetaverse.StructuredData.OSD@)"
        )
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDMap.Count`.
    pub fn count(&self) -> i32 {
        libremetaverse_types::unimplemented_api!("P:LibreMetaverse.StructuredData.OSDMap.Count")
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDMap.IsReadOnly`.
    pub fn is_read_only(&self) -> bool {
        libremetaverse_types::unimplemented_api!(
            "P:LibreMetaverse.StructuredData.OSDMap.IsReadOnly"
        )
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDMap.Item(System.String)`.
    pub fn item(&self, key: String) -> libremetaverse_structured_data::OSD {
        libremetaverse_types::unimplemented_api!(
            "P:LibreMetaverse.StructuredData.OSDMap.Item(System.String)"
        )
    }
    /// Setter for C# member: `P:LibreMetaverse.StructuredData.OSDMap.Item(System.String)`.
    pub fn set_item(&mut self, key: String, value: libremetaverse_structured_data::OSD) {
        libremetaverse_types::unimplemented_api!(
            "P:LibreMetaverse.StructuredData.OSDMap.Item(System.String)"
        )
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDMap.Keys`.
    pub fn keys(&self) -> Vec<String> {
        libremetaverse_types::unimplemented_api!("P:LibreMetaverse.StructuredData.OSDMap.Keys")
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDMap.Type`.
    pub fn type_(&self) -> libremetaverse_structured_data::OSDType {
        libremetaverse_types::unimplemented_api!("P:LibreMetaverse.StructuredData.OSDMap.Type")
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDMap.Values`.
    pub fn values(&self) -> Vec<libremetaverse_structured_data::OSD> {
        libremetaverse_types::unimplemented_api!("P:LibreMetaverse.StructuredData.OSDMap.Values")
    }
}

/// C# type: `T:LibreMetaverse.StructuredData.OSDParser`.
pub struct OSDParser;
impl OSDParser {
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.BufferCharactersEqual(System.IO.StringReader,System.Char[],System.Int32)`.
    pub fn buffer_characters_equal(
        reader: libremetaverse_types::compat::StringReader,
        buffer: Vec<libremetaverse_types::compat::Utf16CodeUnit>,
        offset: i32,
    ) -> Result<i32, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.BufferCharactersEqual(System.IO.StringReader,System.Char[],System.Int32)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.ConsumeBytes(System.IO.Stream,System.Int32)`.
    pub fn consume_bytes(
        stream: Box<dyn libremetaverse_types::compat::ReadWrite + Send>,
        consume_bytes: i32,
    ) -> Result<Vec<u8>, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.ConsumeBytes(System.IO.Stream,System.Int32)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.Deserialize(System.Byte[])`.
    pub fn deserialize_with_bytes(
        data: Vec<u8>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.Deserialize(System.Byte[])",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.Deserialize(System.IO.Stream)`.
    pub fn deserialize_with_stream(
        stream: Box<dyn libremetaverse_types::compat::ReadWrite + Send>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.Deserialize(System.IO.Stream)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.Deserialize(System.String)`.
    pub fn deserialize_with_string(
        data: String,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.Deserialize(System.String)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeJson(System.IO.Stream)`.
    pub fn deserialize_json_with_stream(
        json: Box<dyn libremetaverse_types::compat::ReadWrite + Send>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.DeserializeJson(System.IO.Stream)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeJson(System.String)`.
    pub fn deserialize_json_with_string(
        json: String,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.DeserializeJson(System.String)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDBinary(System.Byte[])`.
    pub fn deserialize_llsd_binary_with_bytes(
        binary_data: Vec<u8>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDBinary(System.Byte[])",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDBinary(System.IO.Stream)`.
    pub fn deserialize_llsd_binary_with_stream(
        stream: Box<dyn libremetaverse_types::compat::ReadWrite + Send>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDBinary(System.IO.Stream)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDNotation(System.IO.StringReader)`.
    pub fn deserialize_llsd_notation_with_string_reader(
        reader: libremetaverse_types::compat::StringReader,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDNotation(System.IO.StringReader)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDNotation(System.String)`.
    pub fn deserialize_llsd_notation_with_string(
        notation_data: String,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDNotation(System.String)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDProtobuf(System.Byte[])`.
    pub fn deserialize_llsd_protobuf_with_bytes(
        data: Vec<u8>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDProtobuf(System.Byte[])",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDProtobuf(System.IO.Stream)`.
    pub fn deserialize_llsd_protobuf_with_stream(
        stream: Box<dyn libremetaverse_types::compat::ReadWrite + Send>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDProtobuf(System.IO.Stream)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDXml(System.Byte[])`.
    pub fn deserialize_llsd_xml_with_bytes(
        xml_data: Vec<u8>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDXml(System.Byte[])",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDXml(System.IO.Stream)`.
    pub fn deserialize_llsd_xml_with_stream(
        xml_stream: Box<dyn libremetaverse_types::compat::ReadWrite + Send>,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDXml(System.IO.Stream)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDXml(System.String)`.
    pub fn deserialize_llsd_xml_with_string(
        xml_data: String,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDXml(System.String)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDXml(System.Xml.XmlReader)`.
    pub fn deserialize_llsd_xml_with_xml_reader(
        xml_data: libremetaverse_structured_data::xml::Reader,
    ) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.DeserializeLLSDXml(System.Xml.XmlReader)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.EscapeCharacter(System.String,System.Char)`.
    pub fn escape_character(
        s: String,
        c: libremetaverse_types::compat::Utf16CodeUnit,
    ) -> Result<String, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.EscapeCharacter(System.String,System.Char)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.FindByte(System.IO.Stream,System.Byte)`.
    pub fn find_byte(
        stream: Box<dyn libremetaverse_types::compat::ReadWrite + Send>,
        to_find: u8,
    ) -> Result<bool, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.FindByte(System.IO.Stream,System.Byte)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.FindString(System.IO.Stream,System.String)`.
    pub fn find_string(
        stream: Box<dyn libremetaverse_types::compat::ReadWrite + Send>,
        to_find: String,
    ) -> Result<bool, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.FindString(System.IO.Stream,System.String)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.GetLengthInBrackets(System.IO.StringReader)`.
    pub fn get_length_in_brackets(
        reader: libremetaverse_types::compat::StringReader,
    ) -> Result<i32, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.GetLengthInBrackets(System.IO.StringReader)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.GetStringDelimitedBy(System.IO.StringReader,System.Char)`.
    pub fn get_string_delimited_by(
        reader: libremetaverse_types::compat::StringReader,
        delimiter: libremetaverse_types::compat::Utf16CodeUnit,
    ) -> Result<String, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.GetStringDelimitedBy(System.IO.StringReader,System.Char)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.HostToNetworkIntBytes(System.Int32)`.
    pub fn host_to_network_int_bytes(int_host_end: i32) -> Result<Vec<u8>, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.HostToNetworkIntBytes(System.Int32)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.NetworkToHostDouble(System.Byte[])`.
    pub fn network_to_host_double(binary_net_end: Vec<u8>) -> Result<f64, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.NetworkToHostDouble(System.Byte[])",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.NetworkToHostInt(System.Byte[])`.
    pub fn network_to_host_int(binary_net_end: Vec<u8>) -> Result<i32, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.NetworkToHostInt(System.Byte[])",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.PeekAndSkipWhitespace(System.IO.StringReader)`.
    pub fn peek_and_skip_whitespace(
        reader: libremetaverse_types::compat::StringReader,
    ) -> Result<i32, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.PeekAndSkipWhitespace(System.IO.StringReader)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.ReadAndSkipWhitespace(System.IO.StringReader)`.
    pub fn read_and_skip_whitespace(
        reader: libremetaverse_types::compat::StringReader,
    ) -> Result<i32, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.ReadAndSkipWhitespace(System.IO.StringReader)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeJsonString(LibreMetaverse.StructuredData.OSD,System.Boolean)`.
    pub fn serialize_json_string(
        osd: libremetaverse_structured_data::OSD,
        preserve_defaults: Option<bool>,
    ) -> Result<String, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.SerializeJsonString(LibreMetaverse.StructuredData.OSD,System.Boolean)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDBinary(LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_binary_with_osd(
        osd: libremetaverse_structured_data::OSD,
    ) -> Result<Vec<u8>, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDBinary(LibreMetaverse.StructuredData.OSD)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDBinary(LibreMetaverse.StructuredData.OSD,System.Boolean)`.
    pub fn serialize_llsd_binary_with_osd_boolean(
        osd: libremetaverse_structured_data::OSD,
        prepend_header: bool,
    ) -> Result<Vec<u8>, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDBinary(LibreMetaverse.StructuredData.OSD,System.Boolean)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDBinaryStream(LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_binary_stream_with_osd(
        data: libremetaverse_structured_data::OSD,
    ) -> Result<std::io::Cursor<Vec<u8>>, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDBinaryStream(LibreMetaverse.StructuredData.OSD)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDBinaryStream(LibreMetaverse.StructuredData.OSD,System.Boolean)`.
    pub fn serialize_llsd_binary_stream_with_osd_boolean(
        data: libremetaverse_structured_data::OSD,
        prepend_header: bool,
    ) -> Result<std::io::Cursor<Vec<u8>>, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDBinaryStream(LibreMetaverse.StructuredData.OSD,System.Boolean)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDInnerXmlString(LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_inner_xml_string(
        data: libremetaverse_structured_data::OSD,
    ) -> Result<String, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDInnerXmlString(LibreMetaverse.StructuredData.OSD)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDNotation(LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_notation(
        osd: libremetaverse_structured_data::OSD,
    ) -> Result<String, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDNotation(LibreMetaverse.StructuredData.OSD)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDNotationFormatted(LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_notation_formatted(
        osd: libremetaverse_structured_data::OSD,
    ) -> Result<String, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDNotationFormatted(LibreMetaverse.StructuredData.OSD)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDNotationStream(LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_notation_stream(
        osd: libremetaverse_structured_data::OSD,
    ) -> Result<libremetaverse_types::compat::StringWriter, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDNotationStream(LibreMetaverse.StructuredData.OSD)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDNotationStreamFormatted(LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_notation_stream_formatted(
        osd: libremetaverse_structured_data::OSD,
    ) -> Result<libremetaverse_types::compat::StringWriter, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDNotationStreamFormatted(LibreMetaverse.StructuredData.OSD)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDProtobuf(LibreMetaverse.StructuredData.OSD,System.Boolean)`.
    pub fn serialize_llsd_protobuf(
        osd: libremetaverse_structured_data::OSD,
        prepend_header: Option<bool>,
    ) -> Result<Vec<u8>, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDProtobuf(LibreMetaverse.StructuredData.OSD,System.Boolean)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDXmlBytes(LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_xml_bytes(
        data: libremetaverse_structured_data::OSD,
    ) -> Result<Vec<u8>, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDXmlBytes(LibreMetaverse.StructuredData.OSD)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDXmlElement(System.Xml.XmlWriter,LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_xml_element(
        writer: libremetaverse_structured_data::xml::Writer,
        data: libremetaverse_structured_data::OSD,
    ) -> Result<(), crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDXmlElement(System.Xml.XmlWriter,LibreMetaverse.StructuredData.OSD)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDXmlString(LibreMetaverse.StructuredData.OSD)`.
    pub fn serialize_llsd_xml_string(
        data: libremetaverse_structured_data::OSD,
    ) -> Result<String, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.SerializeLLSDXmlString(LibreMetaverse.StructuredData.OSD)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.SkipWhiteSpace(System.IO.Stream)`.
    pub fn skip_white_space(
        stream: Box<dyn libremetaverse_types::compat::ReadWrite + Send>,
    ) -> Result<(), crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.SkipWhiteSpace(System.IO.Stream)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDParser.UnescapeCharacter(System.String,System.Char)`.
    pub fn unescape_character(
        s: String,
        c: libremetaverse_types::compat::Utf16CodeUnit,
    ) -> Result<String, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDParser.UnescapeCharacter(System.String,System.Char)",
        )
    }
}

/// C# type: `T:LibreMetaverse.StructuredData.OSDReal`.
pub struct OSDReal {
    value: f64,
}
impl OSDReal {
    /// C# member: `M:LibreMetaverse.StructuredData.OSDReal.#ctor(System.Double)`.
    pub fn new(value: f64) -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDReal.#ctor(System.Double)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDReal.AsBinary`.
    pub fn as_binary(&self) -> Result<Vec<u8>, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDReal.AsBinary")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDReal.AsBoolean`.
    pub fn as_boolean(&self) -> Result<bool, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDReal.AsBoolean")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDReal.AsInteger`.
    pub fn as_integer(&self) -> Result<i32, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDReal.AsInteger")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDReal.AsLong`.
    pub fn as_long(&self) -> Result<i64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDReal.AsLong")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDReal.AsReal`.
    pub fn as_real(&self) -> Result<f64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDReal.AsReal")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDReal.AsString`.
    pub fn as_string(&self) -> Result<String, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDReal.AsString")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDReal.AsUInteger`.
    pub fn as_u_integer(&self) -> Result<u32, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDReal.AsUInteger")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDReal.AsULong`.
    pub fn as_u_long(&self) -> Result<u64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDReal.AsULong")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDReal.Copy`.
    pub fn copy(&self) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDReal.Copy")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDReal.ToString`.
    pub fn to_string(&self) -> String {
        libremetaverse_types::unimplemented_api!("M:LibreMetaverse.StructuredData.OSDReal.ToString")
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDReal.Type`.
    pub fn type_(&self) -> libremetaverse_structured_data::OSDType {
        libremetaverse_types::unimplemented_api!("P:LibreMetaverse.StructuredData.OSDReal.Type")
    }
}

/// C# type: `T:LibreMetaverse.StructuredData.OSDString`.
pub struct OSDString {
    value: String,
}
impl OSDString {
    /// C# member: `M:LibreMetaverse.StructuredData.OSDString.#ctor(System.String)`.
    pub fn new(value: String) -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDString.#ctor(System.String)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsBinary`.
    pub fn as_binary(&self) -> Result<Vec<u8>, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDString.AsBinary")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsBoolean`.
    pub fn as_boolean(&self) -> Result<bool, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDString.AsBoolean")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsDate`.
    pub fn as_date(&self) -> Result<std::time::SystemTime, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDString.AsDate")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsInteger`.
    pub fn as_integer(&self) -> Result<i32, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDString.AsInteger")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsLong`.
    pub fn as_long(&self) -> Result<i64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDString.AsLong")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsReal`.
    pub fn as_real(&self) -> Result<f64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDString.AsReal")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsString`.
    pub fn as_string(&self) -> Result<String, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDString.AsString")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsUInteger`.
    pub fn as_u_integer(&self) -> Result<u32, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDString.AsUInteger",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsULong`.
    pub fn as_u_long(&self) -> Result<u64, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDString.AsULong")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsUUID`.
    pub fn as_uuid(&self) -> Result<libremetaverse_types::UUID, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDString.AsUUID")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDString.AsUri`.
    pub fn as_uri(&self) -> Result<Option<libremetaverse_types::compat::Uri>, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDString.AsUri")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDString.Copy`.
    pub fn copy(&self) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDString.Copy")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDString.ToString`.
    pub fn to_string(&self) -> String {
        libremetaverse_types::unimplemented_api!(
            "M:LibreMetaverse.StructuredData.OSDString.ToString"
        )
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDString.Type`.
    pub fn type_(&self) -> libremetaverse_structured_data::OSDType {
        libremetaverse_types::unimplemented_api!("P:LibreMetaverse.StructuredData.OSDString.Type")
    }
}

/// C# type: `T:LibreMetaverse.StructuredData.OSDType`.
#[derive(Clone, Copy, Debug, Eq, Hash, PartialEq)]
#[repr(u8)]
pub enum OSDType {
    /// C# member: `F:LibreMetaverse.StructuredData.OSDType.Array`.
    Array = 10,
    /// C# member: `F:LibreMetaverse.StructuredData.OSDType.Binary`.
    Binary = 8,
    /// C# member: `F:LibreMetaverse.StructuredData.OSDType.Boolean`.
    Boolean = 1,
    /// C# member: `F:LibreMetaverse.StructuredData.OSDType.Date`.
    Date = 6,
    /// C# member: `F:LibreMetaverse.StructuredData.OSDType.Integer`.
    Integer = 2,
    /// C# member: `F:LibreMetaverse.StructuredData.OSDType.LlsdXml`.
    LlsdXml = 11,
    /// C# member: `F:LibreMetaverse.StructuredData.OSDType.Map`.
    Map = 9,
    /// C# member: `F:LibreMetaverse.StructuredData.OSDType.Real`.
    Real = 3,
    /// C# member: `F:LibreMetaverse.StructuredData.OSDType.String`.
    String = 4,
    /// C# member: `F:LibreMetaverse.StructuredData.OSDType.URI`.
    URI = 7,
    /// C# member: `F:LibreMetaverse.StructuredData.OSDType.UUID`.
    UUID = 5,
    /// C# member: `F:LibreMetaverse.StructuredData.OSDType.Unknown`.
    Unknown = 0,
}

/// C# type: `T:LibreMetaverse.StructuredData.OSDUUID`.
pub struct OSDUUID {
    value: libremetaverse_types::UUID,
}
impl OSDUUID {
    /// C# member: `M:LibreMetaverse.StructuredData.OSDUUID.#ctor(LibreMetaverse.UUID)`.
    pub fn new(value: libremetaverse_types::UUID) -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDUUID.#ctor(LibreMetaverse.UUID)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDUUID.AsBinary`.
    pub fn as_binary(&self) -> Result<Vec<u8>, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDUUID.AsBinary")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDUUID.AsBoolean`.
    pub fn as_boolean(&self) -> Result<bool, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDUUID.AsBoolean")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDUUID.AsString`.
    pub fn as_string(&self) -> Result<String, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDUUID.AsString")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDUUID.AsUUID`.
    pub fn as_uuid(&self) -> Result<libremetaverse_types::UUID, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDUUID.AsUUID")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDUUID.Copy`.
    pub fn copy(&self) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDUUID.Copy")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDUUID.ToString`.
    pub fn to_string(&self) -> String {
        libremetaverse_types::unimplemented_api!("M:LibreMetaverse.StructuredData.OSDUUID.ToString")
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDUUID.Type`.
    pub fn type_(&self) -> libremetaverse_structured_data::OSDType {
        libremetaverse_types::unimplemented_api!("P:LibreMetaverse.StructuredData.OSDUUID.Type")
    }
}

/// C# type: `T:LibreMetaverse.StructuredData.OSDUri`.
pub struct OSDUri {
    value: libremetaverse_types::compat::Uri,
}
impl OSDUri {
    /// C# member: `M:LibreMetaverse.StructuredData.OSDUri.#ctor(System.Uri)`.
    pub fn new(uri: libremetaverse_types::compat::Uri) -> Result<Self, crate::Error> {
        libremetaverse_types::not_implemented(
            "M:LibreMetaverse.StructuredData.OSDUri.#ctor(System.Uri)",
        )
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDUri.AsBinary`.
    pub fn as_binary(&self) -> Result<Vec<u8>, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDUri.AsBinary")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDUri.AsString`.
    pub fn as_string(&self) -> Result<String, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDUri.AsString")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDUri.AsUri`.
    pub fn as_uri(&self) -> Result<libremetaverse_types::compat::Uri, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDUri.AsUri")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDUri.Copy`.
    pub fn copy(&self) -> Result<libremetaverse_structured_data::OSD, crate::Error> {
        libremetaverse_types::not_implemented("M:LibreMetaverse.StructuredData.OSDUri.Copy")
    }
    /// C# member: `M:LibreMetaverse.StructuredData.OSDUri.ToString`.
    pub fn to_string(&self) -> String {
        libremetaverse_types::unimplemented_api!("M:LibreMetaverse.StructuredData.OSDUri.ToString")
    }
    /// C# member: `P:LibreMetaverse.StructuredData.OSDUri.Type`.
    pub fn type_(&self) -> libremetaverse_structured_data::OSDType {
        libremetaverse_types::unimplemented_api!("P:LibreMetaverse.StructuredData.OSDUri.Type")
    }
}
