import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
import type { Message } from "@bufbuild/protobuf";
/**
 * Describes the file protos/perfetto/config/android/network_trace_config.proto.
 */
export declare const file_protos_perfetto_config_android_network_trace_config: GenFile;
/**
 * Network tracing data source that records details on all packets sent or
 * received by the network.
 *
 * @generated from message perfetto.protos.NetworkPacketTraceConfig
 */
export type NetworkPacketTraceConfig = Message<"perfetto.protos.NetworkPacketTraceConfig"> & {
    /**
     * Polling frequency in milliseconds. Network tracing writes to a fixed size
     * ring buffer. The polling interval should be such that the ring buffer is
     * unlikely to fill in that interval (or that filling is an acceptable risk).
     * The minimum polling rate is 100ms (values below this are ignored).
     * Introduced in Android 14 (U).
     *
     * @generated from field: optional uint32 poll_ms = 1;
     */
    pollMs: number;
    /**
     * The aggregation_threshold is the number of packets at which an event will
     * switch from per-packet details to aggregate details. For example, a value
     * of 50 means that if a particular event (grouped by the unique combinations
     * of metadata fields: {interface, direction, uid, etc}) has fewer than 50
     * packets, the exact timestamp and length are recorded for each packet. If
     * there were 50 or more packets in an event, it would only record the total
     * duration, packets, and length. A value of zero or unspecified will always
     * / record per-packet details. A value of 1 always records aggregate details.
     *
     * @generated from field: optional uint32 aggregation_threshold = 2;
     */
    aggregationThreshold: number;
    /**
     * Specifies the maximum number of packet contexts to intern at a time. This
     * prevents the interning table from growing too large and controls whether
     * interning is enabled or disabled (a value of zero disables interning and
     * is the default). When a data sources interning table reaches this amount,
     * packet contexts will be inlined into NetworkPacketEvents.
     *
     * @generated from field: optional uint32 intern_limit = 3;
     */
    internLimit: number;
    /**
     * The following fields specify whether certain fields should be dropped from
     * the output. Dropping fields improves normalization results, reduces the
     * size of the interning table, and slightly reduces event size.
     *
     * @generated from field: optional bool drop_local_port = 4;
     */
    dropLocalPort: boolean;
    /**
     * @generated from field: optional bool drop_remote_port = 5;
     */
    dropRemotePort: boolean;
    /**
     * @generated from field: optional bool drop_tcp_flags = 6;
     */
    dropTcpFlags: boolean;
};
/**
 * Describes the message perfetto.protos.NetworkPacketTraceConfig.
 * Use `create(NetworkPacketTraceConfigSchema)` to create a new message.
 */
export declare const NetworkPacketTraceConfigSchema: GenMessage<NetworkPacketTraceConfig>;
//# sourceMappingURL=network_trace_config_pb.d.ts.map