// Signature format: 4.0
package androidx.benchmark.junit4 {

  public class AndroidBenchmarkRunner extends androidx.test.runner.AndroidJUnitRunner {
    ctor public AndroidBenchmarkRunner();
  }

  public final class BenchmarkRule implements org.junit.rules.TestRule {
    ctor public BenchmarkRule();
    ctor @SuppressCompatibility @androidx.benchmark.ExperimentalBenchmarkConfigApi public BenchmarkRule(androidx.benchmark.MicrobenchmarkConfig config);
    method public org.junit.runners.model.Statement apply(org.junit.runners.model.Statement base, org.junit.runner.Description description);
    method public androidx.benchmark.BenchmarkState getState();
  }

  public final class BenchmarkRule.Scope {
    method public inline <T> T runWithTimingDisabled(kotlin.jvm.functions.Function0<? extends T> block);
  }

  public final class BenchmarkRuleKt {
    method public static inline void measureRepeated(androidx.benchmark.junit4.BenchmarkRule, kotlin.jvm.functions.Function1<? super androidx.benchmark.junit4.BenchmarkRule.Scope,kotlin.Unit> block);
    method public static inline void measureRepeatedOnMainThread(androidx.benchmark.junit4.BenchmarkRule, kotlin.jvm.functions.Function1<? super androidx.benchmark.junit4.BenchmarkRule.Scope,kotlin.Unit> block);
  }

  @SuppressCompatibility @androidx.benchmark.perfetto.ExperimentalPerfettoCaptureApi public final class PerfettoTraceRule implements org.junit.rules.TestRule {
    ctor public PerfettoTraceRule();
    ctor public PerfettoTraceRule(optional boolean enableAppTagTracing, optional boolean enableUserspaceTracing, optional kotlin.jvm.functions.Function1<? super androidx.benchmark.traceprocessor.PerfettoTrace,kotlin.Unit>? traceCallback);
    method public org.junit.runners.model.Statement apply(org.junit.runners.model.Statement base, org.junit.runner.Description description);
    method public boolean getEnableAppTagTracing();
    method public boolean getEnableUserspaceTracing();
    method public kotlin.jvm.functions.Function1<androidx.benchmark.traceprocessor.PerfettoTrace,kotlin.Unit>? getTraceCallback();
    property public final boolean enableAppTagTracing;
    property public final boolean enableUserspaceTracing;
    property public final kotlin.jvm.functions.Function1<androidx.benchmark.traceprocessor.PerfettoTrace,kotlin.Unit>? traceCallback;
  }

}

