import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
import type { Message } from "@bufbuild/protobuf";
/**
 * Describes the file protos/perfetto/metrics/android/android_garbage_collection_stats.proto.
 */
export declare const file_protos_perfetto_metrics_android_android_garbage_collection_stats: GenFile;
/**
 * @generated from message perfetto.protos.AndroidGarbageCollectionStats
 */
export type AndroidGarbageCollectionStats = Message<"perfetto.protos.AndroidGarbageCollectionStats"> & {
    /**
     * The start of the window of time that the stats cover in the trace.
     *
     * @generated from field: optional int64 ts = 1;
     */
    ts: bigint;
    /**
     * The duration of the window of time that the stats cover in the trace.
     *
     * @generated from field: optional int64 dur = 2;
     */
    dur: bigint;
    /**
     * Megabyte-seconds of heap size across the device, used in the calculation
     * of heap_size_mb.
     *
     * @generated from field: optional double heap_size_mbs = 3;
     */
    heapSizeMbs: number;
    /**
     * Total size of heap allocations across the device on average, in MB.
     *
     * @generated from field: optional double heap_size_mb = 4;
     */
    heapSizeMb: number;
    /**
     * Total number of bytes allocated over the course of the trace.
     *
     * @generated from field: optional double heap_allocated_mb = 5;
     */
    heapAllocatedMb: number;
    /**
     * Overall rate of heap allocations in MB per second. This gives a sense of
     * how much allocation activity is going on during the trace.
     *
     * @generated from field: optional double heap_allocation_rate = 6;
     */
    heapAllocationRate: number;
    /**
     * Megabyte-seconds of live heap for processes that had GC events.
     *
     * @generated from field: optional double heap_live_mbs = 7;
     */
    heapLiveMbs: number;
    /**
     * Megabyte-seconds of total heap for processes that had GC events.
     *
     * @generated from field: optional double heap_total_mbs = 8;
     */
    heapTotalMbs: number;
    /**
     * Overall heap utilization. This gives a sense of how aggressive GC is
     * during this trace.
     *
     * @generated from field: optional double heap_utilization = 9;
     */
    heapUtilization: number;
    /**
     * CPU time spent running GC. Used in the calculation of gc_running_rate.
     *
     * @generated from field: optional int64 gc_running_dur = 10;
     */
    gcRunningDur: bigint;
    /**
     * CPU time spent running GC, as a fraction of the duration of the trace.
     * This gives a sense of the battery cost of GC.
     *
     * @generated from field: optional double gc_running_rate = 11;
     */
    gcRunningRate: number;
    /**
     * A measure of how efficient GC is with respect to cpu, independent of how
     * aggressively GC is tuned. Larger values indicate more efficient GC, so
     * larger is better.
     *
     * @generated from field: optional double gc_running_efficiency = 12;
     */
    gcRunningEfficiency: number;
    /**
     * Time GC is running during app startup. Used in the calculation of
     * gc_during_android_startup_rate.
     *
     * @generated from field: optional int64 gc_during_android_startup_dur = 13;
     */
    gcDuringAndroidStartupDur: bigint;
    /**
     * Total startup time in the trace, used to normalize the
     * gc_during_android_startup_rate.
     *
     * @generated from field: optional int64 total_android_startup_dur = 14;
     */
    totalAndroidStartupDur: bigint;
    /**
     * Time GC is running during app startup, as a fraction of startup time in
     * the trace. This gives a sense of how much potential interference there
     * is between GC and application startup.
     *
     * @generated from field: optional double gc_during_android_startup_rate = 15;
     */
    gcDuringAndroidStartupRate: number;
    /**
     * A measure of how efficient GC is with regards to gc during application
     * startup, independent of how aggressively GC is tuned. Larger values
     * indicate more efficient GC, so larger is better.
     *
     * @generated from field: optional double gc_during_android_startup_efficiency = 16;
     */
    gcDuringAndroidStartupEfficiency: number;
};
/**
 * Describes the message perfetto.protos.AndroidGarbageCollectionStats.
 * Use `create(AndroidGarbageCollectionStatsSchema)` to create a new message.
 */
export declare const AndroidGarbageCollectionStatsSchema: GenMessage<AndroidGarbageCollectionStats>;
//# sourceMappingURL=android_garbage_collection_stats_pb.d.ts.map