"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""

from . import biointerface_pb2
import builtins
import collections.abc
from . import common_pb2
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import typing

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing.final
class RadiensHealthcheckRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ISINCLUDEWAREHOUSE_FIELD_NUMBER: builtins.int
    ISDETAILED_FIELD_NUMBER: builtins.int
    isIncludeWarehouse: builtins.bool
    isDetailed: builtins.bool
    def __init__(
        self,
        *,
        isIncludeWarehouse: builtins.bool | None = ...,
        isDetailed: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["isDetailed", b"isDetailed", "isIncludeWarehouse", b"isIncludeWarehouse"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["isDetailed", b"isDetailed", "isIncludeWarehouse", b"isIncludeWarehouse"]) -> None: ...

global___RadiensHealthcheckRequest = RadiensHealthcheckRequest

@typing.final
class RadiensHealthcheckSpec(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ERRMSG_FIELD_NUMBER: builtins.int
    OUTFITTER_FIELD_NUMBER: builtins.int
    errMsg: builtins.str
    @property
    def outfitter(self) -> common_pb2.WarehouseHealthcheckSpec: ...
    def __init__(
        self,
        *,
        errMsg: builtins.str | None = ...,
        outfitter: common_pb2.WarehouseHealthcheckSpec | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["errMsg", b"errMsg", "outfitter", b"outfitter"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["errMsg", b"errMsg", "outfitter", b"outfitter"]) -> None: ...

global___RadiensHealthcheckSpec = RadiensHealthcheckSpec

@typing.final
class RadiensClientId(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PID_FIELD_NUMBER: builtins.int
    pid: builtins.int
    """the pid of the process that's establishing a long-running session with radiensserver"""
    def __init__(
        self,
        *,
        pid: builtins.int | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["pid", b"pid"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["pid", b"pid"]) -> None: ...

global___RadiensClientId = RadiensClientId

@typing.final
class SummaSessionsReply(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing.final
    class SummaCurrentSession(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        SUMMAID_FIELD_NUMBER: builtins.int
        DSOURCEIDS_FIELD_NUMBER: builtins.int
        summaID: builtins.str
        @property
        def dsourceIDs(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
        def __init__(
            self,
            *,
            summaID: builtins.str | None = ...,
            dsourceIDs: collections.abc.Iterable[builtins.str] | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["summaID", b"summaID"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["dsourceIDs", b"dsourceIDs", "summaID", b"summaID"]) -> None: ...

    SESSION_FIELD_NUMBER: builtins.int
    @property
    def session(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SummaSessionsReply.SummaCurrentSession]: ...
    def __init__(
        self,
        *,
        session: collections.abc.Iterable[global___SummaSessionsReply.SummaCurrentSession] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["session", b"session"]) -> None: ...

global___SummaSessionsReply = SummaSessionsReply

@typing.final
class SummaAnalysisRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SUMMAID_FIELD_NUMBER: builtins.int
    DSOURCEIDS_FIELD_NUMBER: builtins.int
    PKTDURSEC_FIELD_NUMBER: builtins.int
    REQPART_FIELD_NUMBER: builtins.int
    summaID: builtins.str
    pktDurSec: builtins.float
    reqPart: builtins.str
    @property
    def dsourceIDs(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        summaID: builtins.str | None = ...,
        dsourceIDs: collections.abc.Iterable[builtins.str] | None = ...,
        pktDurSec: builtins.float | None = ...,
        reqPart: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["pktDurSec", b"pktDurSec", "reqPart", b"reqPart", "summaID", b"summaID"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["dsourceIDs", b"dsourceIDs", "pktDurSec", b"pktDurSec", "reqPart", b"reqPart", "summaID", b"summaID"]) -> None: ...

global___SummaAnalysisRequest = SummaAnalysisRequest

@typing.final
class SummaAnalysisReply(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SUMMAID_FIELD_NUMBER: builtins.int
    ALLDSOURCEIDS_FIELD_NUMBER: builtins.int
    STATE_FIELD_NUMBER: builtins.int
    ALLDSOURCESPEC_FIELD_NUMBER: builtins.int
    AGGSTATS_FIELD_NUMBER: builtins.int
    REQAVAILDSOURCESTATS_FIELD_NUMBER: builtins.int
    REQAVAILDSOURCEIDS_FIELD_NUMBER: builtins.int
    summaID: builtins.str
    """returns nil if no summa sessions, otherwise always returns"""
    @property
    def allDsourceIDs(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
        """always returns all dsourceIDs"""

    @property
    def state(self) -> global___SummaState:
        """always returns"""

    @property
    def allDsourceSpec(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SummaDatasourceSpec]:
        """always returns all dsourceSpec"""

    @property
    def aggStats(self) -> global___SummaAggregateStats: ...
    @property
    def reqAvailDsourceStats(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SummaDatasourceAnalysisPkg]: ...
    @property
    def reqAvailDsourceIDs(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
        """returns available req DsourceIDs"""

    def __init__(
        self,
        *,
        summaID: builtins.str | None = ...,
        allDsourceIDs: collections.abc.Iterable[builtins.str] | None = ...,
        state: global___SummaState | None = ...,
        allDsourceSpec: collections.abc.Iterable[global___SummaDatasourceSpec] | None = ...,
        aggStats: global___SummaAggregateStats | None = ...,
        reqAvailDsourceStats: collections.abc.Iterable[global___SummaDatasourceAnalysisPkg] | None = ...,
        reqAvailDsourceIDs: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["aggStats", b"aggStats", "state", b"state", "summaID", b"summaID"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["aggStats", b"aggStats", "allDsourceIDs", b"allDsourceIDs", "allDsourceSpec", b"allDsourceSpec", "reqAvailDsourceIDs", b"reqAvailDsourceIDs", "reqAvailDsourceStats", b"reqAvailDsourceStats", "state", b"state", "summaID", b"summaID"]) -> None: ...

global___SummaAnalysisReply = SummaAnalysisReply

@typing.final
class SummaState(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SUMMAID_FIELD_NUMBER: builtins.int
    ISCOMPLETE_FIELD_NUMBER: builtins.int
    FRACCOMPLETE_FIELD_NUMBER: builtins.int
    MSG_FIELD_NUMBER: builtins.int
    DSRCWALLTIMESTART_FIELD_NUMBER: builtins.int
    DSRCWALLTIMEEND_FIELD_NUMBER: builtins.int
    ANALYSISWALLTIMESTART_FIELD_NUMBER: builtins.int
    ANALYSISELAPSEDSEC_FIELD_NUMBER: builtins.int
    PACKETDURSEC_FIELD_NUMBER: builtins.int
    summaID: builtins.str
    isComplete: builtins.bool
    fracComplete: builtins.float
    msg: builtins.str
    dsrcWalltimeStart: builtins.str
    dsrcWalltimeEnd: builtins.str
    analysisWallTimeStart: builtins.str
    analysisElapsedSec: builtins.float
    packetDurSec: builtins.float
    def __init__(
        self,
        *,
        summaID: builtins.str | None = ...,
        isComplete: builtins.bool | None = ...,
        fracComplete: builtins.float | None = ...,
        msg: builtins.str | None = ...,
        dsrcWalltimeStart: builtins.str | None = ...,
        dsrcWalltimeEnd: builtins.str | None = ...,
        analysisWallTimeStart: builtins.str | None = ...,
        analysisElapsedSec: builtins.float | None = ...,
        packetDurSec: builtins.float | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["analysisElapsedSec", b"analysisElapsedSec", "analysisWallTimeStart", b"analysisWallTimeStart", "dsrcWalltimeEnd", b"dsrcWalltimeEnd", "dsrcWalltimeStart", b"dsrcWalltimeStart", "fracComplete", b"fracComplete", "isComplete", b"isComplete", "msg", b"msg", "packetDurSec", b"packetDurSec", "summaID", b"summaID"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["analysisElapsedSec", b"analysisElapsedSec", "analysisWallTimeStart", b"analysisWallTimeStart", "dsrcWalltimeEnd", b"dsrcWalltimeEnd", "dsrcWalltimeStart", b"dsrcWalltimeStart", "fracComplete", b"fracComplete", "isComplete", b"isComplete", "msg", b"msg", "packetDurSec", b"packetDurSec", "summaID", b"summaID"]) -> None: ...

global___SummaState = SummaState

@typing.final
class SummaAggregateStats(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    METRICID_FIELD_NUMBER: builtins.int
    HIST_FIELD_NUMBER: builtins.int
    @property
    def metricID(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[common_pb2.KpiMetricID]: ...
    @property
    def hist(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[common_pb2.Histogram]: ...
    def __init__(
        self,
        *,
        metricID: collections.abc.Iterable[common_pb2.KpiMetricID] | None = ...,
        hist: collections.abc.Iterable[common_pb2.Histogram] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["hist", b"hist", "metricID", b"metricID"]) -> None: ...

global___SummaAggregateStats = SummaAggregateStats

@typing.final
class SummaDatasourceAnalysisPkg(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    METRICID_FIELD_NUMBER: builtins.int
    HIST_FIELD_NUMBER: builtins.int
    RECS_FIELD_NUMBER: builtins.int
    HISTRECS_FIELD_NUMBER: builtins.int
    NTVIDXS_FIELD_NUMBER: builtins.int
    @property
    def metricID(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[common_pb2.KpiMetricID]: ...
    @property
    def hist(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[common_pb2.Histogram]: ...
    @property
    def recs(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[common_pb2.DenseMatrix]: ...
    @property
    def histRecs(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[common_pb2.Histogram]: ...
    @property
    def ntvIdxs(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: ...
    def __init__(
        self,
        *,
        metricID: collections.abc.Iterable[common_pb2.KpiMetricID] | None = ...,
        hist: collections.abc.Iterable[common_pb2.Histogram] | None = ...,
        recs: collections.abc.Iterable[common_pb2.DenseMatrix] | None = ...,
        histRecs: collections.abc.Iterable[common_pb2.Histogram] | None = ...,
        ntvIdxs: collections.abc.Iterable[builtins.int] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["hist", b"hist", "histRecs", b"histRecs", "metricID", b"metricID", "ntvIdxs", b"ntvIdxs", "recs", b"recs"]) -> None: ...

global___SummaDatasourceAnalysisPkg = SummaDatasourceAnalysisPkg

@typing.final
class SummaDatasourceSpec(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SG_FIELD_NUMBER: builtins.int
    TR_FIELD_NUMBER: builtins.int
    NISPEC_FIELD_NUMBER: builtins.int
    @property
    def sG(self) -> common_pb2.SignalGroup: ...
    @property
    def tR(self) -> common_pb2.TimeRange: ...
    @property
    def niSpec(self) -> biointerface_pb2.SpikesSpecReply: ...
    def __init__(
        self,
        *,
        sG: common_pb2.SignalGroup | None = ...,
        tR: common_pb2.TimeRange | None = ...,
        niSpec: biointerface_pb2.SpikesSpecReply | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["niSpec", b"niSpec", "sG", b"sG", "tR", b"tR"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["niSpec", b"niSpec", "sG", b"sG", "tR", b"tR"]) -> None: ...

global___SummaDatasourceSpec = SummaDatasourceSpec
