-keep class com.microsoft.clarity.** {*;}

# To prevent the reflection used by the protobuf Lite runtime from failing due to obfuscation
# https://github.com/protocolbuffers/protobuf/blob/main/java/lite.md
-keep class * extends com.google.protobuf.GeneratedMessageLite {*;}

-keep class androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate {
    boolean isPlaced;
}

-keep class androidx.compose.ui.node.MeasurePassDelegate {
    boolean isPlaced;
}

-keep class androidx.compose.ui.node.LayoutNode {
    void draw$ui_release(androidx.compose.ui.graphics.Canvas);
    void draw$ui_release(androidx.compose.ui.graphics.Canvas, ...);
    void invalidateLayer$ui_release();
    androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate getMeasurePassDelegate$ui_release();
    androidx.compose.ui.node.MeasurePassDelegate getMeasurePassDelegate$ui_release();
}

-keep class androidx.compose.ui.platform.AndroidComposeView {
    androidx.compose.ui.semantics.SemanticsOwner semanticsOwner;
    androidx.compose.ui.node.LayoutNode root;
    ** dirtyLayers;
}

-keep class androidx.compose.ui.node.OwnedLayer {
    void invalidate();
}

-keep class androidx.compose.ui.semantics.SemanticsNode {
    boolean isTransparent$ui_release();
}
