syntax = "proto3"; package proto; message Empty {} message BridgeInput { oneof value { PlusOneIn plus_one = 2; TemplateRequirementsIn template_requirements = 3; } } message BridgeOutput { oneof value { BridgeError error = 1; PlusOneOut plus_one = 2; TemplateRequirementsOut template_requirements = 3; } } message BridgeError { oneof value { InvalidInputError invalid_input = 1; TemplateParseError template_parse = 2; } } message InvalidInputError { string info = 1; } message PlusOneIn { int32 num = 1; } message PlusOneOut { int32 num = 1; } message TemplateParseError { string info = 1; } message TemplateRequirementsIn { repeated string template_front = 1; map field_names_to_ordinals = 2; } message TemplateRequirementsOut { repeated TemplateRequirement requirements = 1; } message TemplateRequirement { oneof value { TemplateRequirementAll all = 1; TemplateRequirementAny any = 2; Empty none = 3; } } message TemplateRequirementAll { repeated uint32 ords = 1; } message TemplateRequirementAny { repeated uint32 ords = 1; }