syntax = "proto3";

package block_engine;
option go_package = "generated/types";

import "dto.proto";

message StreamMempoolResponse {

}

message SubscribeBundlesRequest {

}

/// Validators can connect to Block Engines to receive packets and bundles.
service BlockEngineValidator {
  /// Validators can submit message to the block engine
  rpc StreamMempool (stream dto.MempoolPacket) returns (StreamMempoolResponse) {}

  /// Validators can subscribe to the block engine to receive a stream of simulated and profitable bundles
  rpc SubscribeBundles (SubscribeBundlesRequest) returns (stream dto.ValidatorBundle) {}
}
