import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
import type { Message } from "@bufbuild/protobuf";
/**
 * Describes the file protos/perfetto/common/observable_events.proto.
 */
export declare const file_protos_perfetto_common_observable_events: GenFile;
/**
 * @generated from message perfetto.protos.ObservableEvents
 */
export type ObservableEvents = Message<"perfetto.protos.ObservableEvents"> & {
    /**
     * @generated from field: repeated perfetto.protos.ObservableEvents.DataSourceInstanceStateChange instance_state_changes = 1;
     */
    instanceStateChanges: ObservableEvents_DataSourceInstanceStateChange[];
    /**
     * @generated from field: optional bool all_data_sources_started = 2;
     */
    allDataSourcesStarted: boolean;
    /**
     * @generated from field: optional perfetto.protos.ObservableEvents.CloneTriggerHit clone_trigger_hit = 3;
     */
    cloneTriggerHit?: ObservableEvents_CloneTriggerHit;
};
/**
 * Describes the message perfetto.protos.ObservableEvents.
 * Use `create(ObservableEventsSchema)` to create a new message.
 */
export declare const ObservableEventsSchema: GenMessage<ObservableEvents>;
/**
 * @generated from message perfetto.protos.ObservableEvents.DataSourceInstanceStateChange
 */
export type ObservableEvents_DataSourceInstanceStateChange = Message<"perfetto.protos.ObservableEvents.DataSourceInstanceStateChange"> & {
    /**
     * @generated from field: optional string producer_name = 1;
     */
    producerName: string;
    /**
     * @generated from field: optional string data_source_name = 2;
     */
    dataSourceName: string;
    /**
     * @generated from field: optional perfetto.protos.ObservableEvents.DataSourceInstanceState state = 3;
     */
    state: ObservableEvents_DataSourceInstanceState;
};
/**
 * Describes the message perfetto.protos.ObservableEvents.DataSourceInstanceStateChange.
 * Use `create(ObservableEvents_DataSourceInstanceStateChangeSchema)` to create a new message.
 */
export declare const ObservableEvents_DataSourceInstanceStateChangeSchema: GenMessage<ObservableEvents_DataSourceInstanceStateChange>;
/**
 * @generated from message perfetto.protos.ObservableEvents.CloneTriggerHit
 */
export type ObservableEvents_CloneTriggerHit = Message<"perfetto.protos.ObservableEvents.CloneTriggerHit"> & {
    /**
     * The TracingSessionID of the original tracing session which had a
     * CLONE_SNAPSHOT trigger defined. This is necessary just because the
     * consumer has no idea of what is the TSID of its own tracing session and
     * there is no other good way to plumb it.
     *
     * @generated from field: optional int64 tracing_session_id = 1;
     */
    tracingSessionId: bigint;
    /**
     * The name of the CLONE_SNAPSHOT trigger which was hit.
     *
     * @generated from field: optional string trigger_name = 2;
     */
    triggerName: string;
    /**
     * The name of the producer that sent the CLONE_SNAPSHOT trigger.
     *
     * @generated from field: optional string producer_name = 3;
     */
    producerName: string;
    /**
     * The uid of the producer that sent the CLONE_SNAPSHOT trigger.
     *
     * @generated from field: optional uint32 producer_uid = 4;
     */
    producerUid: number;
    /**
     * The timestamp of the CLONE_SNAPSHOT trigger which was hit.
     *
     * @generated from field: optional uint64 boot_time_ns = 5;
     */
    bootTimeNs: bigint;
};
/**
 * Describes the message perfetto.protos.ObservableEvents.CloneTriggerHit.
 * Use `create(ObservableEvents_CloneTriggerHitSchema)` to create a new message.
 */
export declare const ObservableEvents_CloneTriggerHitSchema: GenMessage<ObservableEvents_CloneTriggerHit>;
/**
 * @generated from enum perfetto.protos.ObservableEvents.Type
 */
export declare enum ObservableEvents_Type {
    /**
     * @generated from enum value: TYPE_UNSPECIFIED = 0;
     */
    UNSPECIFIED = 0,
    /**
     * State changes of data source instances associated with the consumer's
     * session. Note that not all data sources may support these notifications.
     * See |will_notify_on_start/stop| in DataSourceDescriptor.
     *
     * @generated from enum value: TYPE_DATA_SOURCES_INSTANCES = 1;
     */
    DATA_SOURCES_INSTANCES = 1,
    /**
     * State change triggered when all data sources are in the STARTED state.
     * For data sources that registered with |will_notify_on_start| this happens
     * only after the data source has acked the start. This allows the consumer
     * to synchronize with the data sources and to perform actions (e.g. start a
     * test binary) only after trace recording is actually started.
     * Introduced in Android 11 (R).
     *
     * @generated from enum value: TYPE_ALL_DATA_SOURCES_STARTED = 2;
     */
    ALL_DATA_SOURCES_STARTED = 2,
    /**
     * When a tracing session has one or more triggers of type CLONE_SNAPSHOT
     * and a matching trigger is hit, the service will send this notification to
     * the consumer after |stop_delay_ms|.
     *
     * @generated from enum value: TYPE_CLONE_TRIGGER_HIT = 4;
     */
    CLONE_TRIGGER_HIT = 4
}
/**
 * Describes the enum perfetto.protos.ObservableEvents.Type.
 */
export declare const ObservableEvents_TypeSchema: GenEnum<ObservableEvents_Type>;
/**
 * @generated from enum perfetto.protos.ObservableEvents.DataSourceInstanceState
 */
export declare enum ObservableEvents_DataSourceInstanceState {
    /**
     * A data source is created in stopped state.
     *
     * @generated from enum value: DATA_SOURCE_INSTANCE_STATE_STOPPED = 1;
     */
    STOPPED = 1,
    /**
     * @generated from enum value: DATA_SOURCE_INSTANCE_STATE_STARTED = 2;
     */
    STARTED = 2
}
/**
 * Describes the enum perfetto.protos.ObservableEvents.DataSourceInstanceState.
 */
export declare const ObservableEvents_DataSourceInstanceStateSchema: GenEnum<ObservableEvents_DataSourceInstanceState>;
//# sourceMappingURL=observable_events_pb.d.ts.map