Issue sending []byte to a temporal workflow

Hello, I am looking for some help on how to send data to my workflow. I am trying to send it over a signal with the go sdk and I am getting this error from my activity:
"message": "failed to process event: proto: cannot parse invalid wire-format data"
This is the code for signaling it:

signal := kafkaretrywf.KafkaEventSignal{
		ProcessorName: processorName,
		KafkaEvent:    event,
	}

_, err = c.SignalWithStartWorkflow(
	ctx,
	workflowID,
	kafkaretrywf.KAFKA_EVENT_SIG,
	signal,
	workflowOptions,
	kafkaretrywf.KafkaRetryWF,
)

the types (I have tried changing it to []byte and to string and encoding when I send the signal/decoding in the activity and still get the same error):

type KafkaEventSignal struct {
	KafkaEvent    json.RawMessage `json:"kafka_event"`
	ProcessorName string          `json:"processor_name"`
}

type RetryProcessEventInput struct {
	KafkaEvent    json.RawMessage `json:"kafka_event"`
	ProcessorName string          `json:"processor_name"`
}

I need to send this data as []byte somehow because this is supposed to call a function within my activity that expects input as []byte.

If the workflow argument is of []byte type, then you have to pass a []byte value as an argument to the workflow start.