package com.blaze.rtnblazesdk.utils import com.facebook.react.bridge.ReadableMap import com.facebook.react.bridge.ReadableType fun ReadableMap.getBooleanOrNull(key: String): Boolean? { return if (hasKey(key) && getType(key) == ReadableType.Boolean) { getBoolean(key) } else null } fun ReadableMap.getIntOrNull(key: String): Int? { return if (hasKey(key) && getType(key) == ReadableType.Number) { getInt(key) } else null } fun ReadableMap.getDoubleOrNull(key: String): Double? { return if (hasKey(key) && getType(key) == ReadableType.Number) { getDouble(key) } else null } fun HashMap.safeInt(key: String): Int? { return (this[key] as? Number)?.toInt() } fun HashMap.safeFloat(key: String): Float? { return (this[key] as? Number)?.toFloat() }