import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
import type { Message } from "@bufbuild/protobuf";
/**
 * Describes the file protos/perfetto/trace/track_event/thread_descriptor.proto.
 */
export declare const file_protos_perfetto_trace_track_event_thread_descriptor: GenFile;
/**
 * Describes a thread's attributes. Emitted as part of a TrackDescriptor,
 * usually by the thread's trace writer.
 *
 * Next id: 9.
 *
 * @generated from message perfetto.protos.ThreadDescriptor
 */
export type ThreadDescriptor = Message<"perfetto.protos.ThreadDescriptor"> & {
    /**
     * @generated from field: optional int32 pid = 1;
     */
    pid: number;
    /**
     * @generated from field: optional int32 tid = 2;
     */
    tid: number;
    /**
     * @generated from field: optional string thread_name = 5;
     */
    threadName: string;
    /**
     * @generated from field: optional perfetto.protos.ThreadDescriptor.ChromeThreadType chrome_thread_type = 4;
     */
    chromeThreadType: ThreadDescriptor_ChromeThreadType;
    /**
     * Deprecated. Use ClockSnapshot in combination with TracePacket's timestamp
     * and timestamp_clock_id fields instead.
     *
     * @generated from field: optional int64 reference_timestamp_us = 6;
     */
    referenceTimestampUs: bigint;
    /**
     * Absolute reference values. Clock values in subsequent TrackEvents can be
     * encoded accumulatively and relative to these. This reduces their var-int
     * encoding size.
     * TODO(eseckler): Deprecated. Replace these with ClockSnapshot encoding.
     *
     * @generated from field: optional int64 reference_thread_time_us = 7;
     */
    referenceThreadTimeUs: bigint;
    /**
     * @generated from field: optional int64 reference_thread_instruction_count = 8;
     */
    referenceThreadInstructionCount: bigint;
    /**
     * To support old UI. New UI should determine default sorting by thread_type.
     *
     * @generated from field: optional int32 legacy_sort_index = 3;
     */
    legacySortIndex: number;
};
/**
 * Describes the message perfetto.protos.ThreadDescriptor.
 * Use `create(ThreadDescriptorSchema)` to create a new message.
 */
export declare const ThreadDescriptorSchema: GenMessage<ThreadDescriptor>;
/**
 * @generated from enum perfetto.protos.ThreadDescriptor.ChromeThreadType
 */
export declare enum ThreadDescriptor_ChromeThreadType {
    /**
     * @generated from enum value: CHROME_THREAD_UNSPECIFIED = 0;
     */
    CHROME_THREAD_UNSPECIFIED = 0,
    /**
     * @generated from enum value: CHROME_THREAD_MAIN = 1;
     */
    CHROME_THREAD_MAIN = 1,
    /**
     * @generated from enum value: CHROME_THREAD_IO = 2;
     */
    CHROME_THREAD_IO = 2,
    /**
     * Scheduler:
     *
     * @generated from enum value: CHROME_THREAD_POOL_BG_WORKER = 3;
     */
    CHROME_THREAD_POOL_BG_WORKER = 3,
    /**
     * @generated from enum value: CHROME_THREAD_POOL_FG_WORKER = 4;
     */
    CHROME_THREAD_POOL_FG_WORKER = 4,
    /**
     * @generated from enum value: CHROME_THREAD_POOL_FB_BLOCKING = 5;
     */
    CHROME_THREAD_POOL_FB_BLOCKING = 5,
    /**
     * @generated from enum value: CHROME_THREAD_POOL_BG_BLOCKING = 6;
     */
    CHROME_THREAD_POOL_BG_BLOCKING = 6,
    /**
     * @generated from enum value: CHROME_THREAD_POOL_SERVICE = 7;
     */
    CHROME_THREAD_POOL_SERVICE = 7,
    /**
     * Compositor:
     *
     * @generated from enum value: CHROME_THREAD_COMPOSITOR = 8;
     */
    CHROME_THREAD_COMPOSITOR = 8,
    /**
     * @generated from enum value: CHROME_THREAD_VIZ_COMPOSITOR = 9;
     */
    CHROME_THREAD_VIZ_COMPOSITOR = 9,
    /**
     * @generated from enum value: CHROME_THREAD_COMPOSITOR_WORKER = 10;
     */
    CHROME_THREAD_COMPOSITOR_WORKER = 10,
    /**
     * Renderer:
     *
     * @generated from enum value: CHROME_THREAD_SERVICE_WORKER = 11;
     */
    CHROME_THREAD_SERVICE_WORKER = 11,
    /**
     * Tracing related threads:
     *
     * @generated from enum value: CHROME_THREAD_MEMORY_INFRA = 50;
     */
    CHROME_THREAD_MEMORY_INFRA = 50,
    /**
     * @generated from enum value: CHROME_THREAD_SAMPLING_PROFILER = 51;
     */
    CHROME_THREAD_SAMPLING_PROFILER = 51
}
/**
 * Describes the enum perfetto.protos.ThreadDescriptor.ChromeThreadType.
 */
export declare const ThreadDescriptor_ChromeThreadTypeSchema: GenEnum<ThreadDescriptor_ChromeThreadType>;
//# sourceMappingURL=thread_descriptor_pb.d.ts.map