# Proguard rules that are applied to all library modules

##---------------Begin: proguard configuration for Gson  ----------
# For using GSON annotations
-keepattributes *Annotation*

# Prevent proguard from stripping interface information from TypeAdapter, TypeAdapterFactory,
# JsonSerializer, JsonDeserializer instances (so they can be used in @JsonAdapter)
-keep class * extends com.google.gson.TypeAdapter
-keep class * implements com.google.gson.TypeAdapterFactory
-keep class * implements com.google.gson.JsonSerializer
-keep class * implements com.google.gson.JsonDeserializer

-keepclassmembers,allowobfuscation class * {
  @com.google.gson.annotations.SerializedName <fields>;
}

# This file to be embedded with AAR for the ProGuard rules to be applied for this library

# For using GSON annotations
-keep,allowoptimization enum com.checkout.eventlogger.data.model.* {
    public <fields>;
    public static **[] values();
    public static ** valueOf(java.lang.String);
}

