@Nullable open fun getProperty(key: String): String
@Nullable open fun <T : Any> getProperty(key: String, targetValueType: Class<T>): T