// Signature format: 4.0
package androidx.camera.effects {

  @RequiresApi(21) @com.google.auto.value.AutoValue public abstract class Frame {
    ctor public Frame();
    method public abstract android.graphics.Rect getCropRect();
    method public android.graphics.Canvas getOverlayCanvas();
    method @IntRange(from=0, to=359) public abstract int getRotationDegrees();
    method public abstract android.graphics.Matrix getSensorToBufferTransform();
    method public abstract android.util.Size getSize();
    method public abstract long getTimestampNanos();
    method public abstract boolean isMirroring();
  }

  @RequiresApi(21) public class OverlayEffect extends androidx.camera.core.CameraEffect implements java.lang.AutoCloseable {
    ctor public OverlayEffect(int, int, android.os.Handler, androidx.core.util.Consumer<java.lang.Throwable!>);
    method public void clearOnDrawListener();
    method public void close();
    method public com.google.common.util.concurrent.ListenableFuture<java.lang.Integer!> drawFrameAsync(long);
    method public android.os.Handler getHandler();
    method public int getQueueDepth();
    method public void setOnDrawListener(androidx.arch.core.util.Function<androidx.camera.effects.Frame!,java.lang.Boolean!>);
    field public static final int RESULT_CANCELLED_BY_CALLER = 4; // 0x4
    field public static final int RESULT_FRAME_NOT_FOUND = 2; // 0x2
    field public static final int RESULT_INVALID_SURFACE = 3; // 0x3
    field public static final int RESULT_SUCCESS = 1; // 0x1
  }

}

