package protocol import ( "context" ) type Identifier string type Protocol interface { Identifier() Identifier Available(ctx context.Context, addr string) (Operations, error) Operations(addr string) Operations } type Operations interface { Connect(ctx context.Context) error Close() error }