# Note: this file must be for now manually (re)generated until protoc can
# generate type hints.

import typing

from . import simulation_pb2

class SimulationStub:
    def __init__(self, channel: typing.Any) -> None: ...
    def Init(self, request: simulation_pb2.InitRequest) -> simulation_pb2.InitReply: ...
    def Halt(self, request: simulation_pb2.HaltRequest) -> simulation_pb2.HaltReply: ...
    def Time(self, request: simulation_pb2.TimeRequest) -> simulation_pb2.TimeReply: ...
    def Step(self, request: simulation_pb2.StepRequest) -> simulation_pb2.StepReply: ...
    def StepUntil(
        self, request: simulation_pb2.StepUntilRequest
    ) -> simulation_pb2.StepUntilReply: ...
    def ScheduleEvent(
        self, request: simulation_pb2.ScheduleEventRequest
    ) -> simulation_pb2.ScheduleEventReply: ...
    def CancelEvent(
        self, request: simulation_pb2.CancelEventRequest
    ) -> simulation_pb2.CancelEventReply: ...
    def ProcessEvent(
        self, request: simulation_pb2.ProcessEventRequest
    ) -> simulation_pb2.ProcessEventReply: ...
    def ProcessQuery(
        self, request: simulation_pb2.ProcessQueryRequest
    ) -> simulation_pb2.ProcessQueryReply: ...
    def ReadEvents(
        self, request: simulation_pb2.ReadEventsRequest
    ) -> simulation_pb2.ReadEventsReply: ...
    def OpenSink(
        self, request: simulation_pb2.OpenSinkRequest
    ) -> simulation_pb2.OpenSinkReply: ...
    def CloseSink(
        self, request: simulation_pb2.CloseSinkRequest
    ) -> simulation_pb2.CloseSinkReply: ...
