# @generated by generate_proto_mypy_stubs.py.  Do not edit!
import sys
from google.protobuf.descriptor import (
    Descriptor as google___protobuf___descriptor___Descriptor,
    EnumDescriptor as google___protobuf___descriptor___EnumDescriptor,
    FileDescriptor as google___protobuf___descriptor___FileDescriptor,
)

from google.protobuf.internal.containers import (
    RepeatedCompositeFieldContainer as google___protobuf___internal___containers___RepeatedCompositeFieldContainer,
    RepeatedScalarFieldContainer as google___protobuf___internal___containers___RepeatedScalarFieldContainer,
)

from google.protobuf.internal.enum_type_wrapper import (
    _EnumTypeWrapper as google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper,
)

from google.protobuf.message import (
    Message as google___protobuf___message___Message,
)

from google.protobuf.timestamp_pb2 import (
    Timestamp as google___protobuf___timestamp_pb2___Timestamp,
)

from typing import (
    Iterable as typing___Iterable,
    NewType as typing___NewType,
    Optional as typing___Optional,
    Text as typing___Text,
    cast as typing___cast,
)

from typing_extensions import (
    Literal as typing_extensions___Literal,
)

from wandb.proto.wandb_telemetry_pb2 import (
    TelemetryRecord as wandb___proto___wandb_telemetry_pb2___TelemetryRecord,
)


builtin___bool = bool
builtin___bytes = bytes
builtin___float = float
builtin___int = int


DESCRIPTOR: google___protobuf___descriptor___FileDescriptor = ...

class Record(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    num: builtin___int = ...
    uuid: typing___Text = ...

    @property
    def history(self) -> type___HistoryRecord: ...

    @property
    def summary(self) -> type___SummaryRecord: ...

    @property
    def output(self) -> type___OutputRecord: ...

    @property
    def config(self) -> type___ConfigRecord: ...

    @property
    def files(self) -> type___FilesRecord: ...

    @property
    def stats(self) -> type___StatsRecord: ...

    @property
    def artifact(self) -> type___ArtifactRecord: ...

    @property
    def tbrecord(self) -> type___TBRecord: ...

    @property
    def alert(self) -> type___AlertRecord: ...

    @property
    def telemetry(self) -> wandb___proto___wandb_telemetry_pb2___TelemetryRecord: ...

    @property
    def metric(self) -> type___MetricRecord: ...

    @property
    def run(self) -> type___RunRecord: ...

    @property
    def exit(self) -> type___RunExitRecord: ...

    @property
    def final(self) -> type___FinalRecord: ...

    @property
    def header(self) -> type___HeaderRecord: ...

    @property
    def footer(self) -> type___FooterRecord: ...

    @property
    def preempting(self) -> type___RunPreemptingRecord: ...

    @property
    def request(self) -> type___Request: ...

    @property
    def control(self) -> type___Control: ...

    def __init__(self,
        *,
        num : typing___Optional[builtin___int] = None,
        history : typing___Optional[type___HistoryRecord] = None,
        summary : typing___Optional[type___SummaryRecord] = None,
        output : typing___Optional[type___OutputRecord] = None,
        config : typing___Optional[type___ConfigRecord] = None,
        files : typing___Optional[type___FilesRecord] = None,
        stats : typing___Optional[type___StatsRecord] = None,
        artifact : typing___Optional[type___ArtifactRecord] = None,
        tbrecord : typing___Optional[type___TBRecord] = None,
        alert : typing___Optional[type___AlertRecord] = None,
        telemetry : typing___Optional[wandb___proto___wandb_telemetry_pb2___TelemetryRecord] = None,
        metric : typing___Optional[type___MetricRecord] = None,
        run : typing___Optional[type___RunRecord] = None,
        exit : typing___Optional[type___RunExitRecord] = None,
        final : typing___Optional[type___FinalRecord] = None,
        header : typing___Optional[type___HeaderRecord] = None,
        footer : typing___Optional[type___FooterRecord] = None,
        preempting : typing___Optional[type___RunPreemptingRecord] = None,
        request : typing___Optional[type___Request] = None,
        control : typing___Optional[type___Control] = None,
        uuid : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"alert",b"alert",u"artifact",b"artifact",u"config",b"config",u"control",b"control",u"exit",b"exit",u"files",b"files",u"final",b"final",u"footer",b"footer",u"header",b"header",u"history",b"history",u"metric",b"metric",u"output",b"output",u"preempting",b"preempting",u"record_type",b"record_type",u"request",b"request",u"run",b"run",u"stats",b"stats",u"summary",b"summary",u"tbrecord",b"tbrecord",u"telemetry",b"telemetry"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"alert",b"alert",u"artifact",b"artifact",u"config",b"config",u"control",b"control",u"exit",b"exit",u"files",b"files",u"final",b"final",u"footer",b"footer",u"header",b"header",u"history",b"history",u"metric",b"metric",u"num",b"num",u"output",b"output",u"preempting",b"preempting",u"record_type",b"record_type",u"request",b"request",u"run",b"run",u"stats",b"stats",u"summary",b"summary",u"tbrecord",b"tbrecord",u"telemetry",b"telemetry",u"uuid",b"uuid"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions___Literal[u"record_type",b"record_type"]) -> typing_extensions___Literal["history","summary","output","config","files","stats","artifact","tbrecord","alert","telemetry","metric","run","exit","final","header","footer","preempting","request"]: ...
type___Record = Record

class Control(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    req_resp: builtin___bool = ...
    local: builtin___bool = ...

    def __init__(self,
        *,
        req_resp : typing___Optional[builtin___bool] = None,
        local : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"local",b"local",u"req_resp",b"req_resp"]) -> None: ...
type___Control = Control

class Result(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    uuid: typing___Text = ...

    @property
    def run_result(self) -> type___RunUpdateResult: ...

    @property
    def exit_result(self) -> type___RunExitResult: ...

    @property
    def log_result(self) -> type___HistoryResult: ...

    @property
    def summary_result(self) -> type___SummaryResult: ...

    @property
    def output_result(self) -> type___OutputResult: ...

    @property
    def config_result(self) -> type___ConfigResult: ...

    @property
    def response(self) -> type___Response: ...

    def __init__(self,
        *,
        run_result : typing___Optional[type___RunUpdateResult] = None,
        exit_result : typing___Optional[type___RunExitResult] = None,
        log_result : typing___Optional[type___HistoryResult] = None,
        summary_result : typing___Optional[type___SummaryResult] = None,
        output_result : typing___Optional[type___OutputResult] = None,
        config_result : typing___Optional[type___ConfigResult] = None,
        response : typing___Optional[type___Response] = None,
        uuid : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"config_result",b"config_result",u"exit_result",b"exit_result",u"log_result",b"log_result",u"output_result",b"output_result",u"response",b"response",u"result_type",b"result_type",u"run_result",b"run_result",u"summary_result",b"summary_result"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"config_result",b"config_result",u"exit_result",b"exit_result",u"log_result",b"log_result",u"output_result",b"output_result",u"response",b"response",u"result_type",b"result_type",u"run_result",b"run_result",u"summary_result",b"summary_result",u"uuid",b"uuid"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions___Literal[u"result_type",b"result_type"]) -> typing_extensions___Literal["run_result","exit_result","log_result","summary_result","output_result","config_result","response"]: ...
type___Result = Result

class FinalRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___FinalRecord = FinalRecord

class HeaderRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___HeaderRecord = HeaderRecord

class FooterRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___FooterRecord = FooterRecord

class RunRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    run_id: typing___Text = ...
    entity: typing___Text = ...
    project: typing___Text = ...
    run_group: typing___Text = ...
    job_type: typing___Text = ...
    display_name: typing___Text = ...
    notes: typing___Text = ...
    tags: google___protobuf___internal___containers___RepeatedScalarFieldContainer[typing___Text] = ...
    sweep_id: typing___Text = ...
    host: typing___Text = ...
    starting_step: builtin___int = ...
    storage_id: typing___Text = ...
    resumed: builtin___bool = ...
    runtime: builtin___int = ...
    runqueue_item_id: typing___Text = ...

    @property
    def config(self) -> type___ConfigRecord: ...

    @property
    def summary(self) -> type___SummaryRecord: ...

    @property
    def settings(self) -> type___SettingsRecord: ...

    @property
    def start_time(self) -> google___protobuf___timestamp_pb2___Timestamp: ...

    @property
    def telemetry(self) -> wandb___proto___wandb_telemetry_pb2___TelemetryRecord: ...

    def __init__(self,
        *,
        run_id : typing___Optional[typing___Text] = None,
        entity : typing___Optional[typing___Text] = None,
        project : typing___Optional[typing___Text] = None,
        config : typing___Optional[type___ConfigRecord] = None,
        summary : typing___Optional[type___SummaryRecord] = None,
        run_group : typing___Optional[typing___Text] = None,
        job_type : typing___Optional[typing___Text] = None,
        display_name : typing___Optional[typing___Text] = None,
        notes : typing___Optional[typing___Text] = None,
        tags : typing___Optional[typing___Iterable[typing___Text]] = None,
        settings : typing___Optional[type___SettingsRecord] = None,
        sweep_id : typing___Optional[typing___Text] = None,
        host : typing___Optional[typing___Text] = None,
        starting_step : typing___Optional[builtin___int] = None,
        storage_id : typing___Optional[typing___Text] = None,
        start_time : typing___Optional[google___protobuf___timestamp_pb2___Timestamp] = None,
        resumed : typing___Optional[builtin___bool] = None,
        telemetry : typing___Optional[wandb___proto___wandb_telemetry_pb2___TelemetryRecord] = None,
        runtime : typing___Optional[builtin___int] = None,
        runqueue_item_id : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"config",b"config",u"settings",b"settings",u"start_time",b"start_time",u"summary",b"summary",u"telemetry",b"telemetry"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"config",b"config",u"display_name",b"display_name",u"entity",b"entity",u"host",b"host",u"job_type",b"job_type",u"notes",b"notes",u"project",b"project",u"resumed",b"resumed",u"run_group",b"run_group",u"run_id",b"run_id",u"runqueue_item_id",b"runqueue_item_id",u"runtime",b"runtime",u"settings",b"settings",u"start_time",b"start_time",u"starting_step",b"starting_step",u"storage_id",b"storage_id",u"summary",b"summary",u"sweep_id",b"sweep_id",u"tags",b"tags",u"telemetry",b"telemetry"]) -> None: ...
type___RunRecord = RunRecord

class RunUpdateResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def run(self) -> type___RunRecord: ...

    @property
    def error(self) -> type___ErrorInfo: ...

    def __init__(self,
        *,
        run : typing___Optional[type___RunRecord] = None,
        error : typing___Optional[type___ErrorInfo] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"error",b"error",u"run",b"run"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"error",b"error",u"run",b"run"]) -> None: ...
type___RunUpdateResult = RunUpdateResult

class ErrorInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    ErrorCodeValue = typing___NewType('ErrorCodeValue', builtin___int)
    type___ErrorCodeValue = ErrorCodeValue
    ErrorCode: _ErrorCode
    class _ErrorCode(google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper[ErrorInfo.ErrorCodeValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        UNKNOWN = typing___cast(ErrorInfo.ErrorCodeValue, 0)
        INVALID = typing___cast(ErrorInfo.ErrorCodeValue, 1)
        PERMISSION = typing___cast(ErrorInfo.ErrorCodeValue, 2)
        NETWORK = typing___cast(ErrorInfo.ErrorCodeValue, 3)
        INTERNAL = typing___cast(ErrorInfo.ErrorCodeValue, 4)
    UNKNOWN = typing___cast(ErrorInfo.ErrorCodeValue, 0)
    INVALID = typing___cast(ErrorInfo.ErrorCodeValue, 1)
    PERMISSION = typing___cast(ErrorInfo.ErrorCodeValue, 2)
    NETWORK = typing___cast(ErrorInfo.ErrorCodeValue, 3)
    INTERNAL = typing___cast(ErrorInfo.ErrorCodeValue, 4)
    type___ErrorCode = ErrorCode

    message: typing___Text = ...
    code: type___ErrorInfo.ErrorCodeValue = ...

    def __init__(self,
        *,
        message : typing___Optional[typing___Text] = None,
        code : typing___Optional[type___ErrorInfo.ErrorCodeValue] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"code",b"code",u"message",b"message"]) -> None: ...
type___ErrorInfo = ErrorInfo

class RunExitRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    exit_code: builtin___int = ...
    runtime: builtin___int = ...

    def __init__(self,
        *,
        exit_code : typing___Optional[builtin___int] = None,
        runtime : typing___Optional[builtin___int] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"exit_code",b"exit_code",u"runtime",b"runtime"]) -> None: ...
type___RunExitRecord = RunExitRecord

class RunPreemptingRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___RunPreemptingRecord = RunPreemptingRecord

class RunExitResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___RunExitResult = RunExitResult

class SettingsRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___SettingsItem]: ...

    def __init__(self,
        *,
        item : typing___Optional[typing___Iterable[type___SettingsItem]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"item",b"item"]) -> None: ...
type___SettingsRecord = SettingsRecord

class SettingsItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self,
        *,
        key : typing___Optional[typing___Text] = None,
        value_json : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value_json",b"value_json"]) -> None: ...
type___SettingsItem = SettingsItem

class HistoryStep(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    num: builtin___int = ...

    def __init__(self,
        *,
        num : typing___Optional[builtin___int] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"num",b"num"]) -> None: ...
type___HistoryStep = HistoryStep

class HistoryRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___HistoryItem]: ...

    @property
    def step(self) -> type___HistoryStep: ...

    def __init__(self,
        *,
        item : typing___Optional[typing___Iterable[type___HistoryItem]] = None,
        step : typing___Optional[type___HistoryStep] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"step",b"step"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"item",b"item",u"step",b"step"]) -> None: ...
type___HistoryRecord = HistoryRecord

class HistoryItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    nested_key: google___protobuf___internal___containers___RepeatedScalarFieldContainer[typing___Text] = ...
    value_json: typing___Text = ...

    def __init__(self,
        *,
        key : typing___Optional[typing___Text] = None,
        nested_key : typing___Optional[typing___Iterable[typing___Text]] = None,
        value_json : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"nested_key",b"nested_key",u"value_json",b"value_json"]) -> None: ...
type___HistoryItem = HistoryItem

class HistoryResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___HistoryResult = HistoryResult

class OutputRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    OutputTypeValue = typing___NewType('OutputTypeValue', builtin___int)
    type___OutputTypeValue = OutputTypeValue
    OutputType: _OutputType
    class _OutputType(google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper[OutputRecord.OutputTypeValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        STDERR = typing___cast(OutputRecord.OutputTypeValue, 0)
        STDOUT = typing___cast(OutputRecord.OutputTypeValue, 1)
    STDERR = typing___cast(OutputRecord.OutputTypeValue, 0)
    STDOUT = typing___cast(OutputRecord.OutputTypeValue, 1)
    type___OutputType = OutputType

    output_type: type___OutputRecord.OutputTypeValue = ...
    line: typing___Text = ...

    @property
    def timestamp(self) -> google___protobuf___timestamp_pb2___Timestamp: ...

    def __init__(self,
        *,
        output_type : typing___Optional[type___OutputRecord.OutputTypeValue] = None,
        timestamp : typing___Optional[google___protobuf___timestamp_pb2___Timestamp] = None,
        line : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"timestamp",b"timestamp"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"line",b"line",u"output_type",b"output_type",u"timestamp",b"timestamp"]) -> None: ...
type___OutputRecord = OutputRecord

class OutputResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___OutputResult = OutputResult

class MetricRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    MetricGoalValue = typing___NewType('MetricGoalValue', builtin___int)
    type___MetricGoalValue = MetricGoalValue
    MetricGoal: _MetricGoal
    class _MetricGoal(google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper[MetricRecord.MetricGoalValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        GOAL_UNSET = typing___cast(MetricRecord.MetricGoalValue, 0)
        GOAL_MINIMIZE = typing___cast(MetricRecord.MetricGoalValue, 1)
        GOAL_MAXIMIZE = typing___cast(MetricRecord.MetricGoalValue, 2)
    GOAL_UNSET = typing___cast(MetricRecord.MetricGoalValue, 0)
    GOAL_MINIMIZE = typing___cast(MetricRecord.MetricGoalValue, 1)
    GOAL_MAXIMIZE = typing___cast(MetricRecord.MetricGoalValue, 2)
    type___MetricGoal = MetricGoal

    name: typing___Text = ...
    glob_name: typing___Text = ...
    step_metric: typing___Text = ...
    step_metric_index: builtin___int = ...
    goal: type___MetricRecord.MetricGoalValue = ...

    @property
    def options(self) -> type___MetricOptions: ...

    @property
    def summary(self) -> type___MetricSummary: ...

    @property
    def _control(self) -> type___MetricControl: ...

    def __init__(self,
        *,
        name : typing___Optional[typing___Text] = None,
        glob_name : typing___Optional[typing___Text] = None,
        step_metric : typing___Optional[typing___Text] = None,
        step_metric_index : typing___Optional[builtin___int] = None,
        options : typing___Optional[type___MetricOptions] = None,
        summary : typing___Optional[type___MetricSummary] = None,
        goal : typing___Optional[type___MetricRecord.MetricGoalValue] = None,
        _control : typing___Optional[type___MetricControl] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"_control",b"_control",u"options",b"options",u"summary",b"summary"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"_control",b"_control",u"glob_name",b"glob_name",u"goal",b"goal",u"name",b"name",u"options",b"options",u"step_metric",b"step_metric",u"step_metric_index",b"step_metric_index",u"summary",b"summary"]) -> None: ...
type___MetricRecord = MetricRecord

class MetricOptions(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    step_sync: builtin___bool = ...
    hidden: builtin___bool = ...
    defined: builtin___bool = ...

    def __init__(self,
        *,
        step_sync : typing___Optional[builtin___bool] = None,
        hidden : typing___Optional[builtin___bool] = None,
        defined : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"defined",b"defined",u"hidden",b"hidden",u"step_sync",b"step_sync"]) -> None: ...
type___MetricOptions = MetricOptions

class MetricControl(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    overwrite: builtin___bool = ...

    def __init__(self,
        *,
        overwrite : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"overwrite",b"overwrite"]) -> None: ...
type___MetricControl = MetricControl

class MetricSummary(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    min: builtin___bool = ...
    max: builtin___bool = ...
    mean: builtin___bool = ...
    best: builtin___bool = ...
    last: builtin___bool = ...
    none: builtin___bool = ...
    copy: builtin___bool = ...

    def __init__(self,
        *,
        min : typing___Optional[builtin___bool] = None,
        max : typing___Optional[builtin___bool] = None,
        mean : typing___Optional[builtin___bool] = None,
        best : typing___Optional[builtin___bool] = None,
        last : typing___Optional[builtin___bool] = None,
        none : typing___Optional[builtin___bool] = None,
        copy : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"best",b"best",u"copy",b"copy",u"last",b"last",u"max",b"max",u"mean",b"mean",u"min",b"min",u"none",b"none"]) -> None: ...
type___MetricSummary = MetricSummary

class ConfigRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def update(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___ConfigItem]: ...

    @property
    def remove(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___ConfigItem]: ...

    def __init__(self,
        *,
        update : typing___Optional[typing___Iterable[type___ConfigItem]] = None,
        remove : typing___Optional[typing___Iterable[type___ConfigItem]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"remove",b"remove",u"update",b"update"]) -> None: ...
type___ConfigRecord = ConfigRecord

class ConfigItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    nested_key: google___protobuf___internal___containers___RepeatedScalarFieldContainer[typing___Text] = ...
    value_json: typing___Text = ...

    def __init__(self,
        *,
        key : typing___Optional[typing___Text] = None,
        nested_key : typing___Optional[typing___Iterable[typing___Text]] = None,
        value_json : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"nested_key",b"nested_key",u"value_json",b"value_json"]) -> None: ...
type___ConfigItem = ConfigItem

class ConfigResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___ConfigResult = ConfigResult

class SummaryRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def update(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___SummaryItem]: ...

    @property
    def remove(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___SummaryItem]: ...

    def __init__(self,
        *,
        update : typing___Optional[typing___Iterable[type___SummaryItem]] = None,
        remove : typing___Optional[typing___Iterable[type___SummaryItem]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"remove",b"remove",u"update",b"update"]) -> None: ...
type___SummaryRecord = SummaryRecord

class SummaryItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    nested_key: google___protobuf___internal___containers___RepeatedScalarFieldContainer[typing___Text] = ...
    value_json: typing___Text = ...

    def __init__(self,
        *,
        key : typing___Optional[typing___Text] = None,
        nested_key : typing___Optional[typing___Iterable[typing___Text]] = None,
        value_json : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"nested_key",b"nested_key",u"value_json",b"value_json"]) -> None: ...
type___SummaryItem = SummaryItem

class SummaryResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___SummaryResult = SummaryResult

class FilesRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def files(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___FilesItem]: ...

    def __init__(self,
        *,
        files : typing___Optional[typing___Iterable[type___FilesItem]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"files",b"files"]) -> None: ...
type___FilesRecord = FilesRecord

class FilesItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    PolicyTypeValue = typing___NewType('PolicyTypeValue', builtin___int)
    type___PolicyTypeValue = PolicyTypeValue
    PolicyType: _PolicyType
    class _PolicyType(google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper[FilesItem.PolicyTypeValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        NOW = typing___cast(FilesItem.PolicyTypeValue, 0)
        END = typing___cast(FilesItem.PolicyTypeValue, 1)
        LIVE = typing___cast(FilesItem.PolicyTypeValue, 2)
    NOW = typing___cast(FilesItem.PolicyTypeValue, 0)
    END = typing___cast(FilesItem.PolicyTypeValue, 1)
    LIVE = typing___cast(FilesItem.PolicyTypeValue, 2)
    type___PolicyType = PolicyType

    path: typing___Text = ...
    policy: type___FilesItem.PolicyTypeValue = ...
    external_path: typing___Text = ...

    def __init__(self,
        *,
        path : typing___Optional[typing___Text] = None,
        policy : typing___Optional[type___FilesItem.PolicyTypeValue] = None,
        external_path : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"external_path",b"external_path",u"path",b"path",u"policy",b"policy"]) -> None: ...
type___FilesItem = FilesItem

class StatsRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    StatsTypeValue = typing___NewType('StatsTypeValue', builtin___int)
    type___StatsTypeValue = StatsTypeValue
    StatsType: _StatsType
    class _StatsType(google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper[StatsRecord.StatsTypeValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        SYSTEM = typing___cast(StatsRecord.StatsTypeValue, 0)
    SYSTEM = typing___cast(StatsRecord.StatsTypeValue, 0)
    type___StatsType = StatsType

    stats_type: type___StatsRecord.StatsTypeValue = ...

    @property
    def timestamp(self) -> google___protobuf___timestamp_pb2___Timestamp: ...

    @property
    def item(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___StatsItem]: ...

    def __init__(self,
        *,
        stats_type : typing___Optional[type___StatsRecord.StatsTypeValue] = None,
        timestamp : typing___Optional[google___protobuf___timestamp_pb2___Timestamp] = None,
        item : typing___Optional[typing___Iterable[type___StatsItem]] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"timestamp",b"timestamp"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"item",b"item",u"stats_type",b"stats_type",u"timestamp",b"timestamp"]) -> None: ...
type___StatsRecord = StatsRecord

class StatsItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self,
        *,
        key : typing___Optional[typing___Text] = None,
        value_json : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value_json",b"value_json"]) -> None: ...
type___StatsItem = StatsItem

class ArtifactRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    run_id: typing___Text = ...
    project: typing___Text = ...
    entity: typing___Text = ...
    type: typing___Text = ...
    name: typing___Text = ...
    digest: typing___Text = ...
    description: typing___Text = ...
    metadata: typing___Text = ...
    user_created: builtin___bool = ...
    use_after_commit: builtin___bool = ...
    aliases: google___protobuf___internal___containers___RepeatedScalarFieldContainer[typing___Text] = ...
    distributed_id: typing___Text = ...
    finalize: builtin___bool = ...
    client_id: typing___Text = ...
    sequence_client_id: typing___Text = ...
    incremental_beta1: builtin___bool = ...

    @property
    def manifest(self) -> type___ArtifactManifest: ...

    def __init__(self,
        *,
        run_id : typing___Optional[typing___Text] = None,
        project : typing___Optional[typing___Text] = None,
        entity : typing___Optional[typing___Text] = None,
        type : typing___Optional[typing___Text] = None,
        name : typing___Optional[typing___Text] = None,
        digest : typing___Optional[typing___Text] = None,
        description : typing___Optional[typing___Text] = None,
        metadata : typing___Optional[typing___Text] = None,
        user_created : typing___Optional[builtin___bool] = None,
        use_after_commit : typing___Optional[builtin___bool] = None,
        aliases : typing___Optional[typing___Iterable[typing___Text]] = None,
        manifest : typing___Optional[type___ArtifactManifest] = None,
        distributed_id : typing___Optional[typing___Text] = None,
        finalize : typing___Optional[builtin___bool] = None,
        client_id : typing___Optional[typing___Text] = None,
        sequence_client_id : typing___Optional[typing___Text] = None,
        incremental_beta1 : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"manifest",b"manifest"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"aliases",b"aliases",u"client_id",b"client_id",u"description",b"description",u"digest",b"digest",u"distributed_id",b"distributed_id",u"entity",b"entity",u"finalize",b"finalize",u"incremental_beta1",b"incremental_beta1",u"manifest",b"manifest",u"metadata",b"metadata",u"name",b"name",u"project",b"project",u"run_id",b"run_id",u"sequence_client_id",b"sequence_client_id",u"type",b"type",u"use_after_commit",b"use_after_commit",u"user_created",b"user_created"]) -> None: ...
type___ArtifactRecord = ArtifactRecord

class ArtifactManifest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    version: builtin___int = ...
    storage_policy: typing___Text = ...

    @property
    def storage_policy_config(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___StoragePolicyConfigItem]: ...

    @property
    def contents(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___ArtifactManifestEntry]: ...

    def __init__(self,
        *,
        version : typing___Optional[builtin___int] = None,
        storage_policy : typing___Optional[typing___Text] = None,
        storage_policy_config : typing___Optional[typing___Iterable[type___StoragePolicyConfigItem]] = None,
        contents : typing___Optional[typing___Iterable[type___ArtifactManifestEntry]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"contents",b"contents",u"storage_policy",b"storage_policy",u"storage_policy_config",b"storage_policy_config",u"version",b"version"]) -> None: ...
type___ArtifactManifest = ArtifactManifest

class ArtifactManifestEntry(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    path: typing___Text = ...
    digest: typing___Text = ...
    ref: typing___Text = ...
    size: builtin___int = ...
    mimetype: typing___Text = ...
    local_path: typing___Text = ...
    birth_artifact_id: typing___Text = ...

    @property
    def extra(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___ExtraItem]: ...

    def __init__(self,
        *,
        path : typing___Optional[typing___Text] = None,
        digest : typing___Optional[typing___Text] = None,
        ref : typing___Optional[typing___Text] = None,
        size : typing___Optional[builtin___int] = None,
        mimetype : typing___Optional[typing___Text] = None,
        local_path : typing___Optional[typing___Text] = None,
        birth_artifact_id : typing___Optional[typing___Text] = None,
        extra : typing___Optional[typing___Iterable[type___ExtraItem]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"birth_artifact_id",b"birth_artifact_id",u"digest",b"digest",u"extra",b"extra",u"local_path",b"local_path",u"mimetype",b"mimetype",u"path",b"path",u"ref",b"ref",u"size",b"size"]) -> None: ...
type___ArtifactManifestEntry = ArtifactManifestEntry

class ExtraItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self,
        *,
        key : typing___Optional[typing___Text] = None,
        value_json : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value_json",b"value_json"]) -> None: ...
type___ExtraItem = ExtraItem

class StoragePolicyConfigItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self,
        *,
        key : typing___Optional[typing___Text] = None,
        value_json : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value_json",b"value_json"]) -> None: ...
type___StoragePolicyConfigItem = StoragePolicyConfigItem

class TBRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    log_dir: typing___Text = ...
    save: builtin___bool = ...
    root_dir: typing___Text = ...

    def __init__(self,
        *,
        log_dir : typing___Optional[typing___Text] = None,
        save : typing___Optional[builtin___bool] = None,
        root_dir : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"log_dir",b"log_dir",u"root_dir",b"root_dir",u"save",b"save"]) -> None: ...
type___TBRecord = TBRecord

class AlertRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    title: typing___Text = ...
    text: typing___Text = ...
    level: typing___Text = ...
    wait_duration: builtin___int = ...

    def __init__(self,
        *,
        title : typing___Optional[typing___Text] = None,
        text : typing___Optional[typing___Text] = None,
        level : typing___Optional[typing___Text] = None,
        wait_duration : typing___Optional[builtin___int] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"level",b"level",u"text",b"text",u"title",b"title",u"wait_duration",b"wait_duration"]) -> None: ...
type___AlertRecord = AlertRecord

class Request(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def stop_status(self) -> type___StopStatusRequest: ...

    @property
    def network_status(self) -> type___NetworkStatusRequest: ...

    @property
    def defer(self) -> type___DeferRequest: ...

    @property
    def get_summary(self) -> type___GetSummaryRequest: ...

    @property
    def login(self) -> type___LoginRequest: ...

    @property
    def pause(self) -> type___PauseRequest: ...

    @property
    def resume(self) -> type___ResumeRequest: ...

    @property
    def poll_exit(self) -> type___PollExitRequest: ...

    @property
    def sampled_history(self) -> type___SampledHistoryRequest: ...

    @property
    def run_start(self) -> type___RunStartRequest: ...

    @property
    def check_version(self) -> type___CheckVersionRequest: ...

    @property
    def log_artifact(self) -> type___LogArtifactRequest: ...

    @property
    def shutdown(self) -> type___ShutdownRequest: ...

    @property
    def test_inject(self) -> type___TestInjectRequest: ...

    def __init__(self,
        *,
        stop_status : typing___Optional[type___StopStatusRequest] = None,
        network_status : typing___Optional[type___NetworkStatusRequest] = None,
        defer : typing___Optional[type___DeferRequest] = None,
        get_summary : typing___Optional[type___GetSummaryRequest] = None,
        login : typing___Optional[type___LoginRequest] = None,
        pause : typing___Optional[type___PauseRequest] = None,
        resume : typing___Optional[type___ResumeRequest] = None,
        poll_exit : typing___Optional[type___PollExitRequest] = None,
        sampled_history : typing___Optional[type___SampledHistoryRequest] = None,
        run_start : typing___Optional[type___RunStartRequest] = None,
        check_version : typing___Optional[type___CheckVersionRequest] = None,
        log_artifact : typing___Optional[type___LogArtifactRequest] = None,
        shutdown : typing___Optional[type___ShutdownRequest] = None,
        test_inject : typing___Optional[type___TestInjectRequest] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"check_version",b"check_version",u"defer",b"defer",u"get_summary",b"get_summary",u"log_artifact",b"log_artifact",u"login",b"login",u"network_status",b"network_status",u"pause",b"pause",u"poll_exit",b"poll_exit",u"request_type",b"request_type",u"resume",b"resume",u"run_start",b"run_start",u"sampled_history",b"sampled_history",u"shutdown",b"shutdown",u"stop_status",b"stop_status",u"test_inject",b"test_inject"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"check_version",b"check_version",u"defer",b"defer",u"get_summary",b"get_summary",u"log_artifact",b"log_artifact",u"login",b"login",u"network_status",b"network_status",u"pause",b"pause",u"poll_exit",b"poll_exit",u"request_type",b"request_type",u"resume",b"resume",u"run_start",b"run_start",u"sampled_history",b"sampled_history",u"shutdown",b"shutdown",u"stop_status",b"stop_status",u"test_inject",b"test_inject"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions___Literal[u"request_type",b"request_type"]) -> typing_extensions___Literal["stop_status","network_status","defer","get_summary","login","pause","resume","poll_exit","sampled_history","run_start","check_version","log_artifact","shutdown","test_inject"]: ...
type___Request = Request

class Response(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def stop_status_response(self) -> type___StopStatusResponse: ...

    @property
    def network_status_response(self) -> type___NetworkStatusResponse: ...

    @property
    def login_response(self) -> type___LoginResponse: ...

    @property
    def get_summary_response(self) -> type___GetSummaryResponse: ...

    @property
    def poll_exit_response(self) -> type___PollExitResponse: ...

    @property
    def sampled_history_response(self) -> type___SampledHistoryResponse: ...

    @property
    def run_start_response(self) -> type___RunStartResponse: ...

    @property
    def check_version_response(self) -> type___CheckVersionResponse: ...

    @property
    def log_artifact_response(self) -> type___LogArtifactResponse: ...

    @property
    def shutdown_response(self) -> type___ShutdownResponse: ...

    @property
    def test_inject_response(self) -> type___TestInjectResponse: ...

    def __init__(self,
        *,
        stop_status_response : typing___Optional[type___StopStatusResponse] = None,
        network_status_response : typing___Optional[type___NetworkStatusResponse] = None,
        login_response : typing___Optional[type___LoginResponse] = None,
        get_summary_response : typing___Optional[type___GetSummaryResponse] = None,
        poll_exit_response : typing___Optional[type___PollExitResponse] = None,
        sampled_history_response : typing___Optional[type___SampledHistoryResponse] = None,
        run_start_response : typing___Optional[type___RunStartResponse] = None,
        check_version_response : typing___Optional[type___CheckVersionResponse] = None,
        log_artifact_response : typing___Optional[type___LogArtifactResponse] = None,
        shutdown_response : typing___Optional[type___ShutdownResponse] = None,
        test_inject_response : typing___Optional[type___TestInjectResponse] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"check_version_response",b"check_version_response",u"get_summary_response",b"get_summary_response",u"log_artifact_response",b"log_artifact_response",u"login_response",b"login_response",u"network_status_response",b"network_status_response",u"poll_exit_response",b"poll_exit_response",u"response_type",b"response_type",u"run_start_response",b"run_start_response",u"sampled_history_response",b"sampled_history_response",u"shutdown_response",b"shutdown_response",u"stop_status_response",b"stop_status_response",u"test_inject_response",b"test_inject_response"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"check_version_response",b"check_version_response",u"get_summary_response",b"get_summary_response",u"log_artifact_response",b"log_artifact_response",u"login_response",b"login_response",u"network_status_response",b"network_status_response",u"poll_exit_response",b"poll_exit_response",u"response_type",b"response_type",u"run_start_response",b"run_start_response",u"sampled_history_response",b"sampled_history_response",u"shutdown_response",b"shutdown_response",u"stop_status_response",b"stop_status_response",u"test_inject_response",b"test_inject_response"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions___Literal[u"response_type",b"response_type"]) -> typing_extensions___Literal["stop_status_response","network_status_response","login_response","get_summary_response","poll_exit_response","sampled_history_response","run_start_response","check_version_response","log_artifact_response","shutdown_response","test_inject_response"]: ...
type___Response = Response

class DeferRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    DeferStateValue = typing___NewType('DeferStateValue', builtin___int)
    type___DeferStateValue = DeferStateValue
    DeferState: _DeferState
    class _DeferState(google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper[DeferRequest.DeferStateValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        BEGIN = typing___cast(DeferRequest.DeferStateValue, 0)
        FLUSH_STATS = typing___cast(DeferRequest.DeferStateValue, 1)
        FLUSH_TB = typing___cast(DeferRequest.DeferStateValue, 2)
        FLUSH_SUM = typing___cast(DeferRequest.DeferStateValue, 3)
        FLUSH_DEBOUNCER = typing___cast(DeferRequest.DeferStateValue, 4)
        FLUSH_DIR = typing___cast(DeferRequest.DeferStateValue, 5)
        FLUSH_FP = typing___cast(DeferRequest.DeferStateValue, 6)
        FLUSH_FS = typing___cast(DeferRequest.DeferStateValue, 7)
        FLUSH_FINAL = typing___cast(DeferRequest.DeferStateValue, 8)
        END = typing___cast(DeferRequest.DeferStateValue, 9)
    BEGIN = typing___cast(DeferRequest.DeferStateValue, 0)
    FLUSH_STATS = typing___cast(DeferRequest.DeferStateValue, 1)
    FLUSH_TB = typing___cast(DeferRequest.DeferStateValue, 2)
    FLUSH_SUM = typing___cast(DeferRequest.DeferStateValue, 3)
    FLUSH_DEBOUNCER = typing___cast(DeferRequest.DeferStateValue, 4)
    FLUSH_DIR = typing___cast(DeferRequest.DeferStateValue, 5)
    FLUSH_FP = typing___cast(DeferRequest.DeferStateValue, 6)
    FLUSH_FS = typing___cast(DeferRequest.DeferStateValue, 7)
    FLUSH_FINAL = typing___cast(DeferRequest.DeferStateValue, 8)
    END = typing___cast(DeferRequest.DeferStateValue, 9)
    type___DeferState = DeferState

    state: type___DeferRequest.DeferStateValue = ...

    def __init__(self,
        *,
        state : typing___Optional[type___DeferRequest.DeferStateValue] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"state",b"state"]) -> None: ...
type___DeferRequest = DeferRequest

class PauseRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___PauseRequest = PauseRequest

class ResumeRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___ResumeRequest = ResumeRequest

class LoginRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    api_key: typing___Text = ...

    def __init__(self,
        *,
        api_key : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"api_key",b"api_key"]) -> None: ...
type___LoginRequest = LoginRequest

class LoginResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    active_entity: typing___Text = ...

    def __init__(self,
        *,
        active_entity : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"active_entity",b"active_entity"]) -> None: ...
type___LoginResponse = LoginResponse

class GetSummaryRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___GetSummaryRequest = GetSummaryRequest

class GetSummaryResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___SummaryItem]: ...

    def __init__(self,
        *,
        item : typing___Optional[typing___Iterable[type___SummaryItem]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"item",b"item"]) -> None: ...
type___GetSummaryResponse = GetSummaryResponse

class StopStatusRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___StopStatusRequest = StopStatusRequest

class StopStatusResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    run_should_stop: builtin___bool = ...

    def __init__(self,
        *,
        run_should_stop : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"run_should_stop",b"run_should_stop"]) -> None: ...
type___StopStatusResponse = StopStatusResponse

class NetworkStatusRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___NetworkStatusRequest = NetworkStatusRequest

class NetworkStatusResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def network_responses(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___HttpResponse]: ...

    def __init__(self,
        *,
        network_responses : typing___Optional[typing___Iterable[type___HttpResponse]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"network_responses",b"network_responses"]) -> None: ...
type___NetworkStatusResponse = NetworkStatusResponse

class HttpResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    http_status_code: builtin___int = ...
    http_response_text: typing___Text = ...

    def __init__(self,
        *,
        http_status_code : typing___Optional[builtin___int] = None,
        http_response_text : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"http_response_text",b"http_response_text",u"http_status_code",b"http_status_code"]) -> None: ...
type___HttpResponse = HttpResponse

class PollExitRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___PollExitRequest = PollExitRequest

class PollExitResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    done: builtin___bool = ...

    @property
    def exit_result(self) -> type___RunExitResult: ...

    @property
    def file_counts(self) -> type___FileCounts: ...

    @property
    def pusher_stats(self) -> type___FilePusherStats: ...

    @property
    def local_info(self) -> type___LocalInfo: ...

    def __init__(self,
        *,
        done : typing___Optional[builtin___bool] = None,
        exit_result : typing___Optional[type___RunExitResult] = None,
        file_counts : typing___Optional[type___FileCounts] = None,
        pusher_stats : typing___Optional[type___FilePusherStats] = None,
        local_info : typing___Optional[type___LocalInfo] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"exit_result",b"exit_result",u"file_counts",b"file_counts",u"local_info",b"local_info",u"pusher_stats",b"pusher_stats"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"done",b"done",u"exit_result",b"exit_result",u"file_counts",b"file_counts",u"local_info",b"local_info",u"pusher_stats",b"pusher_stats"]) -> None: ...
type___PollExitResponse = PollExitResponse

class FileCounts(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    wandb_count: builtin___int = ...
    media_count: builtin___int = ...
    artifact_count: builtin___int = ...
    other_count: builtin___int = ...

    def __init__(self,
        *,
        wandb_count : typing___Optional[builtin___int] = None,
        media_count : typing___Optional[builtin___int] = None,
        artifact_count : typing___Optional[builtin___int] = None,
        other_count : typing___Optional[builtin___int] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"artifact_count",b"artifact_count",u"media_count",b"media_count",u"other_count",b"other_count",u"wandb_count",b"wandb_count"]) -> None: ...
type___FileCounts = FileCounts

class FilePusherStats(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    uploaded_bytes: builtin___int = ...
    total_bytes: builtin___int = ...
    deduped_bytes: builtin___int = ...

    def __init__(self,
        *,
        uploaded_bytes : typing___Optional[builtin___int] = None,
        total_bytes : typing___Optional[builtin___int] = None,
        deduped_bytes : typing___Optional[builtin___int] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"deduped_bytes",b"deduped_bytes",u"total_bytes",b"total_bytes",u"uploaded_bytes",b"uploaded_bytes"]) -> None: ...
type___FilePusherStats = FilePusherStats

class LocalInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    version: typing___Text = ...
    out_of_date: builtin___bool = ...

    def __init__(self,
        *,
        version : typing___Optional[typing___Text] = None,
        out_of_date : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"out_of_date",b"out_of_date",u"version",b"version"]) -> None: ...
type___LocalInfo = LocalInfo

class ShutdownRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___ShutdownRequest = ShutdownRequest

class ShutdownResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___ShutdownResponse = ShutdownResponse

class TestInjectRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    handler_exc: builtin___bool = ...
    handler_exit: builtin___bool = ...
    handler_abort: builtin___bool = ...
    sender_exc: builtin___bool = ...
    sender_exit: builtin___bool = ...
    sender_abort: builtin___bool = ...
    req_exc: builtin___bool = ...
    req_exit: builtin___bool = ...
    req_abort: builtin___bool = ...
    resp_exc: builtin___bool = ...
    resp_exit: builtin___bool = ...
    resp_abort: builtin___bool = ...
    msg_drop: builtin___bool = ...
    msg_hang: builtin___bool = ...

    def __init__(self,
        *,
        handler_exc : typing___Optional[builtin___bool] = None,
        handler_exit : typing___Optional[builtin___bool] = None,
        handler_abort : typing___Optional[builtin___bool] = None,
        sender_exc : typing___Optional[builtin___bool] = None,
        sender_exit : typing___Optional[builtin___bool] = None,
        sender_abort : typing___Optional[builtin___bool] = None,
        req_exc : typing___Optional[builtin___bool] = None,
        req_exit : typing___Optional[builtin___bool] = None,
        req_abort : typing___Optional[builtin___bool] = None,
        resp_exc : typing___Optional[builtin___bool] = None,
        resp_exit : typing___Optional[builtin___bool] = None,
        resp_abort : typing___Optional[builtin___bool] = None,
        msg_drop : typing___Optional[builtin___bool] = None,
        msg_hang : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"handler_abort",b"handler_abort",u"handler_exc",b"handler_exc",u"handler_exit",b"handler_exit",u"msg_drop",b"msg_drop",u"msg_hang",b"msg_hang",u"req_abort",b"req_abort",u"req_exc",b"req_exc",u"req_exit",b"req_exit",u"resp_abort",b"resp_abort",u"resp_exc",b"resp_exc",u"resp_exit",b"resp_exit",u"sender_abort",b"sender_abort",u"sender_exc",b"sender_exc",u"sender_exit",b"sender_exit"]) -> None: ...
type___TestInjectRequest = TestInjectRequest

class TestInjectResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___TestInjectResponse = TestInjectResponse

class SampledHistoryRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___SampledHistoryRequest = SampledHistoryRequest

class SampledHistoryItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    nested_key: google___protobuf___internal___containers___RepeatedScalarFieldContainer[typing___Text] = ...
    values_float: google___protobuf___internal___containers___RepeatedScalarFieldContainer[builtin___float] = ...
    values_int: google___protobuf___internal___containers___RepeatedScalarFieldContainer[builtin___int] = ...

    def __init__(self,
        *,
        key : typing___Optional[typing___Text] = None,
        nested_key : typing___Optional[typing___Iterable[typing___Text]] = None,
        values_float : typing___Optional[typing___Iterable[builtin___float]] = None,
        values_int : typing___Optional[typing___Iterable[builtin___int]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"nested_key",b"nested_key",u"values_float",b"values_float",u"values_int",b"values_int"]) -> None: ...
type___SampledHistoryItem = SampledHistoryItem

class SampledHistoryResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___SampledHistoryItem]: ...

    def __init__(self,
        *,
        item : typing___Optional[typing___Iterable[type___SampledHistoryItem]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"item",b"item"]) -> None: ...
type___SampledHistoryResponse = SampledHistoryResponse

class RunStartRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def run(self) -> type___RunRecord: ...

    def __init__(self,
        *,
        run : typing___Optional[type___RunRecord] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"run",b"run"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"run",b"run"]) -> None: ...
type___RunStartRequest = RunStartRequest

class RunStartResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___RunStartResponse = RunStartResponse

class CheckVersionRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    current_version: typing___Text = ...

    def __init__(self,
        *,
        current_version : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"current_version",b"current_version"]) -> None: ...
type___CheckVersionRequest = CheckVersionRequest

class CheckVersionResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    upgrade_message: typing___Text = ...
    yank_message: typing___Text = ...
    delete_message: typing___Text = ...

    def __init__(self,
        *,
        upgrade_message : typing___Optional[typing___Text] = None,
        yank_message : typing___Optional[typing___Text] = None,
        delete_message : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"delete_message",b"delete_message",u"upgrade_message",b"upgrade_message",u"yank_message",b"yank_message"]) -> None: ...
type___CheckVersionResponse = CheckVersionResponse

class LogArtifactRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def artifact(self) -> type___ArtifactRecord: ...

    def __init__(self,
        *,
        artifact : typing___Optional[type___ArtifactRecord] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"artifact",b"artifact"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"artifact",b"artifact"]) -> None: ...
type___LogArtifactRequest = LogArtifactRequest

class LogArtifactResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    artifact_id: typing___Text = ...
    error_message: typing___Text = ...

    def __init__(self,
        *,
        artifact_id : typing___Optional[typing___Text] = None,
        error_message : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"artifact_id",b"artifact_id",u"error_message",b"error_message"]) -> None: ...
type___LogArtifactResponse = LogArtifactResponse

346499d73f7b97946d828adcc079991e89a4e5bf
<mask token>


class Request(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    <mask token>
    <mask token>
    <mask token>
    <mask token>

    @property
    def login(self) ->type___LoginRequest:
        ...
    <mask token>

    @property
    def resume(self) ->type___ResumeRequest:
        ...
    <mask token>
    <mask token>
    <mask token>
    <mask token>
    <mask token>

    @property
    def shutdown(self) ->type___ShutdownRequest:
        ...
    <mask token>
    <mask token>

    def HasField(self, field_name: typing_extensions___Literal[
        u'check_version', b'check_version', u'defer', b'defer',
        u'get_summary', b'get_summary', u'log_artifact', b'log_artifact',
        u'login', b'login', u'network_status', b'network_status', u'pause',
        b'pause', u'poll_exit', b'poll_exit', u'request_type',
        b'request_type', u'resume', b'resume', u'run_start', b'run_start',
        u'sampled_history', b'sampled_history', u'shutdown', b'shutdown',
        u'stop_status', b'stop_status', u'test_inject', b'test_inject']
        ) ->builtin___bool:
        ...
    <mask token>
    <mask token>


<mask token>


class Response(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def stop_status_response(self) ->type___StopStatusResponse:
        ...

    @property
    def network_status_response(self) ->type___NetworkStatusResponse:
        ...

    @property
    def login_response(self) ->type___LoginResponse:
        ...

    @property
    def get_summary_response(self) ->type___GetSummaryResponse:
        ...

    @property
    def poll_exit_response(self) ->type___PollExitResponse:
        ...

    @property
    def sampled_history_response(self) ->type___SampledHistoryResponse:
        ...

    @property
    def run_start_response(self) ->type___RunStartResponse:
        ...

    @property
    def check_version_response(self) ->type___CheckVersionResponse:
        ...

    @property
    def log_artifact_response(self) ->type___LogArtifactResponse:
        ...

    @property
    def shutdown_response(self) ->type___ShutdownResponse:
        ...

    @property
    def test_inject_response(self) ->type___TestInjectResponse:
        ...

    def __init__(self, *, stop_status_response: typing___Optional[
        type___StopStatusResponse]=None, network_status_response:
        typing___Optional[type___NetworkStatusResponse]=None,
        login_response: typing___Optional[type___LoginResponse]=None,
        get_summary_response: typing___Optional[type___GetSummaryResponse]=
        None, poll_exit_response: typing___Optional[type___PollExitResponse
        ]=None, sampled_history_response: typing___Optional[
        type___SampledHistoryResponse]=None, run_start_response:
        typing___Optional[type___RunStartResponse]=None,
        check_version_response: typing___Optional[
        type___CheckVersionResponse]=None, log_artifact_response:
        typing___Optional[type___LogArtifactResponse]=None,
        shutdown_response: typing___Optional[type___ShutdownResponse]=None,
        test_inject_response: typing___Optional[type___TestInjectResponse]=None
        ) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[
        u'check_version_response', b'check_version_response',
        u'get_summary_response', b'get_summary_response',
        u'log_artifact_response', b'log_artifact_response',
        u'login_response', b'login_response', u'network_status_response',
        b'network_status_response', u'poll_exit_response',
        b'poll_exit_response', u'response_type', b'response_type',
        u'run_start_response', b'run_start_response',
        u'sampled_history_response', b'sampled_history_response',
        u'shutdown_response', b'shutdown_response', u'stop_status_response',
        b'stop_status_response', u'test_inject_response',
        b'test_inject_response']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'check_version_response', b'check_version_response',
        u'get_summary_response', b'get_summary_response',
        u'log_artifact_response', b'log_artifact_response',
        u'login_response', b'login_response', u'network_status_response',
        b'network_status_response', u'poll_exit_response',
        b'poll_exit_response', u'response_type', b'response_type',
        u'run_start_response', b'run_start_response',
        u'sampled_history_response', b'sampled_history_response',
        u'shutdown_response', b'shutdown_response', u'stop_status_response',
        b'stop_status_response', u'test_inject_response',
        b'test_inject_response']) ->None:
        ...

    def WhichOneof(self, oneof_group: typing_extensions___Literal[
        u'response_type', b'response_type']) ->typing_extensions___Literal[
        'stop_status_response', 'network_status_response', 'login_response',
        'get_summary_response', 'poll_exit_response',
        'sampled_history_response', 'run_start_response',
        'check_version_response', 'log_artifact_response',
        'shutdown_response', 'test_inject_response']:
        ...


<mask token>


class DeferRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    DeferStateValue = typing___NewType('DeferStateValue', builtin___int)
    type___DeferStateValue = DeferStateValue
    DeferState: _DeferState


    class _DeferState(
        google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper
        [DeferRequest.DeferStateValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        BEGIN = typing___cast(DeferRequest.DeferStateValue, 0)
        FLUSH_STATS = typing___cast(DeferRequest.DeferStateValue, 1)
        FLUSH_TB = typing___cast(DeferRequest.DeferStateValue, 2)
        FLUSH_SUM = typing___cast(DeferRequest.DeferStateValue, 3)
        FLUSH_DEBOUNCER = typing___cast(DeferRequest.DeferStateValue, 4)
        FLUSH_DIR = typing___cast(DeferRequest.DeferStateValue, 5)
        FLUSH_FP = typing___cast(DeferRequest.DeferStateValue, 6)
        FLUSH_FS = typing___cast(DeferRequest.DeferStateValue, 7)
        FLUSH_FINAL = typing___cast(DeferRequest.DeferStateValue, 8)
        END = typing___cast(DeferRequest.DeferStateValue, 9)
    BEGIN = typing___cast(DeferRequest.DeferStateValue, 0)
    FLUSH_STATS = typing___cast(DeferRequest.DeferStateValue, 1)
    FLUSH_TB = typing___cast(DeferRequest.DeferStateValue, 2)
    FLUSH_SUM = typing___cast(DeferRequest.DeferStateValue, 3)
    FLUSH_DEBOUNCER = typing___cast(DeferRequest.DeferStateValue, 4)
    FLUSH_DIR = typing___cast(DeferRequest.DeferStateValue, 5)
    FLUSH_FP = typing___cast(DeferRequest.DeferStateValue, 6)
    FLUSH_FS = typing___cast(DeferRequest.DeferStateValue, 7)
    FLUSH_FINAL = typing___cast(DeferRequest.DeferStateValue, 8)
    END = typing___cast(DeferRequest.DeferStateValue, 9)
    type___DeferState = DeferState
    state: type___DeferRequest.DeferStateValue = ...

    def __init__(self, *, state: typing___Optional[type___DeferRequest.
        DeferStateValue]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'state',
        b'state']) ->None:
        ...


<mask token>


class PauseRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class ResumeRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class LoginRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    api_key: typing___Text = ...

    def __init__(self, *, api_key: typing___Optional[typing___Text]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'api_key',
        b'api_key']) ->None:
        ...


<mask token>


class LoginResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    active_entity: typing___Text = ...

    def __init__(self, *, active_entity: typing___Optional[typing___Text]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'active_entity', b'active_entity']) ->None:
        ...


<mask token>


class GetSummaryRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class GetSummaryResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___SummaryItem]:
        ...

    def __init__(self, *, item: typing___Optional[typing___Iterable[
        type___SummaryItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'item',
        b'item']) ->None:
        ...


<mask token>


class StopStatusRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class StopStatusResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    run_should_stop: builtin___bool = ...

    def __init__(self, *, run_should_stop: typing___Optional[builtin___bool
        ]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'run_should_stop', b'run_should_stop']) ->None:
        ...


<mask token>


class NetworkStatusRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class NetworkStatusResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def network_responses(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___HttpResponse]:
        ...

    def __init__(self, *, network_responses: typing___Optional[
        typing___Iterable[type___HttpResponse]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'network_responses', b'network_responses']) ->None:
        ...


<mask token>


class HttpResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    http_status_code: builtin___int = ...
    http_response_text: typing___Text = ...

    def __init__(self, *, http_status_code: typing___Optional[builtin___int
        ]=None, http_response_text: typing___Optional[typing___Text]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'http_response_text', b'http_response_text', u'http_status_code',
        b'http_status_code']) ->None:
        ...


<mask token>


class PollExitRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class PollExitResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    done: builtin___bool = ...

    @property
    def exit_result(self) ->type___RunExitResult:
        ...

    @property
    def file_counts(self) ->type___FileCounts:
        ...

    @property
    def pusher_stats(self) ->type___FilePusherStats:
        ...

    @property
    def local_info(self) ->type___LocalInfo:
        ...

    def __init__(self, *, done: typing___Optional[builtin___bool]=None,
        exit_result: typing___Optional[type___RunExitResult]=None,
        file_counts: typing___Optional[type___FileCounts]=None,
        pusher_stats: typing___Optional[type___FilePusherStats]=None,
        local_info: typing___Optional[type___LocalInfo]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[
        u'exit_result', b'exit_result', u'file_counts', b'file_counts',
        u'local_info', b'local_info', u'pusher_stats', b'pusher_stats']
        ) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'done',
        b'done', u'exit_result', b'exit_result', u'file_counts',
        b'file_counts', u'local_info', b'local_info', u'pusher_stats',
        b'pusher_stats']) ->None:
        ...


<mask token>


class FileCounts(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    wandb_count: builtin___int = ...
    media_count: builtin___int = ...
    artifact_count: builtin___int = ...
    other_count: builtin___int = ...

    def __init__(self, *, wandb_count: typing___Optional[builtin___int]=
        None, media_count: typing___Optional[builtin___int]=None,
        artifact_count: typing___Optional[builtin___int]=None, other_count:
        typing___Optional[builtin___int]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'artifact_count', b'artifact_count', u'media_count',
        b'media_count', u'other_count', b'other_count', u'wandb_count',
        b'wandb_count']) ->None:
        ...


<mask token>


class FilePusherStats(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    uploaded_bytes: builtin___int = ...
    total_bytes: builtin___int = ...
    deduped_bytes: builtin___int = ...

    def __init__(self, *, uploaded_bytes: typing___Optional[builtin___int]=
        None, total_bytes: typing___Optional[builtin___int]=None,
        deduped_bytes: typing___Optional[builtin___int]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'deduped_bytes', b'deduped_bytes', u'total_bytes', b'total_bytes',
        u'uploaded_bytes', b'uploaded_bytes']) ->None:
        ...


<mask token>


class LocalInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    version: typing___Text = ...
    out_of_date: builtin___bool = ...

    def __init__(self, *, version: typing___Optional[typing___Text]=None,
        out_of_date: typing___Optional[builtin___bool]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'out_of_date', b'out_of_date', u'version', b'version']) ->None:
        ...


<mask token>


class ShutdownRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class ShutdownResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class TestInjectRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    handler_exc: builtin___bool = ...
    handler_exit: builtin___bool = ...
    handler_abort: builtin___bool = ...
    sender_exc: builtin___bool = ...
    sender_exit: builtin___bool = ...
    sender_abort: builtin___bool = ...
    req_exc: builtin___bool = ...
    req_exit: builtin___bool = ...
    req_abort: builtin___bool = ...
    resp_exc: builtin___bool = ...
    resp_exit: builtin___bool = ...
    resp_abort: builtin___bool = ...
    msg_drop: builtin___bool = ...
    msg_hang: builtin___bool = ...

    def __init__(self, *, handler_exc: typing___Optional[builtin___bool]=
        None, handler_exit: typing___Optional[builtin___bool]=None,
        handler_abort: typing___Optional[builtin___bool]=None, sender_exc:
        typing___Optional[builtin___bool]=None, sender_exit:
        typing___Optional[builtin___bool]=None, sender_abort:
        typing___Optional[builtin___bool]=None, req_exc: typing___Optional[
        builtin___bool]=None, req_exit: typing___Optional[builtin___bool]=
        None, req_abort: typing___Optional[builtin___bool]=None, resp_exc:
        typing___Optional[builtin___bool]=None, resp_exit:
        typing___Optional[builtin___bool]=None, resp_abort:
        typing___Optional[builtin___bool]=None, msg_drop: typing___Optional
        [builtin___bool]=None, msg_hang: typing___Optional[builtin___bool]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'handler_abort', b'handler_abort', u'handler_exc', b'handler_exc',
        u'handler_exit', b'handler_exit', u'msg_drop', b'msg_drop',
        u'msg_hang', b'msg_hang', u'req_abort', b'req_abort', u'req_exc',
        b'req_exc', u'req_exit', b'req_exit', u'resp_abort', b'resp_abort',
        u'resp_exc', b'resp_exc', u'resp_exit', b'resp_exit',
        u'sender_abort', b'sender_abort', u'sender_exc', b'sender_exc',
        u'sender_exit', b'sender_exit']) ->None:
        ...


<mask token>


class TestInjectResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class SampledHistoryRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class SampledHistoryItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    (nested_key:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [typing___Text]) = ...
    (values_float:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [builtin___float]) = ...
    (values_int:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [builtin___int]) = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        nested_key: typing___Optional[typing___Iterable[typing___Text]]=
        None, values_float: typing___Optional[typing___Iterable[
        builtin___float]]=None, values_int: typing___Optional[
        typing___Iterable[builtin___int]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'nested_key', b'nested_key', u'values_float',
        b'values_float', u'values_int', b'values_int']) ->None:
        ...


<mask token>


class SampledHistoryResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___SampledHistoryItem]:
        ...

    def __init__(self, *, item: typing___Optional[typing___Iterable[
        type___SampledHistoryItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'item',
        b'item']) ->None:
        ...


<mask token>


class RunStartRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def run(self) ->type___RunRecord:
        ...

    def __init__(self, *, run: typing___Optional[type___RunRecord]=None
        ) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'run', b'run']
        ) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'run',
        b'run']) ->None:
        ...


<mask token>


class RunStartResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class CheckVersionRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    current_version: typing___Text = ...

    def __init__(self, *, current_version: typing___Optional[typing___Text]
        =None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'current_version', b'current_version']) ->None:
        ...


<mask token>


class CheckVersionResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    upgrade_message: typing___Text = ...
    yank_message: typing___Text = ...
    delete_message: typing___Text = ...

    def __init__(self, *, upgrade_message: typing___Optional[typing___Text]
        =None, yank_message: typing___Optional[typing___Text]=None,
        delete_message: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'delete_message', b'delete_message', u'upgrade_message',
        b'upgrade_message', u'yank_message', b'yank_message']) ->None:
        ...


<mask token>


class LogArtifactRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def artifact(self) ->type___ArtifactRecord:
        ...

    def __init__(self, *, artifact: typing___Optional[type___ArtifactRecord
        ]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'artifact',
        b'artifact']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'artifact', b'artifact']) ->None:
        ...


<mask token>


class LogArtifactResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    artifact_id: typing___Text = ...
    error_message: typing___Text = ...

    def __init__(self, *, artifact_id: typing___Optional[typing___Text]=
        None, error_message: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'artifact_id', b'artifact_id', u'error_message', b'error_message']
        ) ->None:
        ...


<mask token>

<mask token>


class OutputResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class MetricRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    MetricGoalValue = typing___NewType('MetricGoalValue', builtin___int)
    type___MetricGoalValue = MetricGoalValue
    MetricGoal: _MetricGoal


    class _MetricGoal(
        google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper
        [MetricRecord.MetricGoalValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        GOAL_UNSET = typing___cast(MetricRecord.MetricGoalValue, 0)
        GOAL_MINIMIZE = typing___cast(MetricRecord.MetricGoalValue, 1)
        GOAL_MAXIMIZE = typing___cast(MetricRecord.MetricGoalValue, 2)
    GOAL_UNSET = typing___cast(MetricRecord.MetricGoalValue, 0)
    GOAL_MINIMIZE = typing___cast(MetricRecord.MetricGoalValue, 1)
    GOAL_MAXIMIZE = typing___cast(MetricRecord.MetricGoalValue, 2)
    type___MetricGoal = MetricGoal
    name: typing___Text = ...
    glob_name: typing___Text = ...
    step_metric: typing___Text = ...
    step_metric_index: builtin___int = ...
    goal: type___MetricRecord.MetricGoalValue = ...

    @property
    def options(self) ->type___MetricOptions:
        ...

    @property
    def summary(self) ->type___MetricSummary:
        ...

    @property
    def _control(self) ->type___MetricControl:
        ...

    def __init__(self, *, name: typing___Optional[typing___Text]=None,
        glob_name: typing___Optional[typing___Text]=None, step_metric:
        typing___Optional[typing___Text]=None, step_metric_index:
        typing___Optional[builtin___int]=None, options: typing___Optional[
        type___MetricOptions]=None, summary: typing___Optional[
        type___MetricSummary]=None, goal: typing___Optional[
        type___MetricRecord.MetricGoalValue]=None, _control:
        typing___Optional[type___MetricControl]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'_control',
        b'_control', u'options', b'options', u'summary', b'summary']
        ) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'_control', b'_control', u'glob_name', b'glob_name', u'goal',
        b'goal', u'name', b'name', u'options', b'options', u'step_metric',
        b'step_metric', u'step_metric_index', b'step_metric_index',
        u'summary', b'summary']) ->None:
        ...


<mask token>


class MetricOptions(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    step_sync: builtin___bool = ...
    hidden: builtin___bool = ...
    defined: builtin___bool = ...

    def __init__(self, *, step_sync: typing___Optional[builtin___bool]=None,
        hidden: typing___Optional[builtin___bool]=None, defined:
        typing___Optional[builtin___bool]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'defined',
        b'defined', u'hidden', b'hidden', u'step_sync', b'step_sync']) ->None:
        ...


<mask token>


class MetricControl(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    overwrite: builtin___bool = ...

    def __init__(self, *, overwrite: typing___Optional[builtin___bool]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'overwrite', b'overwrite']) ->None:
        ...


<mask token>


class MetricSummary(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    min: builtin___bool = ...
    max: builtin___bool = ...
    mean: builtin___bool = ...
    best: builtin___bool = ...
    last: builtin___bool = ...
    none: builtin___bool = ...
    copy: builtin___bool = ...

    def __init__(self, *, min: typing___Optional[builtin___bool]=None, max:
        typing___Optional[builtin___bool]=None, mean: typing___Optional[
        builtin___bool]=None, best: typing___Optional[builtin___bool]=None,
        last: typing___Optional[builtin___bool]=None, none:
        typing___Optional[builtin___bool]=None, copy: typing___Optional[
        builtin___bool]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'best',
        b'best', u'copy', b'copy', u'last', b'last', u'max', b'max',
        u'mean', b'mean', u'min', b'min', u'none', b'none']) ->None:
        ...


<mask token>


class ConfigRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def update(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___ConfigItem]:
        ...

    @property
    def remove(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___ConfigItem]:
        ...

    def __init__(self, *, update: typing___Optional[typing___Iterable[
        type___ConfigItem]]=None, remove: typing___Optional[
        typing___Iterable[type___ConfigItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'remove',
        b'remove', u'update', b'update']) ->None:
        ...


<mask token>


class ConfigItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    (nested_key:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [typing___Text]) = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        nested_key: typing___Optional[typing___Iterable[typing___Text]]=
        None, value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'nested_key', b'nested_key', u'value_json', b'value_json']
        ) ->None:
        ...


<mask token>


class ConfigResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class SummaryRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def update(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___SummaryItem]:
        ...

    @property
    def remove(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___SummaryItem]:
        ...

    def __init__(self, *, update: typing___Optional[typing___Iterable[
        type___SummaryItem]]=None, remove: typing___Optional[
        typing___Iterable[type___SummaryItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'remove',
        b'remove', u'update', b'update']) ->None:
        ...


<mask token>


class SummaryItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    (nested_key:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [typing___Text]) = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        nested_key: typing___Optional[typing___Iterable[typing___Text]]=
        None, value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'nested_key', b'nested_key', u'value_json', b'value_json']
        ) ->None:
        ...


<mask token>


class SummaryResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class FilesRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def files(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___FilesItem]:
        ...

    def __init__(self, *, files: typing___Optional[typing___Iterable[
        type___FilesItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'files',
        b'files']) ->None:
        ...


<mask token>


class FilesItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    PolicyTypeValue = typing___NewType('PolicyTypeValue', builtin___int)
    type___PolicyTypeValue = PolicyTypeValue
    PolicyType: _PolicyType


    class _PolicyType(
        google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper
        [FilesItem.PolicyTypeValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        NOW = typing___cast(FilesItem.PolicyTypeValue, 0)
        END = typing___cast(FilesItem.PolicyTypeValue, 1)
        LIVE = typing___cast(FilesItem.PolicyTypeValue, 2)
    NOW = typing___cast(FilesItem.PolicyTypeValue, 0)
    END = typing___cast(FilesItem.PolicyTypeValue, 1)
    LIVE = typing___cast(FilesItem.PolicyTypeValue, 2)
    type___PolicyType = PolicyType
    path: typing___Text = ...
    policy: type___FilesItem.PolicyTypeValue = ...
    external_path: typing___Text = ...

    def __init__(self, *, path: typing___Optional[typing___Text]=None,
        policy: typing___Optional[type___FilesItem.PolicyTypeValue]=None,
        external_path: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'external_path', b'external_path', u'path', b'path', u'policy',
        b'policy']) ->None:
        ...


<mask token>


class StatsRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    StatsTypeValue = typing___NewType('StatsTypeValue', builtin___int)
    type___StatsTypeValue = StatsTypeValue
    StatsType: _StatsType


    class _StatsType(
        google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper
        [StatsRecord.StatsTypeValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        SYSTEM = typing___cast(StatsRecord.StatsTypeValue, 0)
    SYSTEM = typing___cast(StatsRecord.StatsTypeValue, 0)
    type___StatsType = StatsType
    stats_type: type___StatsRecord.StatsTypeValue = ...

    @property
    def timestamp(self) ->google___protobuf___timestamp_pb2___Timestamp:
        ...

    @property
    def item(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___StatsItem]:
        ...

    def __init__(self, *, stats_type: typing___Optional[type___StatsRecord.
        StatsTypeValue]=None, timestamp: typing___Optional[
        google___protobuf___timestamp_pb2___Timestamp]=None, item:
        typing___Optional[typing___Iterable[type___StatsItem]]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'timestamp',
        b'timestamp']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'item',
        b'item', u'stats_type', b'stats_type', u'timestamp', b'timestamp']
        ) ->None:
        ...


<mask token>


class StatsItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'value_json', b'value_json']) ->None:
        ...


<mask token>


class ArtifactRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    run_id: typing___Text = ...
    project: typing___Text = ...
    entity: typing___Text = ...
    type: typing___Text = ...
    name: typing___Text = ...
    digest: typing___Text = ...
    description: typing___Text = ...
    metadata: typing___Text = ...
    user_created: builtin___bool = ...
    use_after_commit: builtin___bool = ...
    (aliases:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [typing___Text]) = ...
    distributed_id: typing___Text = ...
    finalize: builtin___bool = ...
    client_id: typing___Text = ...
    sequence_client_id: typing___Text = ...
    incremental_beta1: builtin___bool = ...

    @property
    def manifest(self) ->type___ArtifactManifest:
        ...

    def __init__(self, *, run_id: typing___Optional[typing___Text]=None,
        project: typing___Optional[typing___Text]=None, entity:
        typing___Optional[typing___Text]=None, type: typing___Optional[
        typing___Text]=None, name: typing___Optional[typing___Text]=None,
        digest: typing___Optional[typing___Text]=None, description:
        typing___Optional[typing___Text]=None, metadata: typing___Optional[
        typing___Text]=None, user_created: typing___Optional[builtin___bool
        ]=None, use_after_commit: typing___Optional[builtin___bool]=None,
        aliases: typing___Optional[typing___Iterable[typing___Text]]=None,
        manifest: typing___Optional[type___ArtifactManifest]=None,
        distributed_id: typing___Optional[typing___Text]=None, finalize:
        typing___Optional[builtin___bool]=None, client_id:
        typing___Optional[typing___Text]=None, sequence_client_id:
        typing___Optional[typing___Text]=None, incremental_beta1:
        typing___Optional[builtin___bool]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'manifest',
        b'manifest']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'aliases',
        b'aliases', u'client_id', b'client_id', u'description',
        b'description', u'digest', b'digest', u'distributed_id',
        b'distributed_id', u'entity', b'entity', u'finalize', b'finalize',
        u'incremental_beta1', b'incremental_beta1', u'manifest',
        b'manifest', u'metadata', b'metadata', u'name', b'name', u'project',
        b'project', u'run_id', b'run_id', u'sequence_client_id',
        b'sequence_client_id', u'type', b'type', u'use_after_commit',
        b'use_after_commit', u'user_created', b'user_created']) ->None:
        ...


<mask token>


class ArtifactManifest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    version: builtin___int = ...
    storage_policy: typing___Text = ...

    @property
    def storage_policy_config(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___StoragePolicyConfigItem]:
        ...

    @property
    def contents(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___ArtifactManifestEntry]:
        ...

    def __init__(self, *, version: typing___Optional[builtin___int]=None,
        storage_policy: typing___Optional[typing___Text]=None,
        storage_policy_config: typing___Optional[typing___Iterable[
        type___StoragePolicyConfigItem]]=None, contents: typing___Optional[
        typing___Iterable[type___ArtifactManifestEntry]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'contents', b'contents', u'storage_policy', b'storage_policy',
        u'storage_policy_config', b'storage_policy_config', u'version',
        b'version']) ->None:
        ...


<mask token>


class ArtifactManifestEntry(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    path: typing___Text = ...
    digest: typing___Text = ...
    ref: typing___Text = ...
    size: builtin___int = ...
    mimetype: typing___Text = ...
    local_path: typing___Text = ...
    birth_artifact_id: typing___Text = ...

    @property
    def extra(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___ExtraItem]:
        ...

    def __init__(self, *, path: typing___Optional[typing___Text]=None,
        digest: typing___Optional[typing___Text]=None, ref:
        typing___Optional[typing___Text]=None, size: typing___Optional[
        builtin___int]=None, mimetype: typing___Optional[typing___Text]=
        None, local_path: typing___Optional[typing___Text]=None,
        birth_artifact_id: typing___Optional[typing___Text]=None, extra:
        typing___Optional[typing___Iterable[type___ExtraItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'birth_artifact_id', b'birth_artifact_id', u'digest', b'digest',
        u'extra', b'extra', u'local_path', b'local_path', u'mimetype',
        b'mimetype', u'path', b'path', u'ref', b'ref', u'size', b'size']
        ) ->None:
        ...


<mask token>


class ExtraItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'value_json', b'value_json']) ->None:
        ...


<mask token>


class StoragePolicyConfigItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'value_json', b'value_json']) ->None:
        ...


<mask token>


class TBRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    log_dir: typing___Text = ...
    save: builtin___bool = ...
    root_dir: typing___Text = ...

    def __init__(self, *, log_dir: typing___Optional[typing___Text]=None,
        save: typing___Optional[builtin___bool]=None, root_dir:
        typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'log_dir',
        b'log_dir', u'root_dir', b'root_dir', u'save', b'save']) ->None:
        ...


<mask token>


class AlertRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    title: typing___Text = ...
    text: typing___Text = ...
    level: typing___Text = ...
    wait_duration: builtin___int = ...

    def __init__(self, *, title: typing___Optional[typing___Text]=None,
        text: typing___Optional[typing___Text]=None, level:
        typing___Optional[typing___Text]=None, wait_duration:
        typing___Optional[builtin___int]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'level',
        b'level', u'text', b'text', u'title', b'title', u'wait_duration',
        b'wait_duration']) ->None:
        ...


<mask token>


class Request(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def stop_status(self) ->type___StopStatusRequest:
        ...

    @property
    def network_status(self) ->type___NetworkStatusRequest:
        ...

    @property
    def defer(self) ->type___DeferRequest:
        ...

    @property
    def get_summary(self) ->type___GetSummaryRequest:
        ...

    @property
    def login(self) ->type___LoginRequest:
        ...

    @property
    def pause(self) ->type___PauseRequest:
        ...

    @property
    def resume(self) ->type___ResumeRequest:
        ...

    @property
    def poll_exit(self) ->type___PollExitRequest:
        ...

    @property
    def sampled_history(self) ->type___SampledHistoryRequest:
        ...

    @property
    def run_start(self) ->type___RunStartRequest:
        ...

    @property
    def check_version(self) ->type___CheckVersionRequest:
        ...

    @property
    def log_artifact(self) ->type___LogArtifactRequest:
        ...

    @property
    def shutdown(self) ->type___ShutdownRequest:
        ...

    @property
    def test_inject(self) ->type___TestInjectRequest:
        ...

    def __init__(self, *, stop_status: typing___Optional[
        type___StopStatusRequest]=None, network_status: typing___Optional[
        type___NetworkStatusRequest]=None, defer: typing___Optional[
        type___DeferRequest]=None, get_summary: typing___Optional[
        type___GetSummaryRequest]=None, login: typing___Optional[
        type___LoginRequest]=None, pause: typing___Optional[
        type___PauseRequest]=None, resume: typing___Optional[
        type___ResumeRequest]=None, poll_exit: typing___Optional[
        type___PollExitRequest]=None, sampled_history: typing___Optional[
        type___SampledHistoryRequest]=None, run_start: typing___Optional[
        type___RunStartRequest]=None, check_version: typing___Optional[
        type___CheckVersionRequest]=None, log_artifact: typing___Optional[
        type___LogArtifactRequest]=None, shutdown: typing___Optional[
        type___ShutdownRequest]=None, test_inject: typing___Optional[
        type___TestInjectRequest]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[
        u'check_version', b'check_version', u'defer', b'defer',
        u'get_summary', b'get_summary', u'log_artifact', b'log_artifact',
        u'login', b'login', u'network_status', b'network_status', u'pause',
        b'pause', u'poll_exit', b'poll_exit', u'request_type',
        b'request_type', u'resume', b'resume', u'run_start', b'run_start',
        u'sampled_history', b'sampled_history', u'shutdown', b'shutdown',
        u'stop_status', b'stop_status', u'test_inject', b'test_inject']
        ) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'check_version', b'check_version', u'defer', b'defer',
        u'get_summary', b'get_summary', u'log_artifact', b'log_artifact',
        u'login', b'login', u'network_status', b'network_status', u'pause',
        b'pause', u'poll_exit', b'poll_exit', u'request_type',
        b'request_type', u'resume', b'resume', u'run_start', b'run_start',
        u'sampled_history', b'sampled_history', u'shutdown', b'shutdown',
        u'stop_status', b'stop_status', u'test_inject', b'test_inject']
        ) ->None:
        ...

    def WhichOneof(self, oneof_group: typing_extensions___Literal[
        u'request_type', b'request_type']) ->typing_extensions___Literal[
        'stop_status', 'network_status', 'defer', 'get_summary', 'login',
        'pause', 'resume', 'poll_exit', 'sampled_history', 'run_start',
        'check_version', 'log_artifact', 'shutdown', 'test_inject']:
        ...


<mask token>


class Response(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def stop_status_response(self) ->type___StopStatusResponse:
        ...

    @property
    def network_status_response(self) ->type___NetworkStatusResponse:
        ...

    @property
    def login_response(self) ->type___LoginResponse:
        ...

    @property
    def get_summary_response(self) ->type___GetSummaryResponse:
        ...

    @property
    def poll_exit_response(self) ->type___PollExitResponse:
        ...

    @property
    def sampled_history_response(self) ->type___SampledHistoryResponse:
        ...

    @property
    def run_start_response(self) ->type___RunStartResponse:
        ...

    @property
    def check_version_response(self) ->type___CheckVersionResponse:
        ...

    @property
    def log_artifact_response(self) ->type___LogArtifactResponse:
        ...

    @property
    def shutdown_response(self) ->type___ShutdownResponse:
        ...

    @property
    def test_inject_response(self) ->type___TestInjectResponse:
        ...

    def __init__(self, *, stop_status_response: typing___Optional[
        type___StopStatusResponse]=None, network_status_response:
        typing___Optional[type___NetworkStatusResponse]=None,
        login_response: typing___Optional[type___LoginResponse]=None,
        get_summary_response: typing___Optional[type___GetSummaryResponse]=
        None, poll_exit_response: typing___Optional[type___PollExitResponse
        ]=None, sampled_history_response: typing___Optional[
        type___SampledHistoryResponse]=None, run_start_response:
        typing___Optional[type___RunStartResponse]=None,
        check_version_response: typing___Optional[
        type___CheckVersionResponse]=None, log_artifact_response:
        typing___Optional[type___LogArtifactResponse]=None,
        shutdown_response: typing___Optional[type___ShutdownResponse]=None,
        test_inject_response: typing___Optional[type___TestInjectResponse]=None
        ) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[
        u'check_version_response', b'check_version_response',
        u'get_summary_response', b'get_summary_response',
        u'log_artifact_response', b'log_artifact_response',
        u'login_response', b'login_response', u'network_status_response',
        b'network_status_response', u'poll_exit_response',
        b'poll_exit_response', u'response_type', b'response_type',
        u'run_start_response', b'run_start_response',
        u'sampled_history_response', b'sampled_history_response',
        u'shutdown_response', b'shutdown_response', u'stop_status_response',
        b'stop_status_response', u'test_inject_response',
        b'test_inject_response']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'check_version_response', b'check_version_response',
        u'get_summary_response', b'get_summary_response',
        u'log_artifact_response', b'log_artifact_response',
        u'login_response', b'login_response', u'network_status_response',
        b'network_status_response', u'poll_exit_response',
        b'poll_exit_response', u'response_type', b'response_type',
        u'run_start_response', b'run_start_response',
        u'sampled_history_response', b'sampled_history_response',
        u'shutdown_response', b'shutdown_response', u'stop_status_response',
        b'stop_status_response', u'test_inject_response',
        b'test_inject_response']) ->None:
        ...

    def WhichOneof(self, oneof_group: typing_extensions___Literal[
        u'response_type', b'response_type']) ->typing_extensions___Literal[
        'stop_status_response', 'network_status_response', 'login_response',
        'get_summary_response', 'poll_exit_response',
        'sampled_history_response', 'run_start_response',
        'check_version_response', 'log_artifact_response',
        'shutdown_response', 'test_inject_response']:
        ...


<mask token>


class DeferRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    DeferStateValue = typing___NewType('DeferStateValue', builtin___int)
    type___DeferStateValue = DeferStateValue
    DeferState: _DeferState


    class _DeferState(
        google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper
        [DeferRequest.DeferStateValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        BEGIN = typing___cast(DeferRequest.DeferStateValue, 0)
        FLUSH_STATS = typing___cast(DeferRequest.DeferStateValue, 1)
        FLUSH_TB = typing___cast(DeferRequest.DeferStateValue, 2)
        FLUSH_SUM = typing___cast(DeferRequest.DeferStateValue, 3)
        FLUSH_DEBOUNCER = typing___cast(DeferRequest.DeferStateValue, 4)
        FLUSH_DIR = typing___cast(DeferRequest.DeferStateValue, 5)
        FLUSH_FP = typing___cast(DeferRequest.DeferStateValue, 6)
        FLUSH_FS = typing___cast(DeferRequest.DeferStateValue, 7)
        FLUSH_FINAL = typing___cast(DeferRequest.DeferStateValue, 8)
        END = typing___cast(DeferRequest.DeferStateValue, 9)
    BEGIN = typing___cast(DeferRequest.DeferStateValue, 0)
    FLUSH_STATS = typing___cast(DeferRequest.DeferStateValue, 1)
    FLUSH_TB = typing___cast(DeferRequest.DeferStateValue, 2)
    FLUSH_SUM = typing___cast(DeferRequest.DeferStateValue, 3)
    FLUSH_DEBOUNCER = typing___cast(DeferRequest.DeferStateValue, 4)
    FLUSH_DIR = typing___cast(DeferRequest.DeferStateValue, 5)
    FLUSH_FP = typing___cast(DeferRequest.DeferStateValue, 6)
    FLUSH_FS = typing___cast(DeferRequest.DeferStateValue, 7)
    FLUSH_FINAL = typing___cast(DeferRequest.DeferStateValue, 8)
    END = typing___cast(DeferRequest.DeferStateValue, 9)
    type___DeferState = DeferState
    state: type___DeferRequest.DeferStateValue = ...

    def __init__(self, *, state: typing___Optional[type___DeferRequest.
        DeferStateValue]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'state',
        b'state']) ->None:
        ...


<mask token>


class PauseRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class ResumeRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class LoginRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    api_key: typing___Text = ...

    def __init__(self, *, api_key: typing___Optional[typing___Text]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'api_key',
        b'api_key']) ->None:
        ...


<mask token>


class LoginResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    active_entity: typing___Text = ...

    def __init__(self, *, active_entity: typing___Optional[typing___Text]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'active_entity', b'active_entity']) ->None:
        ...


<mask token>


class GetSummaryRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class GetSummaryResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___SummaryItem]:
        ...

    def __init__(self, *, item: typing___Optional[typing___Iterable[
        type___SummaryItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'item',
        b'item']) ->None:
        ...


<mask token>


class StopStatusRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class StopStatusResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    run_should_stop: builtin___bool = ...

    def __init__(self, *, run_should_stop: typing___Optional[builtin___bool
        ]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'run_should_stop', b'run_should_stop']) ->None:
        ...


<mask token>


class NetworkStatusRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class NetworkStatusResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def network_responses(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___HttpResponse]:
        ...

    def __init__(self, *, network_responses: typing___Optional[
        typing___Iterable[type___HttpResponse]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'network_responses', b'network_responses']) ->None:
        ...


<mask token>


class HttpResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    http_status_code: builtin___int = ...
    http_response_text: typing___Text = ...

    def __init__(self, *, http_status_code: typing___Optional[builtin___int
        ]=None, http_response_text: typing___Optional[typing___Text]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'http_response_text', b'http_response_text', u'http_status_code',
        b'http_status_code']) ->None:
        ...


<mask token>


class PollExitRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class PollExitResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    done: builtin___bool = ...

    @property
    def exit_result(self) ->type___RunExitResult:
        ...

    @property
    def file_counts(self) ->type___FileCounts:
        ...

    @property
    def pusher_stats(self) ->type___FilePusherStats:
        ...

    @property
    def local_info(self) ->type___LocalInfo:
        ...

    def __init__(self, *, done: typing___Optional[builtin___bool]=None,
        exit_result: typing___Optional[type___RunExitResult]=None,
        file_counts: typing___Optional[type___FileCounts]=None,
        pusher_stats: typing___Optional[type___FilePusherStats]=None,
        local_info: typing___Optional[type___LocalInfo]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[
        u'exit_result', b'exit_result', u'file_counts', b'file_counts',
        u'local_info', b'local_info', u'pusher_stats', b'pusher_stats']
        ) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'done',
        b'done', u'exit_result', b'exit_result', u'file_counts',
        b'file_counts', u'local_info', b'local_info', u'pusher_stats',
        b'pusher_stats']) ->None:
        ...


<mask token>


class FileCounts(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    wandb_count: builtin___int = ...
    media_count: builtin___int = ...
    artifact_count: builtin___int = ...
    other_count: builtin___int = ...

    def __init__(self, *, wandb_count: typing___Optional[builtin___int]=
        None, media_count: typing___Optional[builtin___int]=None,
        artifact_count: typing___Optional[builtin___int]=None, other_count:
        typing___Optional[builtin___int]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'artifact_count', b'artifact_count', u'media_count',
        b'media_count', u'other_count', b'other_count', u'wandb_count',
        b'wandb_count']) ->None:
        ...


<mask token>


class FilePusherStats(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    uploaded_bytes: builtin___int = ...
    total_bytes: builtin___int = ...
    deduped_bytes: builtin___int = ...

    def __init__(self, *, uploaded_bytes: typing___Optional[builtin___int]=
        None, total_bytes: typing___Optional[builtin___int]=None,
        deduped_bytes: typing___Optional[builtin___int]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'deduped_bytes', b'deduped_bytes', u'total_bytes', b'total_bytes',
        u'uploaded_bytes', b'uploaded_bytes']) ->None:
        ...


<mask token>


class LocalInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    version: typing___Text = ...
    out_of_date: builtin___bool = ...

    def __init__(self, *, version: typing___Optional[typing___Text]=None,
        out_of_date: typing___Optional[builtin___bool]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'out_of_date', b'out_of_date', u'version', b'version']) ->None:
        ...


<mask token>


class ShutdownRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class ShutdownResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class TestInjectRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    handler_exc: builtin___bool = ...
    handler_exit: builtin___bool = ...
    handler_abort: builtin___bool = ...
    sender_exc: builtin___bool = ...
    sender_exit: builtin___bool = ...
    sender_abort: builtin___bool = ...
    req_exc: builtin___bool = ...
    req_exit: builtin___bool = ...
    req_abort: builtin___bool = ...
    resp_exc: builtin___bool = ...
    resp_exit: builtin___bool = ...
    resp_abort: builtin___bool = ...
    msg_drop: builtin___bool = ...
    msg_hang: builtin___bool = ...

    def __init__(self, *, handler_exc: typing___Optional[builtin___bool]=
        None, handler_exit: typing___Optional[builtin___bool]=None,
        handler_abort: typing___Optional[builtin___bool]=None, sender_exc:
        typing___Optional[builtin___bool]=None, sender_exit:
        typing___Optional[builtin___bool]=None, sender_abort:
        typing___Optional[builtin___bool]=None, req_exc: typing___Optional[
        builtin___bool]=None, req_exit: typing___Optional[builtin___bool]=
        None, req_abort: typing___Optional[builtin___bool]=None, resp_exc:
        typing___Optional[builtin___bool]=None, resp_exit:
        typing___Optional[builtin___bool]=None, resp_abort:
        typing___Optional[builtin___bool]=None, msg_drop: typing___Optional
        [builtin___bool]=None, msg_hang: typing___Optional[builtin___bool]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'handler_abort', b'handler_abort', u'handler_exc', b'handler_exc',
        u'handler_exit', b'handler_exit', u'msg_drop', b'msg_drop',
        u'msg_hang', b'msg_hang', u'req_abort', b'req_abort', u'req_exc',
        b'req_exc', u'req_exit', b'req_exit', u'resp_abort', b'resp_abort',
        u'resp_exc', b'resp_exc', u'resp_exit', b'resp_exit',
        u'sender_abort', b'sender_abort', u'sender_exc', b'sender_exc',
        u'sender_exit', b'sender_exit']) ->None:
        ...


<mask token>


class TestInjectResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class SampledHistoryRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class SampledHistoryItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    (nested_key:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [typing___Text]) = ...
    (values_float:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [builtin___float]) = ...
    (values_int:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [builtin___int]) = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        nested_key: typing___Optional[typing___Iterable[typing___Text]]=
        None, values_float: typing___Optional[typing___Iterable[
        builtin___float]]=None, values_int: typing___Optional[
        typing___Iterable[builtin___int]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'nested_key', b'nested_key', u'values_float',
        b'values_float', u'values_int', b'values_int']) ->None:
        ...


<mask token>


class SampledHistoryResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___SampledHistoryItem]:
        ...

    def __init__(self, *, item: typing___Optional[typing___Iterable[
        type___SampledHistoryItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'item',
        b'item']) ->None:
        ...


<mask token>


class RunStartRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def run(self) ->type___RunRecord:
        ...

    def __init__(self, *, run: typing___Optional[type___RunRecord]=None
        ) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'run', b'run']
        ) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'run',
        b'run']) ->None:
        ...


<mask token>


class RunStartResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class CheckVersionRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    current_version: typing___Text = ...

    def __init__(self, *, current_version: typing___Optional[typing___Text]
        =None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'current_version', b'current_version']) ->None:
        ...


<mask token>


class CheckVersionResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    upgrade_message: typing___Text = ...
    yank_message: typing___Text = ...
    delete_message: typing___Text = ...

    def __init__(self, *, upgrade_message: typing___Optional[typing___Text]
        =None, yank_message: typing___Optional[typing___Text]=None,
        delete_message: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'delete_message', b'delete_message', u'upgrade_message',
        b'upgrade_message', u'yank_message', b'yank_message']) ->None:
        ...


<mask token>


class LogArtifactRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def artifact(self) ->type___ArtifactRecord:
        ...

    def __init__(self, *, artifact: typing___Optional[type___ArtifactRecord
        ]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'artifact',
        b'artifact']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'artifact', b'artifact']) ->None:
        ...


<mask token>


class LogArtifactResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    artifact_id: typing___Text = ...
    error_message: typing___Text = ...

    def __init__(self, *, artifact_id: typing___Optional[typing___Text]=
        None, error_message: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'artifact_id', b'artifact_id', u'error_message', b'error_message']
        ) ->None:
        ...


<mask token>

<mask token>


class SettingsRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    <mask token>

    def __init__(self, *, item: typing___Optional[typing___Iterable[
        type___SettingsItem]]=None) ->None:
        ...
    <mask token>


<mask token>


class SettingsItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'value_json', b'value_json']) ->None:
        ...


<mask token>


class HistoryStep(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    num: builtin___int = ...

    def __init__(self, *, num: typing___Optional[builtin___int]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'num',
        b'num']) ->None:
        ...


<mask token>


class HistoryRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___HistoryItem]:
        ...

    @property
    def step(self) ->type___HistoryStep:
        ...

    def __init__(self, *, item: typing___Optional[typing___Iterable[
        type___HistoryItem]]=None, step: typing___Optional[
        type___HistoryStep]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'step',
        b'step']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'item',
        b'item', u'step', b'step']) ->None:
        ...


<mask token>


class HistoryItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    (nested_key:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [typing___Text]) = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        nested_key: typing___Optional[typing___Iterable[typing___Text]]=
        None, value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'nested_key', b'nested_key', u'value_json', b'value_json']
        ) ->None:
        ...


<mask token>


class HistoryResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class OutputRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    OutputTypeValue = typing___NewType('OutputTypeValue', builtin___int)
    type___OutputTypeValue = OutputTypeValue
    OutputType: _OutputType


    class _OutputType(
        google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper
        [OutputRecord.OutputTypeValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        STDERR = typing___cast(OutputRecord.OutputTypeValue, 0)
        STDOUT = typing___cast(OutputRecord.OutputTypeValue, 1)
    STDERR = typing___cast(OutputRecord.OutputTypeValue, 0)
    STDOUT = typing___cast(OutputRecord.OutputTypeValue, 1)
    type___OutputType = OutputType
    output_type: type___OutputRecord.OutputTypeValue = ...
    line: typing___Text = ...

    @property
    def timestamp(self) ->google___protobuf___timestamp_pb2___Timestamp:
        ...

    def __init__(self, *, output_type: typing___Optional[
        type___OutputRecord.OutputTypeValue]=None, timestamp:
        typing___Optional[google___protobuf___timestamp_pb2___Timestamp]=
        None, line: typing___Optional[typing___Text]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'timestamp',
        b'timestamp']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'line',
        b'line', u'output_type', b'output_type', u'timestamp', b'timestamp']
        ) ->None:
        ...


<mask token>


class OutputResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class MetricRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    MetricGoalValue = typing___NewType('MetricGoalValue', builtin___int)
    type___MetricGoalValue = MetricGoalValue
    MetricGoal: _MetricGoal


    class _MetricGoal(
        google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper
        [MetricRecord.MetricGoalValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        GOAL_UNSET = typing___cast(MetricRecord.MetricGoalValue, 0)
        GOAL_MINIMIZE = typing___cast(MetricRecord.MetricGoalValue, 1)
        GOAL_MAXIMIZE = typing___cast(MetricRecord.MetricGoalValue, 2)
    GOAL_UNSET = typing___cast(MetricRecord.MetricGoalValue, 0)
    GOAL_MINIMIZE = typing___cast(MetricRecord.MetricGoalValue, 1)
    GOAL_MAXIMIZE = typing___cast(MetricRecord.MetricGoalValue, 2)
    type___MetricGoal = MetricGoal
    name: typing___Text = ...
    glob_name: typing___Text = ...
    step_metric: typing___Text = ...
    step_metric_index: builtin___int = ...
    goal: type___MetricRecord.MetricGoalValue = ...

    @property
    def options(self) ->type___MetricOptions:
        ...

    @property
    def summary(self) ->type___MetricSummary:
        ...

    @property
    def _control(self) ->type___MetricControl:
        ...

    def __init__(self, *, name: typing___Optional[typing___Text]=None,
        glob_name: typing___Optional[typing___Text]=None, step_metric:
        typing___Optional[typing___Text]=None, step_metric_index:
        typing___Optional[builtin___int]=None, options: typing___Optional[
        type___MetricOptions]=None, summary: typing___Optional[
        type___MetricSummary]=None, goal: typing___Optional[
        type___MetricRecord.MetricGoalValue]=None, _control:
        typing___Optional[type___MetricControl]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'_control',
        b'_control', u'options', b'options', u'summary', b'summary']
        ) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'_control', b'_control', u'glob_name', b'glob_name', u'goal',
        b'goal', u'name', b'name', u'options', b'options', u'step_metric',
        b'step_metric', u'step_metric_index', b'step_metric_index',
        u'summary', b'summary']) ->None:
        ...


<mask token>


class MetricOptions(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    step_sync: builtin___bool = ...
    hidden: builtin___bool = ...
    defined: builtin___bool = ...

    def __init__(self, *, step_sync: typing___Optional[builtin___bool]=None,
        hidden: typing___Optional[builtin___bool]=None, defined:
        typing___Optional[builtin___bool]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'defined',
        b'defined', u'hidden', b'hidden', u'step_sync', b'step_sync']) ->None:
        ...


<mask token>


class MetricControl(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    overwrite: builtin___bool = ...

    def __init__(self, *, overwrite: typing___Optional[builtin___bool]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'overwrite', b'overwrite']) ->None:
        ...


<mask token>


class MetricSummary(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    min: builtin___bool = ...
    max: builtin___bool = ...
    mean: builtin___bool = ...
    best: builtin___bool = ...
    last: builtin___bool = ...
    none: builtin___bool = ...
    copy: builtin___bool = ...

    def __init__(self, *, min: typing___Optional[builtin___bool]=None, max:
        typing___Optional[builtin___bool]=None, mean: typing___Optional[
        builtin___bool]=None, best: typing___Optional[builtin___bool]=None,
        last: typing___Optional[builtin___bool]=None, none:
        typing___Optional[builtin___bool]=None, copy: typing___Optional[
        builtin___bool]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'best',
        b'best', u'copy', b'copy', u'last', b'last', u'max', b'max',
        u'mean', b'mean', u'min', b'min', u'none', b'none']) ->None:
        ...


<mask token>


class ConfigRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def update(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___ConfigItem]:
        ...

    @property
    def remove(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___ConfigItem]:
        ...

    def __init__(self, *, update: typing___Optional[typing___Iterable[
        type___ConfigItem]]=None, remove: typing___Optional[
        typing___Iterable[type___ConfigItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'remove',
        b'remove', u'update', b'update']) ->None:
        ...


<mask token>


class ConfigItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    (nested_key:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [typing___Text]) = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        nested_key: typing___Optional[typing___Iterable[typing___Text]]=
        None, value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'nested_key', b'nested_key', u'value_json', b'value_json']
        ) ->None:
        ...


<mask token>


class ConfigResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class SummaryRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def update(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___SummaryItem]:
        ...

    @property
    def remove(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___SummaryItem]:
        ...

    def __init__(self, *, update: typing___Optional[typing___Iterable[
        type___SummaryItem]]=None, remove: typing___Optional[
        typing___Iterable[type___SummaryItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'remove',
        b'remove', u'update', b'update']) ->None:
        ...


<mask token>


class SummaryItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    (nested_key:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [typing___Text]) = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        nested_key: typing___Optional[typing___Iterable[typing___Text]]=
        None, value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'nested_key', b'nested_key', u'value_json', b'value_json']
        ) ->None:
        ...


<mask token>


class SummaryResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class FilesRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def files(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___FilesItem]:
        ...

    def __init__(self, *, files: typing___Optional[typing___Iterable[
        type___FilesItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'files',
        b'files']) ->None:
        ...


<mask token>


class FilesItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    PolicyTypeValue = typing___NewType('PolicyTypeValue', builtin___int)
    type___PolicyTypeValue = PolicyTypeValue
    PolicyType: _PolicyType


    class _PolicyType(
        google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper
        [FilesItem.PolicyTypeValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        NOW = typing___cast(FilesItem.PolicyTypeValue, 0)
        END = typing___cast(FilesItem.PolicyTypeValue, 1)
        LIVE = typing___cast(FilesItem.PolicyTypeValue, 2)
    NOW = typing___cast(FilesItem.PolicyTypeValue, 0)
    END = typing___cast(FilesItem.PolicyTypeValue, 1)
    LIVE = typing___cast(FilesItem.PolicyTypeValue, 2)
    type___PolicyType = PolicyType
    path: typing___Text = ...
    policy: type___FilesItem.PolicyTypeValue = ...
    external_path: typing___Text = ...

    def __init__(self, *, path: typing___Optional[typing___Text]=None,
        policy: typing___Optional[type___FilesItem.PolicyTypeValue]=None,
        external_path: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'external_path', b'external_path', u'path', b'path', u'policy',
        b'policy']) ->None:
        ...


<mask token>


class StatsRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    StatsTypeValue = typing___NewType('StatsTypeValue', builtin___int)
    type___StatsTypeValue = StatsTypeValue
    StatsType: _StatsType


    class _StatsType(
        google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper
        [StatsRecord.StatsTypeValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        SYSTEM = typing___cast(StatsRecord.StatsTypeValue, 0)
    SYSTEM = typing___cast(StatsRecord.StatsTypeValue, 0)
    type___StatsType = StatsType
    stats_type: type___StatsRecord.StatsTypeValue = ...

    @property
    def timestamp(self) ->google___protobuf___timestamp_pb2___Timestamp:
        ...

    @property
    def item(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___StatsItem]:
        ...

    def __init__(self, *, stats_type: typing___Optional[type___StatsRecord.
        StatsTypeValue]=None, timestamp: typing___Optional[
        google___protobuf___timestamp_pb2___Timestamp]=None, item:
        typing___Optional[typing___Iterable[type___StatsItem]]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'timestamp',
        b'timestamp']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'item',
        b'item', u'stats_type', b'stats_type', u'timestamp', b'timestamp']
        ) ->None:
        ...


<mask token>


class StatsItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'value_json', b'value_json']) ->None:
        ...


<mask token>


class ArtifactRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    run_id: typing___Text = ...
    project: typing___Text = ...
    entity: typing___Text = ...
    type: typing___Text = ...
    name: typing___Text = ...
    digest: typing___Text = ...
    description: typing___Text = ...
    metadata: typing___Text = ...
    user_created: builtin___bool = ...
    use_after_commit: builtin___bool = ...
    (aliases:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [typing___Text]) = ...
    distributed_id: typing___Text = ...
    finalize: builtin___bool = ...
    client_id: typing___Text = ...
    sequence_client_id: typing___Text = ...
    incremental_beta1: builtin___bool = ...

    @property
    def manifest(self) ->type___ArtifactManifest:
        ...

    def __init__(self, *, run_id: typing___Optional[typing___Text]=None,
        project: typing___Optional[typing___Text]=None, entity:
        typing___Optional[typing___Text]=None, type: typing___Optional[
        typing___Text]=None, name: typing___Optional[typing___Text]=None,
        digest: typing___Optional[typing___Text]=None, description:
        typing___Optional[typing___Text]=None, metadata: typing___Optional[
        typing___Text]=None, user_created: typing___Optional[builtin___bool
        ]=None, use_after_commit: typing___Optional[builtin___bool]=None,
        aliases: typing___Optional[typing___Iterable[typing___Text]]=None,
        manifest: typing___Optional[type___ArtifactManifest]=None,
        distributed_id: typing___Optional[typing___Text]=None, finalize:
        typing___Optional[builtin___bool]=None, client_id:
        typing___Optional[typing___Text]=None, sequence_client_id:
        typing___Optional[typing___Text]=None, incremental_beta1:
        typing___Optional[builtin___bool]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'manifest',
        b'manifest']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'aliases',
        b'aliases', u'client_id', b'client_id', u'description',
        b'description', u'digest', b'digest', u'distributed_id',
        b'distributed_id', u'entity', b'entity', u'finalize', b'finalize',
        u'incremental_beta1', b'incremental_beta1', u'manifest',
        b'manifest', u'metadata', b'metadata', u'name', b'name', u'project',
        b'project', u'run_id', b'run_id', u'sequence_client_id',
        b'sequence_client_id', u'type', b'type', u'use_after_commit',
        b'use_after_commit', u'user_created', b'user_created']) ->None:
        ...


<mask token>


class ArtifactManifest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    version: builtin___int = ...
    storage_policy: typing___Text = ...

    @property
    def storage_policy_config(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___StoragePolicyConfigItem]:
        ...

    @property
    def contents(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___ArtifactManifestEntry]:
        ...

    def __init__(self, *, version: typing___Optional[builtin___int]=None,
        storage_policy: typing___Optional[typing___Text]=None,
        storage_policy_config: typing___Optional[typing___Iterable[
        type___StoragePolicyConfigItem]]=None, contents: typing___Optional[
        typing___Iterable[type___ArtifactManifestEntry]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'contents', b'contents', u'storage_policy', b'storage_policy',
        u'storage_policy_config', b'storage_policy_config', u'version',
        b'version']) ->None:
        ...


<mask token>


class ArtifactManifestEntry(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    path: typing___Text = ...
    digest: typing___Text = ...
    ref: typing___Text = ...
    size: builtin___int = ...
    mimetype: typing___Text = ...
    local_path: typing___Text = ...
    birth_artifact_id: typing___Text = ...

    @property
    def extra(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___ExtraItem]:
        ...

    def __init__(self, *, path: typing___Optional[typing___Text]=None,
        digest: typing___Optional[typing___Text]=None, ref:
        typing___Optional[typing___Text]=None, size: typing___Optional[
        builtin___int]=None, mimetype: typing___Optional[typing___Text]=
        None, local_path: typing___Optional[typing___Text]=None,
        birth_artifact_id: typing___Optional[typing___Text]=None, extra:
        typing___Optional[typing___Iterable[type___ExtraItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'birth_artifact_id', b'birth_artifact_id', u'digest', b'digest',
        u'extra', b'extra', u'local_path', b'local_path', u'mimetype',
        b'mimetype', u'path', b'path', u'ref', b'ref', u'size', b'size']
        ) ->None:
        ...


<mask token>


class ExtraItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'value_json', b'value_json']) ->None:
        ...


<mask token>


class StoragePolicyConfigItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'value_json', b'value_json']) ->None:
        ...


<mask token>


class TBRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    log_dir: typing___Text = ...
    save: builtin___bool = ...
    root_dir: typing___Text = ...

    def __init__(self, *, log_dir: typing___Optional[typing___Text]=None,
        save: typing___Optional[builtin___bool]=None, root_dir:
        typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'log_dir',
        b'log_dir', u'root_dir', b'root_dir', u'save', b'save']) ->None:
        ...


<mask token>


class AlertRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    title: typing___Text = ...
    text: typing___Text = ...
    level: typing___Text = ...
    wait_duration: builtin___int = ...

    def __init__(self, *, title: typing___Optional[typing___Text]=None,
        text: typing___Optional[typing___Text]=None, level:
        typing___Optional[typing___Text]=None, wait_duration:
        typing___Optional[builtin___int]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'level',
        b'level', u'text', b'text', u'title', b'title', u'wait_duration',
        b'wait_duration']) ->None:
        ...


<mask token>


class Request(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def stop_status(self) ->type___StopStatusRequest:
        ...

    @property
    def network_status(self) ->type___NetworkStatusRequest:
        ...

    @property
    def defer(self) ->type___DeferRequest:
        ...

    @property
    def get_summary(self) ->type___GetSummaryRequest:
        ...

    @property
    def login(self) ->type___LoginRequest:
        ...

    @property
    def pause(self) ->type___PauseRequest:
        ...

    @property
    def resume(self) ->type___ResumeRequest:
        ...

    @property
    def poll_exit(self) ->type___PollExitRequest:
        ...

    @property
    def sampled_history(self) ->type___SampledHistoryRequest:
        ...

    @property
    def run_start(self) ->type___RunStartRequest:
        ...

    @property
    def check_version(self) ->type___CheckVersionRequest:
        ...

    @property
    def log_artifact(self) ->type___LogArtifactRequest:
        ...

    @property
    def shutdown(self) ->type___ShutdownRequest:
        ...

    @property
    def test_inject(self) ->type___TestInjectRequest:
        ...

    def __init__(self, *, stop_status: typing___Optional[
        type___StopStatusRequest]=None, network_status: typing___Optional[
        type___NetworkStatusRequest]=None, defer: typing___Optional[
        type___DeferRequest]=None, get_summary: typing___Optional[
        type___GetSummaryRequest]=None, login: typing___Optional[
        type___LoginRequest]=None, pause: typing___Optional[
        type___PauseRequest]=None, resume: typing___Optional[
        type___ResumeRequest]=None, poll_exit: typing___Optional[
        type___PollExitRequest]=None, sampled_history: typing___Optional[
        type___SampledHistoryRequest]=None, run_start: typing___Optional[
        type___RunStartRequest]=None, check_version: typing___Optional[
        type___CheckVersionRequest]=None, log_artifact: typing___Optional[
        type___LogArtifactRequest]=None, shutdown: typing___Optional[
        type___ShutdownRequest]=None, test_inject: typing___Optional[
        type___TestInjectRequest]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[
        u'check_version', b'check_version', u'defer', b'defer',
        u'get_summary', b'get_summary', u'log_artifact', b'log_artifact',
        u'login', b'login', u'network_status', b'network_status', u'pause',
        b'pause', u'poll_exit', b'poll_exit', u'request_type',
        b'request_type', u'resume', b'resume', u'run_start', b'run_start',
        u'sampled_history', b'sampled_history', u'shutdown', b'shutdown',
        u'stop_status', b'stop_status', u'test_inject', b'test_inject']
        ) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'check_version', b'check_version', u'defer', b'defer',
        u'get_summary', b'get_summary', u'log_artifact', b'log_artifact',
        u'login', b'login', u'network_status', b'network_status', u'pause',
        b'pause', u'poll_exit', b'poll_exit', u'request_type',
        b'request_type', u'resume', b'resume', u'run_start', b'run_start',
        u'sampled_history', b'sampled_history', u'shutdown', b'shutdown',
        u'stop_status', b'stop_status', u'test_inject', b'test_inject']
        ) ->None:
        ...

    def WhichOneof(self, oneof_group: typing_extensions___Literal[
        u'request_type', b'request_type']) ->typing_extensions___Literal[
        'stop_status', 'network_status', 'defer', 'get_summary', 'login',
        'pause', 'resume', 'poll_exit', 'sampled_history', 'run_start',
        'check_version', 'log_artifact', 'shutdown', 'test_inject']:
        ...


<mask token>


class Response(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def stop_status_response(self) ->type___StopStatusResponse:
        ...

    @property
    def network_status_response(self) ->type___NetworkStatusResponse:
        ...

    @property
    def login_response(self) ->type___LoginResponse:
        ...

    @property
    def get_summary_response(self) ->type___GetSummaryResponse:
        ...

    @property
    def poll_exit_response(self) ->type___PollExitResponse:
        ...

    @property
    def sampled_history_response(self) ->type___SampledHistoryResponse:
        ...

    @property
    def run_start_response(self) ->type___RunStartResponse:
        ...

    @property
    def check_version_response(self) ->type___CheckVersionResponse:
        ...

    @property
    def log_artifact_response(self) ->type___LogArtifactResponse:
        ...

    @property
    def shutdown_response(self) ->type___ShutdownResponse:
        ...

    @property
    def test_inject_response(self) ->type___TestInjectResponse:
        ...

    def __init__(self, *, stop_status_response: typing___Optional[
        type___StopStatusResponse]=None, network_status_response:
        typing___Optional[type___NetworkStatusResponse]=None,
        login_response: typing___Optional[type___LoginResponse]=None,
        get_summary_response: typing___Optional[type___GetSummaryResponse]=
        None, poll_exit_response: typing___Optional[type___PollExitResponse
        ]=None, sampled_history_response: typing___Optional[
        type___SampledHistoryResponse]=None, run_start_response:
        typing___Optional[type___RunStartResponse]=None,
        check_version_response: typing___Optional[
        type___CheckVersionResponse]=None, log_artifact_response:
        typing___Optional[type___LogArtifactResponse]=None,
        shutdown_response: typing___Optional[type___ShutdownResponse]=None,
        test_inject_response: typing___Optional[type___TestInjectResponse]=None
        ) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[
        u'check_version_response', b'check_version_response',
        u'get_summary_response', b'get_summary_response',
        u'log_artifact_response', b'log_artifact_response',
        u'login_response', b'login_response', u'network_status_response',
        b'network_status_response', u'poll_exit_response',
        b'poll_exit_response', u'response_type', b'response_type',
        u'run_start_response', b'run_start_response',
        u'sampled_history_response', b'sampled_history_response',
        u'shutdown_response', b'shutdown_response', u'stop_status_response',
        b'stop_status_response', u'test_inject_response',
        b'test_inject_response']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'check_version_response', b'check_version_response',
        u'get_summary_response', b'get_summary_response',
        u'log_artifact_response', b'log_artifact_response',
        u'login_response', b'login_response', u'network_status_response',
        b'network_status_response', u'poll_exit_response',
        b'poll_exit_response', u'response_type', b'response_type',
        u'run_start_response', b'run_start_response',
        u'sampled_history_response', b'sampled_history_response',
        u'shutdown_response', b'shutdown_response', u'stop_status_response',
        b'stop_status_response', u'test_inject_response',
        b'test_inject_response']) ->None:
        ...

    def WhichOneof(self, oneof_group: typing_extensions___Literal[
        u'response_type', b'response_type']) ->typing_extensions___Literal[
        'stop_status_response', 'network_status_response', 'login_response',
        'get_summary_response', 'poll_exit_response',
        'sampled_history_response', 'run_start_response',
        'check_version_response', 'log_artifact_response',
        'shutdown_response', 'test_inject_response']:
        ...


<mask token>


class DeferRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    DeferStateValue = typing___NewType('DeferStateValue', builtin___int)
    type___DeferStateValue = DeferStateValue
    DeferState: _DeferState


    class _DeferState(
        google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper
        [DeferRequest.DeferStateValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        BEGIN = typing___cast(DeferRequest.DeferStateValue, 0)
        FLUSH_STATS = typing___cast(DeferRequest.DeferStateValue, 1)
        FLUSH_TB = typing___cast(DeferRequest.DeferStateValue, 2)
        FLUSH_SUM = typing___cast(DeferRequest.DeferStateValue, 3)
        FLUSH_DEBOUNCER = typing___cast(DeferRequest.DeferStateValue, 4)
        FLUSH_DIR = typing___cast(DeferRequest.DeferStateValue, 5)
        FLUSH_FP = typing___cast(DeferRequest.DeferStateValue, 6)
        FLUSH_FS = typing___cast(DeferRequest.DeferStateValue, 7)
        FLUSH_FINAL = typing___cast(DeferRequest.DeferStateValue, 8)
        END = typing___cast(DeferRequest.DeferStateValue, 9)
    BEGIN = typing___cast(DeferRequest.DeferStateValue, 0)
    FLUSH_STATS = typing___cast(DeferRequest.DeferStateValue, 1)
    FLUSH_TB = typing___cast(DeferRequest.DeferStateValue, 2)
    FLUSH_SUM = typing___cast(DeferRequest.DeferStateValue, 3)
    FLUSH_DEBOUNCER = typing___cast(DeferRequest.DeferStateValue, 4)
    FLUSH_DIR = typing___cast(DeferRequest.DeferStateValue, 5)
    FLUSH_FP = typing___cast(DeferRequest.DeferStateValue, 6)
    FLUSH_FS = typing___cast(DeferRequest.DeferStateValue, 7)
    FLUSH_FINAL = typing___cast(DeferRequest.DeferStateValue, 8)
    END = typing___cast(DeferRequest.DeferStateValue, 9)
    type___DeferState = DeferState
    state: type___DeferRequest.DeferStateValue = ...

    def __init__(self, *, state: typing___Optional[type___DeferRequest.
        DeferStateValue]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'state',
        b'state']) ->None:
        ...


<mask token>


class PauseRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class ResumeRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class LoginRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    api_key: typing___Text = ...

    def __init__(self, *, api_key: typing___Optional[typing___Text]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'api_key',
        b'api_key']) ->None:
        ...


<mask token>


class LoginResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    active_entity: typing___Text = ...

    def __init__(self, *, active_entity: typing___Optional[typing___Text]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'active_entity', b'active_entity']) ->None:
        ...


<mask token>


class GetSummaryRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class GetSummaryResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___SummaryItem]:
        ...

    def __init__(self, *, item: typing___Optional[typing___Iterable[
        type___SummaryItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'item',
        b'item']) ->None:
        ...


<mask token>


class StopStatusRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class StopStatusResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    run_should_stop: builtin___bool = ...

    def __init__(self, *, run_should_stop: typing___Optional[builtin___bool
        ]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'run_should_stop', b'run_should_stop']) ->None:
        ...


<mask token>


class NetworkStatusRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class NetworkStatusResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def network_responses(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___HttpResponse]:
        ...

    def __init__(self, *, network_responses: typing___Optional[
        typing___Iterable[type___HttpResponse]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'network_responses', b'network_responses']) ->None:
        ...


<mask token>


class HttpResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    http_status_code: builtin___int = ...
    http_response_text: typing___Text = ...

    def __init__(self, *, http_status_code: typing___Optional[builtin___int
        ]=None, http_response_text: typing___Optional[typing___Text]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'http_response_text', b'http_response_text', u'http_status_code',
        b'http_status_code']) ->None:
        ...


<mask token>


class PollExitRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class PollExitResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    done: builtin___bool = ...

    @property
    def exit_result(self) ->type___RunExitResult:
        ...

    @property
    def file_counts(self) ->type___FileCounts:
        ...

    @property
    def pusher_stats(self) ->type___FilePusherStats:
        ...

    @property
    def local_info(self) ->type___LocalInfo:
        ...

    def __init__(self, *, done: typing___Optional[builtin___bool]=None,
        exit_result: typing___Optional[type___RunExitResult]=None,
        file_counts: typing___Optional[type___FileCounts]=None,
        pusher_stats: typing___Optional[type___FilePusherStats]=None,
        local_info: typing___Optional[type___LocalInfo]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[
        u'exit_result', b'exit_result', u'file_counts', b'file_counts',
        u'local_info', b'local_info', u'pusher_stats', b'pusher_stats']
        ) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'done',
        b'done', u'exit_result', b'exit_result', u'file_counts',
        b'file_counts', u'local_info', b'local_info', u'pusher_stats',
        b'pusher_stats']) ->None:
        ...


<mask token>


class FileCounts(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    wandb_count: builtin___int = ...
    media_count: builtin___int = ...
    artifact_count: builtin___int = ...
    other_count: builtin___int = ...

    def __init__(self, *, wandb_count: typing___Optional[builtin___int]=
        None, media_count: typing___Optional[builtin___int]=None,
        artifact_count: typing___Optional[builtin___int]=None, other_count:
        typing___Optional[builtin___int]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'artifact_count', b'artifact_count', u'media_count',
        b'media_count', u'other_count', b'other_count', u'wandb_count',
        b'wandb_count']) ->None:
        ...


<mask token>


class FilePusherStats(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    uploaded_bytes: builtin___int = ...
    total_bytes: builtin___int = ...
    deduped_bytes: builtin___int = ...

    def __init__(self, *, uploaded_bytes: typing___Optional[builtin___int]=
        None, total_bytes: typing___Optional[builtin___int]=None,
        deduped_bytes: typing___Optional[builtin___int]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'deduped_bytes', b'deduped_bytes', u'total_bytes', b'total_bytes',
        u'uploaded_bytes', b'uploaded_bytes']) ->None:
        ...


<mask token>


class LocalInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    version: typing___Text = ...
    out_of_date: builtin___bool = ...

    def __init__(self, *, version: typing___Optional[typing___Text]=None,
        out_of_date: typing___Optional[builtin___bool]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'out_of_date', b'out_of_date', u'version', b'version']) ->None:
        ...


<mask token>


class ShutdownRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class ShutdownResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class TestInjectRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    handler_exc: builtin___bool = ...
    handler_exit: builtin___bool = ...
    handler_abort: builtin___bool = ...
    sender_exc: builtin___bool = ...
    sender_exit: builtin___bool = ...
    sender_abort: builtin___bool = ...
    req_exc: builtin___bool = ...
    req_exit: builtin___bool = ...
    req_abort: builtin___bool = ...
    resp_exc: builtin___bool = ...
    resp_exit: builtin___bool = ...
    resp_abort: builtin___bool = ...
    msg_drop: builtin___bool = ...
    msg_hang: builtin___bool = ...

    def __init__(self, *, handler_exc: typing___Optional[builtin___bool]=
        None, handler_exit: typing___Optional[builtin___bool]=None,
        handler_abort: typing___Optional[builtin___bool]=None, sender_exc:
        typing___Optional[builtin___bool]=None, sender_exit:
        typing___Optional[builtin___bool]=None, sender_abort:
        typing___Optional[builtin___bool]=None, req_exc: typing___Optional[
        builtin___bool]=None, req_exit: typing___Optional[builtin___bool]=
        None, req_abort: typing___Optional[builtin___bool]=None, resp_exc:
        typing___Optional[builtin___bool]=None, resp_exit:
        typing___Optional[builtin___bool]=None, resp_abort:
        typing___Optional[builtin___bool]=None, msg_drop: typing___Optional
        [builtin___bool]=None, msg_hang: typing___Optional[builtin___bool]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'handler_abort', b'handler_abort', u'handler_exc', b'handler_exc',
        u'handler_exit', b'handler_exit', u'msg_drop', b'msg_drop',
        u'msg_hang', b'msg_hang', u'req_abort', b'req_abort', u'req_exc',
        b'req_exc', u'req_exit', b'req_exit', u'resp_abort', b'resp_abort',
        u'resp_exc', b'resp_exc', u'resp_exit', b'resp_exit',
        u'sender_abort', b'sender_abort', u'sender_exc', b'sender_exc',
        u'sender_exit', b'sender_exit']) ->None:
        ...


<mask token>


class TestInjectResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class SampledHistoryRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class SampledHistoryItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    (nested_key:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [typing___Text]) = ...
    (values_float:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [builtin___float]) = ...
    (values_int:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [builtin___int]) = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        nested_key: typing___Optional[typing___Iterable[typing___Text]]=
        None, values_float: typing___Optional[typing___Iterable[
        builtin___float]]=None, values_int: typing___Optional[
        typing___Iterable[builtin___int]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'nested_key', b'nested_key', u'values_float',
        b'values_float', u'values_int', b'values_int']) ->None:
        ...


<mask token>


class SampledHistoryResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___SampledHistoryItem]:
        ...

    def __init__(self, *, item: typing___Optional[typing___Iterable[
        type___SampledHistoryItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'item',
        b'item']) ->None:
        ...


<mask token>


class RunStartRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def run(self) ->type___RunRecord:
        ...

    def __init__(self, *, run: typing___Optional[type___RunRecord]=None
        ) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'run', b'run']
        ) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'run',
        b'run']) ->None:
        ...


<mask token>


class RunStartResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class CheckVersionRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    current_version: typing___Text = ...

    def __init__(self, *, current_version: typing___Optional[typing___Text]
        =None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'current_version', b'current_version']) ->None:
        ...


<mask token>


class CheckVersionResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    upgrade_message: typing___Text = ...
    yank_message: typing___Text = ...
    delete_message: typing___Text = ...

    def __init__(self, *, upgrade_message: typing___Optional[typing___Text]
        =None, yank_message: typing___Optional[typing___Text]=None,
        delete_message: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'delete_message', b'delete_message', u'upgrade_message',
        b'upgrade_message', u'yank_message', b'yank_message']) ->None:
        ...


<mask token>


class LogArtifactRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def artifact(self) ->type___ArtifactRecord:
        ...

    def __init__(self, *, artifact: typing___Optional[type___ArtifactRecord
        ]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'artifact',
        b'artifact']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'artifact', b'artifact']) ->None:
        ...


<mask token>


class LogArtifactResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    artifact_id: typing___Text = ...
    error_message: typing___Text = ...

    def __init__(self, *, artifact_id: typing___Optional[typing___Text]=
        None, error_message: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'artifact_id', b'artifact_id', u'error_message', b'error_message']
        ) ->None:
        ...


<mask token>

<mask token>


class FooterRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    <mask token>


<mask token>


class RunRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    run_id: typing___Text = ...
    entity: typing___Text = ...
    project: typing___Text = ...
    run_group: typing___Text = ...
    job_type: typing___Text = ...
    display_name: typing___Text = ...
    notes: typing___Text = ...
    (tags:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [typing___Text]) = ...
    sweep_id: typing___Text = ...
    host: typing___Text = ...
    starting_step: builtin___int = ...
    storage_id: typing___Text = ...
    resumed: builtin___bool = ...
    runtime: builtin___int = ...
    runqueue_item_id: typing___Text = ...

    @property
    def config(self) ->type___ConfigRecord:
        ...

    @property
    def summary(self) ->type___SummaryRecord:
        ...

    @property
    def settings(self) ->type___SettingsRecord:
        ...

    @property
    def start_time(self) ->google___protobuf___timestamp_pb2___Timestamp:
        ...

    @property
    def telemetry(self
        ) ->wandb___proto___wandb_telemetry_pb2___TelemetryRecord:
        ...

    def __init__(self, *, run_id: typing___Optional[typing___Text]=None,
        entity: typing___Optional[typing___Text]=None, project:
        typing___Optional[typing___Text]=None, config: typing___Optional[
        type___ConfigRecord]=None, summary: typing___Optional[
        type___SummaryRecord]=None, run_group: typing___Optional[
        typing___Text]=None, job_type: typing___Optional[typing___Text]=
        None, display_name: typing___Optional[typing___Text]=None, notes:
        typing___Optional[typing___Text]=None, tags: typing___Optional[
        typing___Iterable[typing___Text]]=None, settings: typing___Optional
        [type___SettingsRecord]=None, sweep_id: typing___Optional[
        typing___Text]=None, host: typing___Optional[typing___Text]=None,
        starting_step: typing___Optional[builtin___int]=None, storage_id:
        typing___Optional[typing___Text]=None, start_time:
        typing___Optional[google___protobuf___timestamp_pb2___Timestamp]=
        None, resumed: typing___Optional[builtin___bool]=None, telemetry:
        typing___Optional[
        wandb___proto___wandb_telemetry_pb2___TelemetryRecord]=None,
        runtime: typing___Optional[builtin___int]=None, runqueue_item_id:
        typing___Optional[typing___Text]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'config',
        b'config', u'settings', b'settings', u'start_time', b'start_time',
        u'summary', b'summary', u'telemetry', b'telemetry']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'config',
        b'config', u'display_name', b'display_name', u'entity', b'entity',
        u'host', b'host', u'job_type', b'job_type', u'notes', b'notes',
        u'project', b'project', u'resumed', b'resumed', u'run_group',
        b'run_group', u'run_id', b'run_id', u'runqueue_item_id',
        b'runqueue_item_id', u'runtime', b'runtime', u'settings',
        b'settings', u'start_time', b'start_time', u'starting_step',
        b'starting_step', u'storage_id', b'storage_id', u'summary',
        b'summary', u'sweep_id', b'sweep_id', u'tags', b'tags',
        u'telemetry', b'telemetry']) ->None:
        ...


<mask token>


class RunUpdateResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def run(self) ->type___RunRecord:
        ...

    @property
    def error(self) ->type___ErrorInfo:
        ...

    def __init__(self, *, run: typing___Optional[type___RunRecord]=None,
        error: typing___Optional[type___ErrorInfo]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'error',
        b'error', u'run', b'run']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'error',
        b'error', u'run', b'run']) ->None:
        ...


<mask token>


class ErrorInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    ErrorCodeValue = typing___NewType('ErrorCodeValue', builtin___int)
    type___ErrorCodeValue = ErrorCodeValue
    ErrorCode: _ErrorCode


    class _ErrorCode(
        google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper
        [ErrorInfo.ErrorCodeValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        UNKNOWN = typing___cast(ErrorInfo.ErrorCodeValue, 0)
        INVALID = typing___cast(ErrorInfo.ErrorCodeValue, 1)
        PERMISSION = typing___cast(ErrorInfo.ErrorCodeValue, 2)
        NETWORK = typing___cast(ErrorInfo.ErrorCodeValue, 3)
        INTERNAL = typing___cast(ErrorInfo.ErrorCodeValue, 4)
    UNKNOWN = typing___cast(ErrorInfo.ErrorCodeValue, 0)
    INVALID = typing___cast(ErrorInfo.ErrorCodeValue, 1)
    PERMISSION = typing___cast(ErrorInfo.ErrorCodeValue, 2)
    NETWORK = typing___cast(ErrorInfo.ErrorCodeValue, 3)
    INTERNAL = typing___cast(ErrorInfo.ErrorCodeValue, 4)
    type___ErrorCode = ErrorCode
    message: typing___Text = ...
    code: type___ErrorInfo.ErrorCodeValue = ...

    def __init__(self, *, message: typing___Optional[typing___Text]=None,
        code: typing___Optional[type___ErrorInfo.ErrorCodeValue]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'code',
        b'code', u'message', b'message']) ->None:
        ...


<mask token>


class RunExitRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    exit_code: builtin___int = ...
    runtime: builtin___int = ...

    def __init__(self, *, exit_code: typing___Optional[builtin___int]=None,
        runtime: typing___Optional[builtin___int]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'exit_code', b'exit_code', u'runtime', b'runtime']) ->None:
        ...


<mask token>


class RunPreemptingRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class RunExitResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class SettingsRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___SettingsItem]:
        ...

    def __init__(self, *, item: typing___Optional[typing___Iterable[
        type___SettingsItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'item',
        b'item']) ->None:
        ...


<mask token>


class SettingsItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'value_json', b'value_json']) ->None:
        ...


<mask token>


class HistoryStep(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    num: builtin___int = ...

    def __init__(self, *, num: typing___Optional[builtin___int]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'num',
        b'num']) ->None:
        ...


<mask token>


class HistoryRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___HistoryItem]:
        ...

    @property
    def step(self) ->type___HistoryStep:
        ...

    def __init__(self, *, item: typing___Optional[typing___Iterable[
        type___HistoryItem]]=None, step: typing___Optional[
        type___HistoryStep]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'step',
        b'step']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'item',
        b'item', u'step', b'step']) ->None:
        ...


<mask token>


class HistoryItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    (nested_key:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [typing___Text]) = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        nested_key: typing___Optional[typing___Iterable[typing___Text]]=
        None, value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'nested_key', b'nested_key', u'value_json', b'value_json']
        ) ->None:
        ...


<mask token>


class HistoryResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class OutputRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    OutputTypeValue = typing___NewType('OutputTypeValue', builtin___int)
    type___OutputTypeValue = OutputTypeValue
    OutputType: _OutputType


    class _OutputType(
        google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper
        [OutputRecord.OutputTypeValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        STDERR = typing___cast(OutputRecord.OutputTypeValue, 0)
        STDOUT = typing___cast(OutputRecord.OutputTypeValue, 1)
    STDERR = typing___cast(OutputRecord.OutputTypeValue, 0)
    STDOUT = typing___cast(OutputRecord.OutputTypeValue, 1)
    type___OutputType = OutputType
    output_type: type___OutputRecord.OutputTypeValue = ...
    line: typing___Text = ...

    @property
    def timestamp(self) ->google___protobuf___timestamp_pb2___Timestamp:
        ...

    def __init__(self, *, output_type: typing___Optional[
        type___OutputRecord.OutputTypeValue]=None, timestamp:
        typing___Optional[google___protobuf___timestamp_pb2___Timestamp]=
        None, line: typing___Optional[typing___Text]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'timestamp',
        b'timestamp']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'line',
        b'line', u'output_type', b'output_type', u'timestamp', b'timestamp']
        ) ->None:
        ...


<mask token>


class OutputResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class MetricRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    MetricGoalValue = typing___NewType('MetricGoalValue', builtin___int)
    type___MetricGoalValue = MetricGoalValue
    MetricGoal: _MetricGoal


    class _MetricGoal(
        google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper
        [MetricRecord.MetricGoalValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        GOAL_UNSET = typing___cast(MetricRecord.MetricGoalValue, 0)
        GOAL_MINIMIZE = typing___cast(MetricRecord.MetricGoalValue, 1)
        GOAL_MAXIMIZE = typing___cast(MetricRecord.MetricGoalValue, 2)
    GOAL_UNSET = typing___cast(MetricRecord.MetricGoalValue, 0)
    GOAL_MINIMIZE = typing___cast(MetricRecord.MetricGoalValue, 1)
    GOAL_MAXIMIZE = typing___cast(MetricRecord.MetricGoalValue, 2)
    type___MetricGoal = MetricGoal
    name: typing___Text = ...
    glob_name: typing___Text = ...
    step_metric: typing___Text = ...
    step_metric_index: builtin___int = ...
    goal: type___MetricRecord.MetricGoalValue = ...

    @property
    def options(self) ->type___MetricOptions:
        ...

    @property
    def summary(self) ->type___MetricSummary:
        ...

    @property
    def _control(self) ->type___MetricControl:
        ...

    def __init__(self, *, name: typing___Optional[typing___Text]=None,
        glob_name: typing___Optional[typing___Text]=None, step_metric:
        typing___Optional[typing___Text]=None, step_metric_index:
        typing___Optional[builtin___int]=None, options: typing___Optional[
        type___MetricOptions]=None, summary: typing___Optional[
        type___MetricSummary]=None, goal: typing___Optional[
        type___MetricRecord.MetricGoalValue]=None, _control:
        typing___Optional[type___MetricControl]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'_control',
        b'_control', u'options', b'options', u'summary', b'summary']
        ) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'_control', b'_control', u'glob_name', b'glob_name', u'goal',
        b'goal', u'name', b'name', u'options', b'options', u'step_metric',
        b'step_metric', u'step_metric_index', b'step_metric_index',
        u'summary', b'summary']) ->None:
        ...


<mask token>


class MetricOptions(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    step_sync: builtin___bool = ...
    hidden: builtin___bool = ...
    defined: builtin___bool = ...

    def __init__(self, *, step_sync: typing___Optional[builtin___bool]=None,
        hidden: typing___Optional[builtin___bool]=None, defined:
        typing___Optional[builtin___bool]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'defined',
        b'defined', u'hidden', b'hidden', u'step_sync', b'step_sync']) ->None:
        ...


<mask token>


class MetricControl(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    overwrite: builtin___bool = ...

    def __init__(self, *, overwrite: typing___Optional[builtin___bool]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'overwrite', b'overwrite']) ->None:
        ...


<mask token>


class MetricSummary(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    min: builtin___bool = ...
    max: builtin___bool = ...
    mean: builtin___bool = ...
    best: builtin___bool = ...
    last: builtin___bool = ...
    none: builtin___bool = ...
    copy: builtin___bool = ...

    def __init__(self, *, min: typing___Optional[builtin___bool]=None, max:
        typing___Optional[builtin___bool]=None, mean: typing___Optional[
        builtin___bool]=None, best: typing___Optional[builtin___bool]=None,
        last: typing___Optional[builtin___bool]=None, none:
        typing___Optional[builtin___bool]=None, copy: typing___Optional[
        builtin___bool]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'best',
        b'best', u'copy', b'copy', u'last', b'last', u'max', b'max',
        u'mean', b'mean', u'min', b'min', u'none', b'none']) ->None:
        ...


<mask token>


class ConfigRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def update(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___ConfigItem]:
        ...

    @property
    def remove(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___ConfigItem]:
        ...

    def __init__(self, *, update: typing___Optional[typing___Iterable[
        type___ConfigItem]]=None, remove: typing___Optional[
        typing___Iterable[type___ConfigItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'remove',
        b'remove', u'update', b'update']) ->None:
        ...


<mask token>


class ConfigItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    (nested_key:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [typing___Text]) = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        nested_key: typing___Optional[typing___Iterable[typing___Text]]=
        None, value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'nested_key', b'nested_key', u'value_json', b'value_json']
        ) ->None:
        ...


<mask token>


class ConfigResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class SummaryRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def update(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___SummaryItem]:
        ...

    @property
    def remove(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___SummaryItem]:
        ...

    def __init__(self, *, update: typing___Optional[typing___Iterable[
        type___SummaryItem]]=None, remove: typing___Optional[
        typing___Iterable[type___SummaryItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'remove',
        b'remove', u'update', b'update']) ->None:
        ...


<mask token>


class SummaryItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    (nested_key:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [typing___Text]) = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        nested_key: typing___Optional[typing___Iterable[typing___Text]]=
        None, value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'nested_key', b'nested_key', u'value_json', b'value_json']
        ) ->None:
        ...


<mask token>


class SummaryResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class FilesRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def files(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___FilesItem]:
        ...

    def __init__(self, *, files: typing___Optional[typing___Iterable[
        type___FilesItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'files',
        b'files']) ->None:
        ...


<mask token>


class FilesItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    PolicyTypeValue = typing___NewType('PolicyTypeValue', builtin___int)
    type___PolicyTypeValue = PolicyTypeValue
    PolicyType: _PolicyType


    class _PolicyType(
        google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper
        [FilesItem.PolicyTypeValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        NOW = typing___cast(FilesItem.PolicyTypeValue, 0)
        END = typing___cast(FilesItem.PolicyTypeValue, 1)
        LIVE = typing___cast(FilesItem.PolicyTypeValue, 2)
    NOW = typing___cast(FilesItem.PolicyTypeValue, 0)
    END = typing___cast(FilesItem.PolicyTypeValue, 1)
    LIVE = typing___cast(FilesItem.PolicyTypeValue, 2)
    type___PolicyType = PolicyType
    path: typing___Text = ...
    policy: type___FilesItem.PolicyTypeValue = ...
    external_path: typing___Text = ...

    def __init__(self, *, path: typing___Optional[typing___Text]=None,
        policy: typing___Optional[type___FilesItem.PolicyTypeValue]=None,
        external_path: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'external_path', b'external_path', u'path', b'path', u'policy',
        b'policy']) ->None:
        ...


<mask token>


class StatsRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    StatsTypeValue = typing___NewType('StatsTypeValue', builtin___int)
    type___StatsTypeValue = StatsTypeValue
    StatsType: _StatsType


    class _StatsType(
        google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper
        [StatsRecord.StatsTypeValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        SYSTEM = typing___cast(StatsRecord.StatsTypeValue, 0)
    SYSTEM = typing___cast(StatsRecord.StatsTypeValue, 0)
    type___StatsType = StatsType
    stats_type: type___StatsRecord.StatsTypeValue = ...

    @property
    def timestamp(self) ->google___protobuf___timestamp_pb2___Timestamp:
        ...

    @property
    def item(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___StatsItem]:
        ...

    def __init__(self, *, stats_type: typing___Optional[type___StatsRecord.
        StatsTypeValue]=None, timestamp: typing___Optional[
        google___protobuf___timestamp_pb2___Timestamp]=None, item:
        typing___Optional[typing___Iterable[type___StatsItem]]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'timestamp',
        b'timestamp']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'item',
        b'item', u'stats_type', b'stats_type', u'timestamp', b'timestamp']
        ) ->None:
        ...


<mask token>


class StatsItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'value_json', b'value_json']) ->None:
        ...


<mask token>


class ArtifactRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    run_id: typing___Text = ...
    project: typing___Text = ...
    entity: typing___Text = ...
    type: typing___Text = ...
    name: typing___Text = ...
    digest: typing___Text = ...
    description: typing___Text = ...
    metadata: typing___Text = ...
    user_created: builtin___bool = ...
    use_after_commit: builtin___bool = ...
    (aliases:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [typing___Text]) = ...
    distributed_id: typing___Text = ...
    finalize: builtin___bool = ...
    client_id: typing___Text = ...
    sequence_client_id: typing___Text = ...
    incremental_beta1: builtin___bool = ...

    @property
    def manifest(self) ->type___ArtifactManifest:
        ...

    def __init__(self, *, run_id: typing___Optional[typing___Text]=None,
        project: typing___Optional[typing___Text]=None, entity:
        typing___Optional[typing___Text]=None, type: typing___Optional[
        typing___Text]=None, name: typing___Optional[typing___Text]=None,
        digest: typing___Optional[typing___Text]=None, description:
        typing___Optional[typing___Text]=None, metadata: typing___Optional[
        typing___Text]=None, user_created: typing___Optional[builtin___bool
        ]=None, use_after_commit: typing___Optional[builtin___bool]=None,
        aliases: typing___Optional[typing___Iterable[typing___Text]]=None,
        manifest: typing___Optional[type___ArtifactManifest]=None,
        distributed_id: typing___Optional[typing___Text]=None, finalize:
        typing___Optional[builtin___bool]=None, client_id:
        typing___Optional[typing___Text]=None, sequence_client_id:
        typing___Optional[typing___Text]=None, incremental_beta1:
        typing___Optional[builtin___bool]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'manifest',
        b'manifest']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'aliases',
        b'aliases', u'client_id', b'client_id', u'description',
        b'description', u'digest', b'digest', u'distributed_id',
        b'distributed_id', u'entity', b'entity', u'finalize', b'finalize',
        u'incremental_beta1', b'incremental_beta1', u'manifest',
        b'manifest', u'metadata', b'metadata', u'name', b'name', u'project',
        b'project', u'run_id', b'run_id', u'sequence_client_id',
        b'sequence_client_id', u'type', b'type', u'use_after_commit',
        b'use_after_commit', u'user_created', b'user_created']) ->None:
        ...


<mask token>


class ArtifactManifest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    version: builtin___int = ...
    storage_policy: typing___Text = ...

    @property
    def storage_policy_config(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___StoragePolicyConfigItem]:
        ...

    @property
    def contents(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___ArtifactManifestEntry]:
        ...

    def __init__(self, *, version: typing___Optional[builtin___int]=None,
        storage_policy: typing___Optional[typing___Text]=None,
        storage_policy_config: typing___Optional[typing___Iterable[
        type___StoragePolicyConfigItem]]=None, contents: typing___Optional[
        typing___Iterable[type___ArtifactManifestEntry]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'contents', b'contents', u'storage_policy', b'storage_policy',
        u'storage_policy_config', b'storage_policy_config', u'version',
        b'version']) ->None:
        ...


<mask token>


class ArtifactManifestEntry(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    path: typing___Text = ...
    digest: typing___Text = ...
    ref: typing___Text = ...
    size: builtin___int = ...
    mimetype: typing___Text = ...
    local_path: typing___Text = ...
    birth_artifact_id: typing___Text = ...

    @property
    def extra(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___ExtraItem]:
        ...

    def __init__(self, *, path: typing___Optional[typing___Text]=None,
        digest: typing___Optional[typing___Text]=None, ref:
        typing___Optional[typing___Text]=None, size: typing___Optional[
        builtin___int]=None, mimetype: typing___Optional[typing___Text]=
        None, local_path: typing___Optional[typing___Text]=None,
        birth_artifact_id: typing___Optional[typing___Text]=None, extra:
        typing___Optional[typing___Iterable[type___ExtraItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'birth_artifact_id', b'birth_artifact_id', u'digest', b'digest',
        u'extra', b'extra', u'local_path', b'local_path', u'mimetype',
        b'mimetype', u'path', b'path', u'ref', b'ref', u'size', b'size']
        ) ->None:
        ...


<mask token>


class ExtraItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'value_json', b'value_json']) ->None:
        ...


<mask token>


class StoragePolicyConfigItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        value_json: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'value_json', b'value_json']) ->None:
        ...


<mask token>


class TBRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    log_dir: typing___Text = ...
    save: builtin___bool = ...
    root_dir: typing___Text = ...

    def __init__(self, *, log_dir: typing___Optional[typing___Text]=None,
        save: typing___Optional[builtin___bool]=None, root_dir:
        typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'log_dir',
        b'log_dir', u'root_dir', b'root_dir', u'save', b'save']) ->None:
        ...


<mask token>


class AlertRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    title: typing___Text = ...
    text: typing___Text = ...
    level: typing___Text = ...
    wait_duration: builtin___int = ...

    def __init__(self, *, title: typing___Optional[typing___Text]=None,
        text: typing___Optional[typing___Text]=None, level:
        typing___Optional[typing___Text]=None, wait_duration:
        typing___Optional[builtin___int]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'level',
        b'level', u'text', b'text', u'title', b'title', u'wait_duration',
        b'wait_duration']) ->None:
        ...


<mask token>


class Request(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def stop_status(self) ->type___StopStatusRequest:
        ...

    @property
    def network_status(self) ->type___NetworkStatusRequest:
        ...

    @property
    def defer(self) ->type___DeferRequest:
        ...

    @property
    def get_summary(self) ->type___GetSummaryRequest:
        ...

    @property
    def login(self) ->type___LoginRequest:
        ...

    @property
    def pause(self) ->type___PauseRequest:
        ...

    @property
    def resume(self) ->type___ResumeRequest:
        ...

    @property
    def poll_exit(self) ->type___PollExitRequest:
        ...

    @property
    def sampled_history(self) ->type___SampledHistoryRequest:
        ...

    @property
    def run_start(self) ->type___RunStartRequest:
        ...

    @property
    def check_version(self) ->type___CheckVersionRequest:
        ...

    @property
    def log_artifact(self) ->type___LogArtifactRequest:
        ...

    @property
    def shutdown(self) ->type___ShutdownRequest:
        ...

    @property
    def test_inject(self) ->type___TestInjectRequest:
        ...

    def __init__(self, *, stop_status: typing___Optional[
        type___StopStatusRequest]=None, network_status: typing___Optional[
        type___NetworkStatusRequest]=None, defer: typing___Optional[
        type___DeferRequest]=None, get_summary: typing___Optional[
        type___GetSummaryRequest]=None, login: typing___Optional[
        type___LoginRequest]=None, pause: typing___Optional[
        type___PauseRequest]=None, resume: typing___Optional[
        type___ResumeRequest]=None, poll_exit: typing___Optional[
        type___PollExitRequest]=None, sampled_history: typing___Optional[
        type___SampledHistoryRequest]=None, run_start: typing___Optional[
        type___RunStartRequest]=None, check_version: typing___Optional[
        type___CheckVersionRequest]=None, log_artifact: typing___Optional[
        type___LogArtifactRequest]=None, shutdown: typing___Optional[
        type___ShutdownRequest]=None, test_inject: typing___Optional[
        type___TestInjectRequest]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[
        u'check_version', b'check_version', u'defer', b'defer',
        u'get_summary', b'get_summary', u'log_artifact', b'log_artifact',
        u'login', b'login', u'network_status', b'network_status', u'pause',
        b'pause', u'poll_exit', b'poll_exit', u'request_type',
        b'request_type', u'resume', b'resume', u'run_start', b'run_start',
        u'sampled_history', b'sampled_history', u'shutdown', b'shutdown',
        u'stop_status', b'stop_status', u'test_inject', b'test_inject']
        ) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'check_version', b'check_version', u'defer', b'defer',
        u'get_summary', b'get_summary', u'log_artifact', b'log_artifact',
        u'login', b'login', u'network_status', b'network_status', u'pause',
        b'pause', u'poll_exit', b'poll_exit', u'request_type',
        b'request_type', u'resume', b'resume', u'run_start', b'run_start',
        u'sampled_history', b'sampled_history', u'shutdown', b'shutdown',
        u'stop_status', b'stop_status', u'test_inject', b'test_inject']
        ) ->None:
        ...

    def WhichOneof(self, oneof_group: typing_extensions___Literal[
        u'request_type', b'request_type']) ->typing_extensions___Literal[
        'stop_status', 'network_status', 'defer', 'get_summary', 'login',
        'pause', 'resume', 'poll_exit', 'sampled_history', 'run_start',
        'check_version', 'log_artifact', 'shutdown', 'test_inject']:
        ...


<mask token>


class Response(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def stop_status_response(self) ->type___StopStatusResponse:
        ...

    @property
    def network_status_response(self) ->type___NetworkStatusResponse:
        ...

    @property
    def login_response(self) ->type___LoginResponse:
        ...

    @property
    def get_summary_response(self) ->type___GetSummaryResponse:
        ...

    @property
    def poll_exit_response(self) ->type___PollExitResponse:
        ...

    @property
    def sampled_history_response(self) ->type___SampledHistoryResponse:
        ...

    @property
    def run_start_response(self) ->type___RunStartResponse:
        ...

    @property
    def check_version_response(self) ->type___CheckVersionResponse:
        ...

    @property
    def log_artifact_response(self) ->type___LogArtifactResponse:
        ...

    @property
    def shutdown_response(self) ->type___ShutdownResponse:
        ...

    @property
    def test_inject_response(self) ->type___TestInjectResponse:
        ...

    def __init__(self, *, stop_status_response: typing___Optional[
        type___StopStatusResponse]=None, network_status_response:
        typing___Optional[type___NetworkStatusResponse]=None,
        login_response: typing___Optional[type___LoginResponse]=None,
        get_summary_response: typing___Optional[type___GetSummaryResponse]=
        None, poll_exit_response: typing___Optional[type___PollExitResponse
        ]=None, sampled_history_response: typing___Optional[
        type___SampledHistoryResponse]=None, run_start_response:
        typing___Optional[type___RunStartResponse]=None,
        check_version_response: typing___Optional[
        type___CheckVersionResponse]=None, log_artifact_response:
        typing___Optional[type___LogArtifactResponse]=None,
        shutdown_response: typing___Optional[type___ShutdownResponse]=None,
        test_inject_response: typing___Optional[type___TestInjectResponse]=None
        ) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[
        u'check_version_response', b'check_version_response',
        u'get_summary_response', b'get_summary_response',
        u'log_artifact_response', b'log_artifact_response',
        u'login_response', b'login_response', u'network_status_response',
        b'network_status_response', u'poll_exit_response',
        b'poll_exit_response', u'response_type', b'response_type',
        u'run_start_response', b'run_start_response',
        u'sampled_history_response', b'sampled_history_response',
        u'shutdown_response', b'shutdown_response', u'stop_status_response',
        b'stop_status_response', u'test_inject_response',
        b'test_inject_response']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'check_version_response', b'check_version_response',
        u'get_summary_response', b'get_summary_response',
        u'log_artifact_response', b'log_artifact_response',
        u'login_response', b'login_response', u'network_status_response',
        b'network_status_response', u'poll_exit_response',
        b'poll_exit_response', u'response_type', b'response_type',
        u'run_start_response', b'run_start_response',
        u'sampled_history_response', b'sampled_history_response',
        u'shutdown_response', b'shutdown_response', u'stop_status_response',
        b'stop_status_response', u'test_inject_response',
        b'test_inject_response']) ->None:
        ...

    def WhichOneof(self, oneof_group: typing_extensions___Literal[
        u'response_type', b'response_type']) ->typing_extensions___Literal[
        'stop_status_response', 'network_status_response', 'login_response',
        'get_summary_response', 'poll_exit_response',
        'sampled_history_response', 'run_start_response',
        'check_version_response', 'log_artifact_response',
        'shutdown_response', 'test_inject_response']:
        ...


<mask token>


class DeferRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    DeferStateValue = typing___NewType('DeferStateValue', builtin___int)
    type___DeferStateValue = DeferStateValue
    DeferState: _DeferState


    class _DeferState(
        google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper
        [DeferRequest.DeferStateValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        BEGIN = typing___cast(DeferRequest.DeferStateValue, 0)
        FLUSH_STATS = typing___cast(DeferRequest.DeferStateValue, 1)
        FLUSH_TB = typing___cast(DeferRequest.DeferStateValue, 2)
        FLUSH_SUM = typing___cast(DeferRequest.DeferStateValue, 3)
        FLUSH_DEBOUNCER = typing___cast(DeferRequest.DeferStateValue, 4)
        FLUSH_DIR = typing___cast(DeferRequest.DeferStateValue, 5)
        FLUSH_FP = typing___cast(DeferRequest.DeferStateValue, 6)
        FLUSH_FS = typing___cast(DeferRequest.DeferStateValue, 7)
        FLUSH_FINAL = typing___cast(DeferRequest.DeferStateValue, 8)
        END = typing___cast(DeferRequest.DeferStateValue, 9)
    BEGIN = typing___cast(DeferRequest.DeferStateValue, 0)
    FLUSH_STATS = typing___cast(DeferRequest.DeferStateValue, 1)
    FLUSH_TB = typing___cast(DeferRequest.DeferStateValue, 2)
    FLUSH_SUM = typing___cast(DeferRequest.DeferStateValue, 3)
    FLUSH_DEBOUNCER = typing___cast(DeferRequest.DeferStateValue, 4)
    FLUSH_DIR = typing___cast(DeferRequest.DeferStateValue, 5)
    FLUSH_FP = typing___cast(DeferRequest.DeferStateValue, 6)
    FLUSH_FS = typing___cast(DeferRequest.DeferStateValue, 7)
    FLUSH_FINAL = typing___cast(DeferRequest.DeferStateValue, 8)
    END = typing___cast(DeferRequest.DeferStateValue, 9)
    type___DeferState = DeferState
    state: type___DeferRequest.DeferStateValue = ...

    def __init__(self, *, state: typing___Optional[type___DeferRequest.
        DeferStateValue]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'state',
        b'state']) ->None:
        ...


<mask token>


class PauseRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class ResumeRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class LoginRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    api_key: typing___Text = ...

    def __init__(self, *, api_key: typing___Optional[typing___Text]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'api_key',
        b'api_key']) ->None:
        ...


<mask token>


class LoginResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    active_entity: typing___Text = ...

    def __init__(self, *, active_entity: typing___Optional[typing___Text]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'active_entity', b'active_entity']) ->None:
        ...


<mask token>


class GetSummaryRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class GetSummaryResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___SummaryItem]:
        ...

    def __init__(self, *, item: typing___Optional[typing___Iterable[
        type___SummaryItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'item',
        b'item']) ->None:
        ...


<mask token>


class StopStatusRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class StopStatusResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    run_should_stop: builtin___bool = ...

    def __init__(self, *, run_should_stop: typing___Optional[builtin___bool
        ]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'run_should_stop', b'run_should_stop']) ->None:
        ...


<mask token>


class NetworkStatusRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class NetworkStatusResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def network_responses(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___HttpResponse]:
        ...

    def __init__(self, *, network_responses: typing___Optional[
        typing___Iterable[type___HttpResponse]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'network_responses', b'network_responses']) ->None:
        ...


<mask token>


class HttpResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    http_status_code: builtin___int = ...
    http_response_text: typing___Text = ...

    def __init__(self, *, http_status_code: typing___Optional[builtin___int
        ]=None, http_response_text: typing___Optional[typing___Text]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'http_response_text', b'http_response_text', u'http_status_code',
        b'http_status_code']) ->None:
        ...


<mask token>


class PollExitRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class PollExitResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    done: builtin___bool = ...

    @property
    def exit_result(self) ->type___RunExitResult:
        ...

    @property
    def file_counts(self) ->type___FileCounts:
        ...

    @property
    def pusher_stats(self) ->type___FilePusherStats:
        ...

    @property
    def local_info(self) ->type___LocalInfo:
        ...

    def __init__(self, *, done: typing___Optional[builtin___bool]=None,
        exit_result: typing___Optional[type___RunExitResult]=None,
        file_counts: typing___Optional[type___FileCounts]=None,
        pusher_stats: typing___Optional[type___FilePusherStats]=None,
        local_info: typing___Optional[type___LocalInfo]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[
        u'exit_result', b'exit_result', u'file_counts', b'file_counts',
        u'local_info', b'local_info', u'pusher_stats', b'pusher_stats']
        ) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'done',
        b'done', u'exit_result', b'exit_result', u'file_counts',
        b'file_counts', u'local_info', b'local_info', u'pusher_stats',
        b'pusher_stats']) ->None:
        ...


<mask token>


class FileCounts(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    wandb_count: builtin___int = ...
    media_count: builtin___int = ...
    artifact_count: builtin___int = ...
    other_count: builtin___int = ...

    def __init__(self, *, wandb_count: typing___Optional[builtin___int]=
        None, media_count: typing___Optional[builtin___int]=None,
        artifact_count: typing___Optional[builtin___int]=None, other_count:
        typing___Optional[builtin___int]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'artifact_count', b'artifact_count', u'media_count',
        b'media_count', u'other_count', b'other_count', u'wandb_count',
        b'wandb_count']) ->None:
        ...


<mask token>


class FilePusherStats(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    uploaded_bytes: builtin___int = ...
    total_bytes: builtin___int = ...
    deduped_bytes: builtin___int = ...

    def __init__(self, *, uploaded_bytes: typing___Optional[builtin___int]=
        None, total_bytes: typing___Optional[builtin___int]=None,
        deduped_bytes: typing___Optional[builtin___int]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'deduped_bytes', b'deduped_bytes', u'total_bytes', b'total_bytes',
        u'uploaded_bytes', b'uploaded_bytes']) ->None:
        ...


<mask token>


class LocalInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    version: typing___Text = ...
    out_of_date: builtin___bool = ...

    def __init__(self, *, version: typing___Optional[typing___Text]=None,
        out_of_date: typing___Optional[builtin___bool]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'out_of_date', b'out_of_date', u'version', b'version']) ->None:
        ...


<mask token>


class ShutdownRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class ShutdownResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class TestInjectRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    handler_exc: builtin___bool = ...
    handler_exit: builtin___bool = ...
    handler_abort: builtin___bool = ...
    sender_exc: builtin___bool = ...
    sender_exit: builtin___bool = ...
    sender_abort: builtin___bool = ...
    req_exc: builtin___bool = ...
    req_exit: builtin___bool = ...
    req_abort: builtin___bool = ...
    resp_exc: builtin___bool = ...
    resp_exit: builtin___bool = ...
    resp_abort: builtin___bool = ...
    msg_drop: builtin___bool = ...
    msg_hang: builtin___bool = ...

    def __init__(self, *, handler_exc: typing___Optional[builtin___bool]=
        None, handler_exit: typing___Optional[builtin___bool]=None,
        handler_abort: typing___Optional[builtin___bool]=None, sender_exc:
        typing___Optional[builtin___bool]=None, sender_exit:
        typing___Optional[builtin___bool]=None, sender_abort:
        typing___Optional[builtin___bool]=None, req_exc: typing___Optional[
        builtin___bool]=None, req_exit: typing___Optional[builtin___bool]=
        None, req_abort: typing___Optional[builtin___bool]=None, resp_exc:
        typing___Optional[builtin___bool]=None, resp_exit:
        typing___Optional[builtin___bool]=None, resp_abort:
        typing___Optional[builtin___bool]=None, msg_drop: typing___Optional
        [builtin___bool]=None, msg_hang: typing___Optional[builtin___bool]=None
        ) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'handler_abort', b'handler_abort', u'handler_exc', b'handler_exc',
        u'handler_exit', b'handler_exit', u'msg_drop', b'msg_drop',
        u'msg_hang', b'msg_hang', u'req_abort', b'req_abort', u'req_exc',
        b'req_exc', u'req_exit', b'req_exit', u'resp_abort', b'resp_abort',
        u'resp_exc', b'resp_exc', u'resp_exit', b'resp_exit',
        u'sender_abort', b'sender_abort', u'sender_exc', b'sender_exc',
        u'sender_exit', b'sender_exit']) ->None:
        ...


<mask token>


class TestInjectResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class SampledHistoryRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class SampledHistoryItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    (nested_key:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [typing___Text]) = ...
    (values_float:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [builtin___float]) = ...
    (values_int:
        google___protobuf___internal___containers___RepeatedScalarFieldContainer
        [builtin___int]) = ...

    def __init__(self, *, key: typing___Optional[typing___Text]=None,
        nested_key: typing___Optional[typing___Iterable[typing___Text]]=
        None, values_float: typing___Optional[typing___Iterable[
        builtin___float]]=None, values_int: typing___Optional[
        typing___Iterable[builtin___int]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'key',
        b'key', u'nested_key', b'nested_key', u'values_float',
        b'values_float', u'values_int', b'values_int']) ->None:
        ...


<mask token>


class SampledHistoryResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self
        ) ->google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___SampledHistoryItem]:
        ...

    def __init__(self, *, item: typing___Optional[typing___Iterable[
        type___SampledHistoryItem]]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'item',
        b'item']) ->None:
        ...


<mask token>


class RunStartRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def run(self) ->type___RunRecord:
        ...

    def __init__(self, *, run: typing___Optional[type___RunRecord]=None
        ) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'run', b'run']
        ) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[u'run',
        b'run']) ->None:
        ...


<mask token>


class RunStartResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self) ->None:
        ...


<mask token>


class CheckVersionRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    current_version: typing___Text = ...

    def __init__(self, *, current_version: typing___Optional[typing___Text]
        =None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'current_version', b'current_version']) ->None:
        ...


<mask token>


class CheckVersionResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    upgrade_message: typing___Text = ...
    yank_message: typing___Text = ...
    delete_message: typing___Text = ...

    def __init__(self, *, upgrade_message: typing___Optional[typing___Text]
        =None, yank_message: typing___Optional[typing___Text]=None,
        delete_message: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'delete_message', b'delete_message', u'upgrade_message',
        b'upgrade_message', u'yank_message', b'yank_message']) ->None:
        ...


<mask token>


class LogArtifactRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def artifact(self) ->type___ArtifactRecord:
        ...

    def __init__(self, *, artifact: typing___Optional[type___ArtifactRecord
        ]=None) ->None:
        ...

    def HasField(self, field_name: typing_extensions___Literal[u'artifact',
        b'artifact']) ->builtin___bool:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'artifact', b'artifact']) ->None:
        ...


<mask token>


class LogArtifactResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    artifact_id: typing___Text = ...
    error_message: typing___Text = ...

    def __init__(self, *, artifact_id: typing___Optional[typing___Text]=
        None, error_message: typing___Optional[typing___Text]=None) ->None:
        ...

    def ClearField(self, field_name: typing_extensions___Literal[
        u'artifact_id', b'artifact_id', u'error_message', b'error_message']
        ) ->None:
        ...


<mask token>

# @generated by generate_proto_mypy_stubs.py.  Do not edit!
import sys
from google.protobuf.descriptor import (
    Descriptor as google___protobuf___descriptor___Descriptor,
    EnumDescriptor as google___protobuf___descriptor___EnumDescriptor,
    FileDescriptor as google___protobuf___descriptor___FileDescriptor,
)

from google.protobuf.internal.containers import (
    RepeatedCompositeFieldContainer as google___protobuf___internal___containers___RepeatedCompositeFieldContainer,
    RepeatedScalarFieldContainer as google___protobuf___internal___containers___RepeatedScalarFieldContainer,
)

from google.protobuf.internal.enum_type_wrapper import (
    _EnumTypeWrapper as google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper,
)

from google.protobuf.message import (
    Message as google___protobuf___message___Message,
)

from google.protobuf.timestamp_pb2 import (
    Timestamp as google___protobuf___timestamp_pb2___Timestamp,
)

from typing import (
    Iterable as typing___Iterable,
    NewType as typing___NewType,
    Optional as typing___Optional,
    Text as typing___Text,
    cast as typing___cast,
)

from typing_extensions import (
    Literal as typing_extensions___Literal,
)

from wandb.proto.wandb_telemetry_pb2 import (
    TelemetryRecord as wandb___proto___wandb_telemetry_pb2___TelemetryRecord,
)


builtin___bool = bool
builtin___bytes = bytes
builtin___float = float
builtin___int = int


DESCRIPTOR: google___protobuf___descriptor___FileDescriptor = ...

class Record(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    num: builtin___int = ...
    uuid: typing___Text = ...

    @property
    def history(self) -> type___HistoryRecord: ...

    @property
    def summary(self) -> type___SummaryRecord: ...

    @property
    def output(self) -> type___OutputRecord: ...

    @property
    def config(self) -> type___ConfigRecord: ...

    @property
    def files(self) -> type___FilesRecord: ...

    @property
    def stats(self) -> type___StatsRecord: ...

    @property
    def artifact(self) -> type___ArtifactRecord: ...

    @property
    def tbrecord(self) -> type___TBRecord: ...

    @property
    def alert(self) -> type___AlertRecord: ...

    @property
    def telemetry(self) -> wandb___proto___wandb_telemetry_pb2___TelemetryRecord: ...

    @property
    def metric(self) -> type___MetricRecord: ...

    @property
    def run(self) -> type___RunRecord: ...

    @property
    def exit(self) -> type___RunExitRecord: ...

    @property
    def final(self) -> type___FinalRecord: ...

    @property
    def header(self) -> type___HeaderRecord: ...

    @property
    def footer(self) -> type___FooterRecord: ...

    @property
    def preempting(self) -> type___RunPreemptingRecord: ...

    @property
    def request(self) -> type___Request: ...

    @property
    def control(self) -> type___Control: ...

    def __init__(self,
        *,
        num : typing___Optional[builtin___int] = None,
        history : typing___Optional[type___HistoryRecord] = None,
        summary : typing___Optional[type___SummaryRecord] = None,
        output : typing___Optional[type___OutputRecord] = None,
        config : typing___Optional[type___ConfigRecord] = None,
        files : typing___Optional[type___FilesRecord] = None,
        stats : typing___Optional[type___StatsRecord] = None,
        artifact : typing___Optional[type___ArtifactRecord] = None,
        tbrecord : typing___Optional[type___TBRecord] = None,
        alert : typing___Optional[type___AlertRecord] = None,
        telemetry : typing___Optional[wandb___proto___wandb_telemetry_pb2___TelemetryRecord] = None,
        metric : typing___Optional[type___MetricRecord] = None,
        run : typing___Optional[type___RunRecord] = None,
        exit : typing___Optional[type___RunExitRecord] = None,
        final : typing___Optional[type___FinalRecord] = None,
        header : typing___Optional[type___HeaderRecord] = None,
        footer : typing___Optional[type___FooterRecord] = None,
        preempting : typing___Optional[type___RunPreemptingRecord] = None,
        request : typing___Optional[type___Request] = None,
        control : typing___Optional[type___Control] = None,
        uuid : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"alert",b"alert",u"artifact",b"artifact",u"config",b"config",u"control",b"control",u"exit",b"exit",u"files",b"files",u"final",b"final",u"footer",b"footer",u"header",b"header",u"history",b"history",u"metric",b"metric",u"output",b"output",u"preempting",b"preempting",u"record_type",b"record_type",u"request",b"request",u"run",b"run",u"stats",b"stats",u"summary",b"summary",u"tbrecord",b"tbrecord",u"telemetry",b"telemetry"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"alert",b"alert",u"artifact",b"artifact",u"config",b"config",u"control",b"control",u"exit",b"exit",u"files",b"files",u"final",b"final",u"footer",b"footer",u"header",b"header",u"history",b"history",u"metric",b"metric",u"num",b"num",u"output",b"output",u"preempting",b"preempting",u"record_type",b"record_type",u"request",b"request",u"run",b"run",u"stats",b"stats",u"summary",b"summary",u"tbrecord",b"tbrecord",u"telemetry",b"telemetry",u"uuid",b"uuid"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions___Literal[u"record_type",b"record_type"]) -> typing_extensions___Literal["history","summary","output","config","files","stats","artifact","tbrecord","alert","telemetry","metric","run","exit","final","header","footer","preempting","request"]: ...
type___Record = Record

class Control(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    req_resp: builtin___bool = ...
    local: builtin___bool = ...

    def __init__(self,
        *,
        req_resp : typing___Optional[builtin___bool] = None,
        local : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"local",b"local",u"req_resp",b"req_resp"]) -> None: ...
type___Control = Control

class Result(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    uuid: typing___Text = ...

    @property
    def run_result(self) -> type___RunUpdateResult: ...

    @property
    def exit_result(self) -> type___RunExitResult: ...

    @property
    def log_result(self) -> type___HistoryResult: ...

    @property
    def summary_result(self) -> type___SummaryResult: ...

    @property
    def output_result(self) -> type___OutputResult: ...

    @property
    def config_result(self) -> type___ConfigResult: ...

    @property
    def response(self) -> type___Response: ...

    def __init__(self,
        *,
        run_result : typing___Optional[type___RunUpdateResult] = None,
        exit_result : typing___Optional[type___RunExitResult] = None,
        log_result : typing___Optional[type___HistoryResult] = None,
        summary_result : typing___Optional[type___SummaryResult] = None,
        output_result : typing___Optional[type___OutputResult] = None,
        config_result : typing___Optional[type___ConfigResult] = None,
        response : typing___Optional[type___Response] = None,
        uuid : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"config_result",b"config_result",u"exit_result",b"exit_result",u"log_result",b"log_result",u"output_result",b"output_result",u"response",b"response",u"result_type",b"result_type",u"run_result",b"run_result",u"summary_result",b"summary_result"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"config_result",b"config_result",u"exit_result",b"exit_result",u"log_result",b"log_result",u"output_result",b"output_result",u"response",b"response",u"result_type",b"result_type",u"run_result",b"run_result",u"summary_result",b"summary_result",u"uuid",b"uuid"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions___Literal[u"result_type",b"result_type"]) -> typing_extensions___Literal["run_result","exit_result","log_result","summary_result","output_result","config_result","response"]: ...
type___Result = Result

class FinalRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___FinalRecord = FinalRecord

class HeaderRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___HeaderRecord = HeaderRecord

class FooterRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___FooterRecord = FooterRecord

class RunRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    run_id: typing___Text = ...
    entity: typing___Text = ...
    project: typing___Text = ...
    run_group: typing___Text = ...
    job_type: typing___Text = ...
    display_name: typing___Text = ...
    notes: typing___Text = ...
    tags: google___protobuf___internal___containers___RepeatedScalarFieldContainer[typing___Text] = ...
    sweep_id: typing___Text = ...
    host: typing___Text = ...
    starting_step: builtin___int = ...
    storage_id: typing___Text = ...
    resumed: builtin___bool = ...
    runtime: builtin___int = ...
    runqueue_item_id: typing___Text = ...

    @property
    def config(self) -> type___ConfigRecord: ...

    @property
    def summary(self) -> type___SummaryRecord: ...

    @property
    def settings(self) -> type___SettingsRecord: ...

    @property
    def start_time(self) -> google___protobuf___timestamp_pb2___Timestamp: ...

    @property
    def telemetry(self) -> wandb___proto___wandb_telemetry_pb2___TelemetryRecord: ...

    def __init__(self,
        *,
        run_id : typing___Optional[typing___Text] = None,
        entity : typing___Optional[typing___Text] = None,
        project : typing___Optional[typing___Text] = None,
        config : typing___Optional[type___ConfigRecord] = None,
        summary : typing___Optional[type___SummaryRecord] = None,
        run_group : typing___Optional[typing___Text] = None,
        job_type : typing___Optional[typing___Text] = None,
        display_name : typing___Optional[typing___Text] = None,
        notes : typing___Optional[typing___Text] = None,
        tags : typing___Optional[typing___Iterable[typing___Text]] = None,
        settings : typing___Optional[type___SettingsRecord] = None,
        sweep_id : typing___Optional[typing___Text] = None,
        host : typing___Optional[typing___Text] = None,
        starting_step : typing___Optional[builtin___int] = None,
        storage_id : typing___Optional[typing___Text] = None,
        start_time : typing___Optional[google___protobuf___timestamp_pb2___Timestamp] = None,
        resumed : typing___Optional[builtin___bool] = None,
        telemetry : typing___Optional[wandb___proto___wandb_telemetry_pb2___TelemetryRecord] = None,
        runtime : typing___Optional[builtin___int] = None,
        runqueue_item_id : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"config",b"config",u"settings",b"settings",u"start_time",b"start_time",u"summary",b"summary",u"telemetry",b"telemetry"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"config",b"config",u"display_name",b"display_name",u"entity",b"entity",u"host",b"host",u"job_type",b"job_type",u"notes",b"notes",u"project",b"project",u"resumed",b"resumed",u"run_group",b"run_group",u"run_id",b"run_id",u"runqueue_item_id",b"runqueue_item_id",u"runtime",b"runtime",u"settings",b"settings",u"start_time",b"start_time",u"starting_step",b"starting_step",u"storage_id",b"storage_id",u"summary",b"summary",u"sweep_id",b"sweep_id",u"tags",b"tags",u"telemetry",b"telemetry"]) -> None: ...
type___RunRecord = RunRecord

class RunUpdateResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def run(self) -> type___RunRecord: ...

    @property
    def error(self) -> type___ErrorInfo: ...

    def __init__(self,
        *,
        run : typing___Optional[type___RunRecord] = None,
        error : typing___Optional[type___ErrorInfo] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"error",b"error",u"run",b"run"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"error",b"error",u"run",b"run"]) -> None: ...
type___RunUpdateResult = RunUpdateResult

class ErrorInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    ErrorCodeValue = typing___NewType('ErrorCodeValue', builtin___int)
    type___ErrorCodeValue = ErrorCodeValue
    ErrorCode: _ErrorCode
    class _ErrorCode(google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper[ErrorInfo.ErrorCodeValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        UNKNOWN = typing___cast(ErrorInfo.ErrorCodeValue, 0)
        INVALID = typing___cast(ErrorInfo.ErrorCodeValue, 1)
        PERMISSION = typing___cast(ErrorInfo.ErrorCodeValue, 2)
        NETWORK = typing___cast(ErrorInfo.ErrorCodeValue, 3)
        INTERNAL = typing___cast(ErrorInfo.ErrorCodeValue, 4)
    UNKNOWN = typing___cast(ErrorInfo.ErrorCodeValue, 0)
    INVALID = typing___cast(ErrorInfo.ErrorCodeValue, 1)
    PERMISSION = typing___cast(ErrorInfo.ErrorCodeValue, 2)
    NETWORK = typing___cast(ErrorInfo.ErrorCodeValue, 3)
    INTERNAL = typing___cast(ErrorInfo.ErrorCodeValue, 4)
    type___ErrorCode = ErrorCode

    message: typing___Text = ...
    code: type___ErrorInfo.ErrorCodeValue = ...

    def __init__(self,
        *,
        message : typing___Optional[typing___Text] = None,
        code : typing___Optional[type___ErrorInfo.ErrorCodeValue] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"code",b"code",u"message",b"message"]) -> None: ...
type___ErrorInfo = ErrorInfo

class RunExitRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    exit_code: builtin___int = ...
    runtime: builtin___int = ...

    def __init__(self,
        *,
        exit_code : typing___Optional[builtin___int] = None,
        runtime : typing___Optional[builtin___int] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"exit_code",b"exit_code",u"runtime",b"runtime"]) -> None: ...
type___RunExitRecord = RunExitRecord

class RunPreemptingRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___RunPreemptingRecord = RunPreemptingRecord

class RunExitResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___RunExitResult = RunExitResult

class SettingsRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___SettingsItem]: ...

    def __init__(self,
        *,
        item : typing___Optional[typing___Iterable[type___SettingsItem]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"item",b"item"]) -> None: ...
type___SettingsRecord = SettingsRecord

class SettingsItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self,
        *,
        key : typing___Optional[typing___Text] = None,
        value_json : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value_json",b"value_json"]) -> None: ...
type___SettingsItem = SettingsItem

class HistoryStep(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    num: builtin___int = ...

    def __init__(self,
        *,
        num : typing___Optional[builtin___int] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"num",b"num"]) -> None: ...
type___HistoryStep = HistoryStep

class HistoryRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___HistoryItem]: ...

    @property
    def step(self) -> type___HistoryStep: ...

    def __init__(self,
        *,
        item : typing___Optional[typing___Iterable[type___HistoryItem]] = None,
        step : typing___Optional[type___HistoryStep] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"step",b"step"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"item",b"item",u"step",b"step"]) -> None: ...
type___HistoryRecord = HistoryRecord

class HistoryItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    nested_key: google___protobuf___internal___containers___RepeatedScalarFieldContainer[typing___Text] = ...
    value_json: typing___Text = ...

    def __init__(self,
        *,
        key : typing___Optional[typing___Text] = None,
        nested_key : typing___Optional[typing___Iterable[typing___Text]] = None,
        value_json : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"nested_key",b"nested_key",u"value_json",b"value_json"]) -> None: ...
type___HistoryItem = HistoryItem

class HistoryResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___HistoryResult = HistoryResult

class OutputRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    OutputTypeValue = typing___NewType('OutputTypeValue', builtin___int)
    type___OutputTypeValue = OutputTypeValue
    OutputType: _OutputType
    class _OutputType(google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper[OutputRecord.OutputTypeValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        STDERR = typing___cast(OutputRecord.OutputTypeValue, 0)
        STDOUT = typing___cast(OutputRecord.OutputTypeValue, 1)
    STDERR = typing___cast(OutputRecord.OutputTypeValue, 0)
    STDOUT = typing___cast(OutputRecord.OutputTypeValue, 1)
    type___OutputType = OutputType

    output_type: type___OutputRecord.OutputTypeValue = ...
    line: typing___Text = ...

    @property
    def timestamp(self) -> google___protobuf___timestamp_pb2___Timestamp: ...

    def __init__(self,
        *,
        output_type : typing___Optional[type___OutputRecord.OutputTypeValue] = None,
        timestamp : typing___Optional[google___protobuf___timestamp_pb2___Timestamp] = None,
        line : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"timestamp",b"timestamp"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"line",b"line",u"output_type",b"output_type",u"timestamp",b"timestamp"]) -> None: ...
type___OutputRecord = OutputRecord

class OutputResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___OutputResult = OutputResult

class MetricRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    MetricGoalValue = typing___NewType('MetricGoalValue', builtin___int)
    type___MetricGoalValue = MetricGoalValue
    MetricGoal: _MetricGoal
    class _MetricGoal(google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper[MetricRecord.MetricGoalValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        GOAL_UNSET = typing___cast(MetricRecord.MetricGoalValue, 0)
        GOAL_MINIMIZE = typing___cast(MetricRecord.MetricGoalValue, 1)
        GOAL_MAXIMIZE = typing___cast(MetricRecord.MetricGoalValue, 2)
    GOAL_UNSET = typing___cast(MetricRecord.MetricGoalValue, 0)
    GOAL_MINIMIZE = typing___cast(MetricRecord.MetricGoalValue, 1)
    GOAL_MAXIMIZE = typing___cast(MetricRecord.MetricGoalValue, 2)
    type___MetricGoal = MetricGoal

    name: typing___Text = ...
    glob_name: typing___Text = ...
    step_metric: typing___Text = ...
    step_metric_index: builtin___int = ...
    goal: type___MetricRecord.MetricGoalValue = ...

    @property
    def options(self) -> type___MetricOptions: ...

    @property
    def summary(self) -> type___MetricSummary: ...

    @property
    def _control(self) -> type___MetricControl: ...

    def __init__(self,
        *,
        name : typing___Optional[typing___Text] = None,
        glob_name : typing___Optional[typing___Text] = None,
        step_metric : typing___Optional[typing___Text] = None,
        step_metric_index : typing___Optional[builtin___int] = None,
        options : typing___Optional[type___MetricOptions] = None,
        summary : typing___Optional[type___MetricSummary] = None,
        goal : typing___Optional[type___MetricRecord.MetricGoalValue] = None,
        _control : typing___Optional[type___MetricControl] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"_control",b"_control",u"options",b"options",u"summary",b"summary"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"_control",b"_control",u"glob_name",b"glob_name",u"goal",b"goal",u"name",b"name",u"options",b"options",u"step_metric",b"step_metric",u"step_metric_index",b"step_metric_index",u"summary",b"summary"]) -> None: ...
type___MetricRecord = MetricRecord

class MetricOptions(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    step_sync: builtin___bool = ...
    hidden: builtin___bool = ...
    defined: builtin___bool = ...

    def __init__(self,
        *,
        step_sync : typing___Optional[builtin___bool] = None,
        hidden : typing___Optional[builtin___bool] = None,
        defined : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"defined",b"defined",u"hidden",b"hidden",u"step_sync",b"step_sync"]) -> None: ...
type___MetricOptions = MetricOptions

class MetricControl(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    overwrite: builtin___bool = ...

    def __init__(self,
        *,
        overwrite : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"overwrite",b"overwrite"]) -> None: ...
type___MetricControl = MetricControl

class MetricSummary(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    min: builtin___bool = ...
    max: builtin___bool = ...
    mean: builtin___bool = ...
    best: builtin___bool = ...
    last: builtin___bool = ...
    none: builtin___bool = ...
    copy: builtin___bool = ...

    def __init__(self,
        *,
        min : typing___Optional[builtin___bool] = None,
        max : typing___Optional[builtin___bool] = None,
        mean : typing___Optional[builtin___bool] = None,
        best : typing___Optional[builtin___bool] = None,
        last : typing___Optional[builtin___bool] = None,
        none : typing___Optional[builtin___bool] = None,
        copy : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"best",b"best",u"copy",b"copy",u"last",b"last",u"max",b"max",u"mean",b"mean",u"min",b"min",u"none",b"none"]) -> None: ...
type___MetricSummary = MetricSummary

class ConfigRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def update(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___ConfigItem]: ...

    @property
    def remove(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___ConfigItem]: ...

    def __init__(self,
        *,
        update : typing___Optional[typing___Iterable[type___ConfigItem]] = None,
        remove : typing___Optional[typing___Iterable[type___ConfigItem]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"remove",b"remove",u"update",b"update"]) -> None: ...
type___ConfigRecord = ConfigRecord

class ConfigItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    nested_key: google___protobuf___internal___containers___RepeatedScalarFieldContainer[typing___Text] = ...
    value_json: typing___Text = ...

    def __init__(self,
        *,
        key : typing___Optional[typing___Text] = None,
        nested_key : typing___Optional[typing___Iterable[typing___Text]] = None,
        value_json : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"nested_key",b"nested_key",u"value_json",b"value_json"]) -> None: ...
type___ConfigItem = ConfigItem

class ConfigResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___ConfigResult = ConfigResult

class SummaryRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def update(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___SummaryItem]: ...

    @property
    def remove(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___SummaryItem]: ...

    def __init__(self,
        *,
        update : typing___Optional[typing___Iterable[type___SummaryItem]] = None,
        remove : typing___Optional[typing___Iterable[type___SummaryItem]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"remove",b"remove",u"update",b"update"]) -> None: ...
type___SummaryRecord = SummaryRecord

class SummaryItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    nested_key: google___protobuf___internal___containers___RepeatedScalarFieldContainer[typing___Text] = ...
    value_json: typing___Text = ...

    def __init__(self,
        *,
        key : typing___Optional[typing___Text] = None,
        nested_key : typing___Optional[typing___Iterable[typing___Text]] = None,
        value_json : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"nested_key",b"nested_key",u"value_json",b"value_json"]) -> None: ...
type___SummaryItem = SummaryItem

class SummaryResult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___SummaryResult = SummaryResult

class FilesRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def files(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___FilesItem]: ...

    def __init__(self,
        *,
        files : typing___Optional[typing___Iterable[type___FilesItem]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"files",b"files"]) -> None: ...
type___FilesRecord = FilesRecord

class FilesItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    PolicyTypeValue = typing___NewType('PolicyTypeValue', builtin___int)
    type___PolicyTypeValue = PolicyTypeValue
    PolicyType: _PolicyType
    class _PolicyType(google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper[FilesItem.PolicyTypeValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        NOW = typing___cast(FilesItem.PolicyTypeValue, 0)
        END = typing___cast(FilesItem.PolicyTypeValue, 1)
        LIVE = typing___cast(FilesItem.PolicyTypeValue, 2)
    NOW = typing___cast(FilesItem.PolicyTypeValue, 0)
    END = typing___cast(FilesItem.PolicyTypeValue, 1)
    LIVE = typing___cast(FilesItem.PolicyTypeValue, 2)
    type___PolicyType = PolicyType

    path: typing___Text = ...
    policy: type___FilesItem.PolicyTypeValue = ...
    external_path: typing___Text = ...

    def __init__(self,
        *,
        path : typing___Optional[typing___Text] = None,
        policy : typing___Optional[type___FilesItem.PolicyTypeValue] = None,
        external_path : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"external_path",b"external_path",u"path",b"path",u"policy",b"policy"]) -> None: ...
type___FilesItem = FilesItem

class StatsRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    StatsTypeValue = typing___NewType('StatsTypeValue', builtin___int)
    type___StatsTypeValue = StatsTypeValue
    StatsType: _StatsType
    class _StatsType(google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper[StatsRecord.StatsTypeValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        SYSTEM = typing___cast(StatsRecord.StatsTypeValue, 0)
    SYSTEM = typing___cast(StatsRecord.StatsTypeValue, 0)
    type___StatsType = StatsType

    stats_type: type___StatsRecord.StatsTypeValue = ...

    @property
    def timestamp(self) -> google___protobuf___timestamp_pb2___Timestamp: ...

    @property
    def item(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___StatsItem]: ...

    def __init__(self,
        *,
        stats_type : typing___Optional[type___StatsRecord.StatsTypeValue] = None,
        timestamp : typing___Optional[google___protobuf___timestamp_pb2___Timestamp] = None,
        item : typing___Optional[typing___Iterable[type___StatsItem]] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"timestamp",b"timestamp"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"item",b"item",u"stats_type",b"stats_type",u"timestamp",b"timestamp"]) -> None: ...
type___StatsRecord = StatsRecord

class StatsItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self,
        *,
        key : typing___Optional[typing___Text] = None,
        value_json : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value_json",b"value_json"]) -> None: ...
type___StatsItem = StatsItem

class ArtifactRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    run_id: typing___Text = ...
    project: typing___Text = ...
    entity: typing___Text = ...
    type: typing___Text = ...
    name: typing___Text = ...
    digest: typing___Text = ...
    description: typing___Text = ...
    metadata: typing___Text = ...
    user_created: builtin___bool = ...
    use_after_commit: builtin___bool = ...
    aliases: google___protobuf___internal___containers___RepeatedScalarFieldContainer[typing___Text] = ...
    distributed_id: typing___Text = ...
    finalize: builtin___bool = ...
    client_id: typing___Text = ...
    sequence_client_id: typing___Text = ...
    incremental_beta1: builtin___bool = ...

    @property
    def manifest(self) -> type___ArtifactManifest: ...

    def __init__(self,
        *,
        run_id : typing___Optional[typing___Text] = None,
        project : typing___Optional[typing___Text] = None,
        entity : typing___Optional[typing___Text] = None,
        type : typing___Optional[typing___Text] = None,
        name : typing___Optional[typing___Text] = None,
        digest : typing___Optional[typing___Text] = None,
        description : typing___Optional[typing___Text] = None,
        metadata : typing___Optional[typing___Text] = None,
        user_created : typing___Optional[builtin___bool] = None,
        use_after_commit : typing___Optional[builtin___bool] = None,
        aliases : typing___Optional[typing___Iterable[typing___Text]] = None,
        manifest : typing___Optional[type___ArtifactManifest] = None,
        distributed_id : typing___Optional[typing___Text] = None,
        finalize : typing___Optional[builtin___bool] = None,
        client_id : typing___Optional[typing___Text] = None,
        sequence_client_id : typing___Optional[typing___Text] = None,
        incremental_beta1 : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"manifest",b"manifest"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"aliases",b"aliases",u"client_id",b"client_id",u"description",b"description",u"digest",b"digest",u"distributed_id",b"distributed_id",u"entity",b"entity",u"finalize",b"finalize",u"incremental_beta1",b"incremental_beta1",u"manifest",b"manifest",u"metadata",b"metadata",u"name",b"name",u"project",b"project",u"run_id",b"run_id",u"sequence_client_id",b"sequence_client_id",u"type",b"type",u"use_after_commit",b"use_after_commit",u"user_created",b"user_created"]) -> None: ...
type___ArtifactRecord = ArtifactRecord

class ArtifactManifest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    version: builtin___int = ...
    storage_policy: typing___Text = ...

    @property
    def storage_policy_config(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___StoragePolicyConfigItem]: ...

    @property
    def contents(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___ArtifactManifestEntry]: ...

    def __init__(self,
        *,
        version : typing___Optional[builtin___int] = None,
        storage_policy : typing___Optional[typing___Text] = None,
        storage_policy_config : typing___Optional[typing___Iterable[type___StoragePolicyConfigItem]] = None,
        contents : typing___Optional[typing___Iterable[type___ArtifactManifestEntry]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"contents",b"contents",u"storage_policy",b"storage_policy",u"storage_policy_config",b"storage_policy_config",u"version",b"version"]) -> None: ...
type___ArtifactManifest = ArtifactManifest

class ArtifactManifestEntry(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    path: typing___Text = ...
    digest: typing___Text = ...
    ref: typing___Text = ...
    size: builtin___int = ...
    mimetype: typing___Text = ...
    local_path: typing___Text = ...
    birth_artifact_id: typing___Text = ...

    @property
    def extra(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___ExtraItem]: ...

    def __init__(self,
        *,
        path : typing___Optional[typing___Text] = None,
        digest : typing___Optional[typing___Text] = None,
        ref : typing___Optional[typing___Text] = None,
        size : typing___Optional[builtin___int] = None,
        mimetype : typing___Optional[typing___Text] = None,
        local_path : typing___Optional[typing___Text] = None,
        birth_artifact_id : typing___Optional[typing___Text] = None,
        extra : typing___Optional[typing___Iterable[type___ExtraItem]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"birth_artifact_id",b"birth_artifact_id",u"digest",b"digest",u"extra",b"extra",u"local_path",b"local_path",u"mimetype",b"mimetype",u"path",b"path",u"ref",b"ref",u"size",b"size"]) -> None: ...
type___ArtifactManifestEntry = ArtifactManifestEntry

class ExtraItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self,
        *,
        key : typing___Optional[typing___Text] = None,
        value_json : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value_json",b"value_json"]) -> None: ...
type___ExtraItem = ExtraItem

class StoragePolicyConfigItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    value_json: typing___Text = ...

    def __init__(self,
        *,
        key : typing___Optional[typing___Text] = None,
        value_json : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value_json",b"value_json"]) -> None: ...
type___StoragePolicyConfigItem = StoragePolicyConfigItem

class TBRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    log_dir: typing___Text = ...
    save: builtin___bool = ...
    root_dir: typing___Text = ...

    def __init__(self,
        *,
        log_dir : typing___Optional[typing___Text] = None,
        save : typing___Optional[builtin___bool] = None,
        root_dir : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"log_dir",b"log_dir",u"root_dir",b"root_dir",u"save",b"save"]) -> None: ...
type___TBRecord = TBRecord

class AlertRecord(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    title: typing___Text = ...
    text: typing___Text = ...
    level: typing___Text = ...
    wait_duration: builtin___int = ...

    def __init__(self,
        *,
        title : typing___Optional[typing___Text] = None,
        text : typing___Optional[typing___Text] = None,
        level : typing___Optional[typing___Text] = None,
        wait_duration : typing___Optional[builtin___int] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"level",b"level",u"text",b"text",u"title",b"title",u"wait_duration",b"wait_duration"]) -> None: ...
type___AlertRecord = AlertRecord

class Request(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def stop_status(self) -> type___StopStatusRequest: ...

    @property
    def network_status(self) -> type___NetworkStatusRequest: ...

    @property
    def defer(self) -> type___DeferRequest: ...

    @property
    def get_summary(self) -> type___GetSummaryRequest: ...

    @property
    def login(self) -> type___LoginRequest: ...

    @property
    def pause(self) -> type___PauseRequest: ...

    @property
    def resume(self) -> type___ResumeRequest: ...

    @property
    def poll_exit(self) -> type___PollExitRequest: ...

    @property
    def sampled_history(self) -> type___SampledHistoryRequest: ...

    @property
    def run_start(self) -> type___RunStartRequest: ...

    @property
    def check_version(self) -> type___CheckVersionRequest: ...

    @property
    def log_artifact(self) -> type___LogArtifactRequest: ...

    @property
    def shutdown(self) -> type___ShutdownRequest: ...

    @property
    def test_inject(self) -> type___TestInjectRequest: ...

    def __init__(self,
        *,
        stop_status : typing___Optional[type___StopStatusRequest] = None,
        network_status : typing___Optional[type___NetworkStatusRequest] = None,
        defer : typing___Optional[type___DeferRequest] = None,
        get_summary : typing___Optional[type___GetSummaryRequest] = None,
        login : typing___Optional[type___LoginRequest] = None,
        pause : typing___Optional[type___PauseRequest] = None,
        resume : typing___Optional[type___ResumeRequest] = None,
        poll_exit : typing___Optional[type___PollExitRequest] = None,
        sampled_history : typing___Optional[type___SampledHistoryRequest] = None,
        run_start : typing___Optional[type___RunStartRequest] = None,
        check_version : typing___Optional[type___CheckVersionRequest] = None,
        log_artifact : typing___Optional[type___LogArtifactRequest] = None,
        shutdown : typing___Optional[type___ShutdownRequest] = None,
        test_inject : typing___Optional[type___TestInjectRequest] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"check_version",b"check_version",u"defer",b"defer",u"get_summary",b"get_summary",u"log_artifact",b"log_artifact",u"login",b"login",u"network_status",b"network_status",u"pause",b"pause",u"poll_exit",b"poll_exit",u"request_type",b"request_type",u"resume",b"resume",u"run_start",b"run_start",u"sampled_history",b"sampled_history",u"shutdown",b"shutdown",u"stop_status",b"stop_status",u"test_inject",b"test_inject"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"check_version",b"check_version",u"defer",b"defer",u"get_summary",b"get_summary",u"log_artifact",b"log_artifact",u"login",b"login",u"network_status",b"network_status",u"pause",b"pause",u"poll_exit",b"poll_exit",u"request_type",b"request_type",u"resume",b"resume",u"run_start",b"run_start",u"sampled_history",b"sampled_history",u"shutdown",b"shutdown",u"stop_status",b"stop_status",u"test_inject",b"test_inject"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions___Literal[u"request_type",b"request_type"]) -> typing_extensions___Literal["stop_status","network_status","defer","get_summary","login","pause","resume","poll_exit","sampled_history","run_start","check_version","log_artifact","shutdown","test_inject"]: ...
type___Request = Request

class Response(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def stop_status_response(self) -> type___StopStatusResponse: ...

    @property
    def network_status_response(self) -> type___NetworkStatusResponse: ...

    @property
    def login_response(self) -> type___LoginResponse: ...

    @property
    def get_summary_response(self) -> type___GetSummaryResponse: ...

    @property
    def poll_exit_response(self) -> type___PollExitResponse: ...

    @property
    def sampled_history_response(self) -> type___SampledHistoryResponse: ...

    @property
    def run_start_response(self) -> type___RunStartResponse: ...

    @property
    def check_version_response(self) -> type___CheckVersionResponse: ...

    @property
    def log_artifact_response(self) -> type___LogArtifactResponse: ...

    @property
    def shutdown_response(self) -> type___ShutdownResponse: ...

    @property
    def test_inject_response(self) -> type___TestInjectResponse: ...

    def __init__(self,
        *,
        stop_status_response : typing___Optional[type___StopStatusResponse] = None,
        network_status_response : typing___Optional[type___NetworkStatusResponse] = None,
        login_response : typing___Optional[type___LoginResponse] = None,
        get_summary_response : typing___Optional[type___GetSummaryResponse] = None,
        poll_exit_response : typing___Optional[type___PollExitResponse] = None,
        sampled_history_response : typing___Optional[type___SampledHistoryResponse] = None,
        run_start_response : typing___Optional[type___RunStartResponse] = None,
        check_version_response : typing___Optional[type___CheckVersionResponse] = None,
        log_artifact_response : typing___Optional[type___LogArtifactResponse] = None,
        shutdown_response : typing___Optional[type___ShutdownResponse] = None,
        test_inject_response : typing___Optional[type___TestInjectResponse] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"check_version_response",b"check_version_response",u"get_summary_response",b"get_summary_response",u"log_artifact_response",b"log_artifact_response",u"login_response",b"login_response",u"network_status_response",b"network_status_response",u"poll_exit_response",b"poll_exit_response",u"response_type",b"response_type",u"run_start_response",b"run_start_response",u"sampled_history_response",b"sampled_history_response",u"shutdown_response",b"shutdown_response",u"stop_status_response",b"stop_status_response",u"test_inject_response",b"test_inject_response"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"check_version_response",b"check_version_response",u"get_summary_response",b"get_summary_response",u"log_artifact_response",b"log_artifact_response",u"login_response",b"login_response",u"network_status_response",b"network_status_response",u"poll_exit_response",b"poll_exit_response",u"response_type",b"response_type",u"run_start_response",b"run_start_response",u"sampled_history_response",b"sampled_history_response",u"shutdown_response",b"shutdown_response",u"stop_status_response",b"stop_status_response",u"test_inject_response",b"test_inject_response"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions___Literal[u"response_type",b"response_type"]) -> typing_extensions___Literal["stop_status_response","network_status_response","login_response","get_summary_response","poll_exit_response","sampled_history_response","run_start_response","check_version_response","log_artifact_response","shutdown_response","test_inject_response"]: ...
type___Response = Response

class DeferRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    DeferStateValue = typing___NewType('DeferStateValue', builtin___int)
    type___DeferStateValue = DeferStateValue
    DeferState: _DeferState
    class _DeferState(google___protobuf___internal___enum_type_wrapper____EnumTypeWrapper[DeferRequest.DeferStateValue]):
        DESCRIPTOR: google___protobuf___descriptor___EnumDescriptor = ...
        BEGIN = typing___cast(DeferRequest.DeferStateValue, 0)
        FLUSH_STATS = typing___cast(DeferRequest.DeferStateValue, 1)
        FLUSH_TB = typing___cast(DeferRequest.DeferStateValue, 2)
        FLUSH_SUM = typing___cast(DeferRequest.DeferStateValue, 3)
        FLUSH_DEBOUNCER = typing___cast(DeferRequest.DeferStateValue, 4)
        FLUSH_DIR = typing___cast(DeferRequest.DeferStateValue, 5)
        FLUSH_FP = typing___cast(DeferRequest.DeferStateValue, 6)
        FLUSH_FS = typing___cast(DeferRequest.DeferStateValue, 7)
        FLUSH_FINAL = typing___cast(DeferRequest.DeferStateValue, 8)
        END = typing___cast(DeferRequest.DeferStateValue, 9)
    BEGIN = typing___cast(DeferRequest.DeferStateValue, 0)
    FLUSH_STATS = typing___cast(DeferRequest.DeferStateValue, 1)
    FLUSH_TB = typing___cast(DeferRequest.DeferStateValue, 2)
    FLUSH_SUM = typing___cast(DeferRequest.DeferStateValue, 3)
    FLUSH_DEBOUNCER = typing___cast(DeferRequest.DeferStateValue, 4)
    FLUSH_DIR = typing___cast(DeferRequest.DeferStateValue, 5)
    FLUSH_FP = typing___cast(DeferRequest.DeferStateValue, 6)
    FLUSH_FS = typing___cast(DeferRequest.DeferStateValue, 7)
    FLUSH_FINAL = typing___cast(DeferRequest.DeferStateValue, 8)
    END = typing___cast(DeferRequest.DeferStateValue, 9)
    type___DeferState = DeferState

    state: type___DeferRequest.DeferStateValue = ...

    def __init__(self,
        *,
        state : typing___Optional[type___DeferRequest.DeferStateValue] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"state",b"state"]) -> None: ...
type___DeferRequest = DeferRequest

class PauseRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___PauseRequest = PauseRequest

class ResumeRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___ResumeRequest = ResumeRequest

class LoginRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    api_key: typing___Text = ...

    def __init__(self,
        *,
        api_key : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"api_key",b"api_key"]) -> None: ...
type___LoginRequest = LoginRequest

class LoginResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    active_entity: typing___Text = ...

    def __init__(self,
        *,
        active_entity : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"active_entity",b"active_entity"]) -> None: ...
type___LoginResponse = LoginResponse

class GetSummaryRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___GetSummaryRequest = GetSummaryRequest

class GetSummaryResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___SummaryItem]: ...

    def __init__(self,
        *,
        item : typing___Optional[typing___Iterable[type___SummaryItem]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"item",b"item"]) -> None: ...
type___GetSummaryResponse = GetSummaryResponse

class StopStatusRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___StopStatusRequest = StopStatusRequest

class StopStatusResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    run_should_stop: builtin___bool = ...

    def __init__(self,
        *,
        run_should_stop : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"run_should_stop",b"run_should_stop"]) -> None: ...
type___StopStatusResponse = StopStatusResponse

class NetworkStatusRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___NetworkStatusRequest = NetworkStatusRequest

class NetworkStatusResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def network_responses(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___HttpResponse]: ...

    def __init__(self,
        *,
        network_responses : typing___Optional[typing___Iterable[type___HttpResponse]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"network_responses",b"network_responses"]) -> None: ...
type___NetworkStatusResponse = NetworkStatusResponse

class HttpResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    http_status_code: builtin___int = ...
    http_response_text: typing___Text = ...

    def __init__(self,
        *,
        http_status_code : typing___Optional[builtin___int] = None,
        http_response_text : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"http_response_text",b"http_response_text",u"http_status_code",b"http_status_code"]) -> None: ...
type___HttpResponse = HttpResponse

class PollExitRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___PollExitRequest = PollExitRequest

class PollExitResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    done: builtin___bool = ...

    @property
    def exit_result(self) -> type___RunExitResult: ...

    @property
    def file_counts(self) -> type___FileCounts: ...

    @property
    def pusher_stats(self) -> type___FilePusherStats: ...

    @property
    def local_info(self) -> type___LocalInfo: ...

    def __init__(self,
        *,
        done : typing___Optional[builtin___bool] = None,
        exit_result : typing___Optional[type___RunExitResult] = None,
        file_counts : typing___Optional[type___FileCounts] = None,
        pusher_stats : typing___Optional[type___FilePusherStats] = None,
        local_info : typing___Optional[type___LocalInfo] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"exit_result",b"exit_result",u"file_counts",b"file_counts",u"local_info",b"local_info",u"pusher_stats",b"pusher_stats"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"done",b"done",u"exit_result",b"exit_result",u"file_counts",b"file_counts",u"local_info",b"local_info",u"pusher_stats",b"pusher_stats"]) -> None: ...
type___PollExitResponse = PollExitResponse

class FileCounts(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    wandb_count: builtin___int = ...
    media_count: builtin___int = ...
    artifact_count: builtin___int = ...
    other_count: builtin___int = ...

    def __init__(self,
        *,
        wandb_count : typing___Optional[builtin___int] = None,
        media_count : typing___Optional[builtin___int] = None,
        artifact_count : typing___Optional[builtin___int] = None,
        other_count : typing___Optional[builtin___int] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"artifact_count",b"artifact_count",u"media_count",b"media_count",u"other_count",b"other_count",u"wandb_count",b"wandb_count"]) -> None: ...
type___FileCounts = FileCounts

class FilePusherStats(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    uploaded_bytes: builtin___int = ...
    total_bytes: builtin___int = ...
    deduped_bytes: builtin___int = ...

    def __init__(self,
        *,
        uploaded_bytes : typing___Optional[builtin___int] = None,
        total_bytes : typing___Optional[builtin___int] = None,
        deduped_bytes : typing___Optional[builtin___int] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"deduped_bytes",b"deduped_bytes",u"total_bytes",b"total_bytes",u"uploaded_bytes",b"uploaded_bytes"]) -> None: ...
type___FilePusherStats = FilePusherStats

class LocalInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    version: typing___Text = ...
    out_of_date: builtin___bool = ...

    def __init__(self,
        *,
        version : typing___Optional[typing___Text] = None,
        out_of_date : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"out_of_date",b"out_of_date",u"version",b"version"]) -> None: ...
type___LocalInfo = LocalInfo

class ShutdownRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___ShutdownRequest = ShutdownRequest

class ShutdownResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___ShutdownResponse = ShutdownResponse

class TestInjectRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    handler_exc: builtin___bool = ...
    handler_exit: builtin___bool = ...
    handler_abort: builtin___bool = ...
    sender_exc: builtin___bool = ...
    sender_exit: builtin___bool = ...
    sender_abort: builtin___bool = ...
    req_exc: builtin___bool = ...
    req_exit: builtin___bool = ...
    req_abort: builtin___bool = ...
    resp_exc: builtin___bool = ...
    resp_exit: builtin___bool = ...
    resp_abort: builtin___bool = ...
    msg_drop: builtin___bool = ...
    msg_hang: builtin___bool = ...

    def __init__(self,
        *,
        handler_exc : typing___Optional[builtin___bool] = None,
        handler_exit : typing___Optional[builtin___bool] = None,
        handler_abort : typing___Optional[builtin___bool] = None,
        sender_exc : typing___Optional[builtin___bool] = None,
        sender_exit : typing___Optional[builtin___bool] = None,
        sender_abort : typing___Optional[builtin___bool] = None,
        req_exc : typing___Optional[builtin___bool] = None,
        req_exit : typing___Optional[builtin___bool] = None,
        req_abort : typing___Optional[builtin___bool] = None,
        resp_exc : typing___Optional[builtin___bool] = None,
        resp_exit : typing___Optional[builtin___bool] = None,
        resp_abort : typing___Optional[builtin___bool] = None,
        msg_drop : typing___Optional[builtin___bool] = None,
        msg_hang : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"handler_abort",b"handler_abort",u"handler_exc",b"handler_exc",u"handler_exit",b"handler_exit",u"msg_drop",b"msg_drop",u"msg_hang",b"msg_hang",u"req_abort",b"req_abort",u"req_exc",b"req_exc",u"req_exit",b"req_exit",u"resp_abort",b"resp_abort",u"resp_exc",b"resp_exc",u"resp_exit",b"resp_exit",u"sender_abort",b"sender_abort",u"sender_exc",b"sender_exc",u"sender_exit",b"sender_exit"]) -> None: ...
type___TestInjectRequest = TestInjectRequest

class TestInjectResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___TestInjectResponse = TestInjectResponse

class SampledHistoryRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___SampledHistoryRequest = SampledHistoryRequest

class SampledHistoryItem(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    key: typing___Text = ...
    nested_key: google___protobuf___internal___containers___RepeatedScalarFieldContainer[typing___Text] = ...
    values_float: google___protobuf___internal___containers___RepeatedScalarFieldContainer[builtin___float] = ...
    values_int: google___protobuf___internal___containers___RepeatedScalarFieldContainer[builtin___int] = ...

    def __init__(self,
        *,
        key : typing___Optional[typing___Text] = None,
        nested_key : typing___Optional[typing___Iterable[typing___Text]] = None,
        values_float : typing___Optional[typing___Iterable[builtin___float]] = None,
        values_int : typing___Optional[typing___Iterable[builtin___int]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"nested_key",b"nested_key",u"values_float",b"values_float",u"values_int",b"values_int"]) -> None: ...
type___SampledHistoryItem = SampledHistoryItem

class SampledHistoryResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def item(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[type___SampledHistoryItem]: ...

    def __init__(self,
        *,
        item : typing___Optional[typing___Iterable[type___SampledHistoryItem]] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"item",b"item"]) -> None: ...
type___SampledHistoryResponse = SampledHistoryResponse

class RunStartRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def run(self) -> type___RunRecord: ...

    def __init__(self,
        *,
        run : typing___Optional[type___RunRecord] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"run",b"run"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"run",b"run"]) -> None: ...
type___RunStartRequest = RunStartRequest

class RunStartResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
type___RunStartResponse = RunStartResponse

class CheckVersionRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    current_version: typing___Text = ...

    def __init__(self,
        *,
        current_version : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"current_version",b"current_version"]) -> None: ...
type___CheckVersionRequest = CheckVersionRequest

class CheckVersionResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    upgrade_message: typing___Text = ...
    yank_message: typing___Text = ...
    delete_message: typing___Text = ...

    def __init__(self,
        *,
        upgrade_message : typing___Optional[typing___Text] = None,
        yank_message : typing___Optional[typing___Text] = None,
        delete_message : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"delete_message",b"delete_message",u"upgrade_message",b"upgrade_message",u"yank_message",b"yank_message"]) -> None: ...
type___CheckVersionResponse = CheckVersionResponse

class LogArtifactRequest(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def artifact(self) -> type___ArtifactRecord: ...

    def __init__(self,
        *,
        artifact : typing___Optional[type___ArtifactRecord] = None,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"artifact",b"artifact"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"artifact",b"artifact"]) -> None: ...
type___LogArtifactRequest = LogArtifactRequest

class LogArtifactResponse(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    artifact_id: typing___Text = ...
    error_message: typing___Text = ...

    def __init__(self,
        *,
        artifact_id : typing___Optional[typing___Text] = None,
        error_message : typing___Optional[typing___Text] = None,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"artifact_id",b"artifact_id",u"error_message",b"error_message"]) -> None: ...
type___LogArtifactResponse = LogArtifactResponse
