public unsafe GeoJsonSource(string id, string geoJson, global::Com.Mapbox.Mapboxsdk.Style.Sources.GeoJsonOptions options)
            : base(IntPtr.Zero, JniHandleOwnership.DoNotTransfer)
        {
            const string __id = "(Ljava/lang/String;Ljava/lang/String;Lcom/mapbox/mapboxsdk/style/sources/GeoJsonOptions;)V";

            if (((global::Java.Lang.Object) this).Handle != IntPtr.Zero)
            {
                return;
            }

            IntPtr native_id      = JNIEnv.NewString(id);
            IntPtr native_geoJson = JNIEnv.NewString(geoJson);

            try {
                JniArgumentValue *__args = stackalloc JniArgumentValue [3];
                __args [0] = new JniArgumentValue(native_id);
                __args [1] = new JniArgumentValue(native_geoJson);
                __args [2] = new JniArgumentValue((options == null) ? IntPtr.Zero : ((global::Java.Lang.Object)options).Handle);
                var __r = _members.InstanceMethods.StartCreateInstance(__id, ((object)this).GetType(), __args);
                SetHandle(__r.Handle, JniHandleOwnership.TransferLocalRef);
                _members.InstanceMethods.FinishCreateInstance(__id, this, __args);
            } finally {
                JNIEnv.DeleteLocalRef(native_id);
                JNIEnv.DeleteLocalRef(native_geoJson);
            }
        }
        static IntPtr n_WithClusterProperty_Ljava_lang_String_Lcom_mapbox_mapboxsdk_style_expressions_Expression_Lcom_mapbox_mapboxsdk_style_expressions_Expression_(IntPtr jnienv, IntPtr native__this, IntPtr native_propertyName, IntPtr native_operatorExpr, IntPtr native_mapExpr)
        {
            global::Com.Mapbox.Mapboxsdk.Style.Sources.GeoJsonOptions __this = global::Java.Lang.Object.GetObject <global::Com.Mapbox.Mapboxsdk.Style.Sources.GeoJsonOptions> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
            string propertyName = JNIEnv.GetString(native_propertyName, JniHandleOwnership.DoNotTransfer);

            global::Com.Mapbox.Mapboxsdk.Style.Expressions.Expression operatorExpr = global::Java.Lang.Object.GetObject <global::Com.Mapbox.Mapboxsdk.Style.Expressions.Expression> (native_operatorExpr, JniHandleOwnership.DoNotTransfer);
            global::Com.Mapbox.Mapboxsdk.Style.Expressions.Expression mapExpr      = global::Java.Lang.Object.GetObject <global::Com.Mapbox.Mapboxsdk.Style.Expressions.Expression> (native_mapExpr, JniHandleOwnership.DoNotTransfer);
            IntPtr __ret = JNIEnv.ToLocalJniHandle(__this.WithClusterProperty(propertyName, operatorExpr, mapExpr));

            return(__ret);
        }
 static IntPtr n_WithCluster_Z(IntPtr jnienv, IntPtr native__this, bool cluster)
 {
     global::Com.Mapbox.Mapboxsdk.Style.Sources.GeoJsonOptions __this = global::Java.Lang.Object.GetObject <global::Com.Mapbox.Mapboxsdk.Style.Sources.GeoJsonOptions> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     return(JNIEnv.ToLocalJniHandle(__this.WithCluster(cluster)));
 }
 static IntPtr n_WithTolerance_F(IntPtr jnienv, IntPtr native__this, float tolerance)
 {
     global::Com.Mapbox.Mapboxsdk.Style.Sources.GeoJsonOptions __this = global::Java.Lang.Object.GetObject <global::Com.Mapbox.Mapboxsdk.Style.Sources.GeoJsonOptions> (jnienv, native__this, JniHandleOwnership.DoNotTransfer);
     return(JNIEnv.ToLocalJniHandle(__this.WithTolerance(tolerance)));
 }