// SPDX-License-Identifier: Apache-2.0
// Copyright Authors of Hubble

// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.5.1
// - protoc             (unknown)
// source: tetragon/sensors.proto

package tetragon

import (
	context "context"
	grpc "google.golang.org/grpc"
	codes "google.golang.org/grpc/codes"
	status "google.golang.org/grpc/status"
)

// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
// Requires gRPC-Go v1.64.0 or later.
const _ = grpc.SupportPackageIsVersion9

const (
	FineGuidanceSensors_GetEvents_FullMethodName              = "/tetragon.FineGuidanceSensors/GetEvents"
	FineGuidanceSensors_GetHealth_FullMethodName              = "/tetragon.FineGuidanceSensors/GetHealth"
	FineGuidanceSensors_AddTracingPolicy_FullMethodName       = "/tetragon.FineGuidanceSensors/AddTracingPolicy"
	FineGuidanceSensors_DeleteTracingPolicy_FullMethodName    = "/tetragon.FineGuidanceSensors/DeleteTracingPolicy"
	FineGuidanceSensors_ListTracingPolicies_FullMethodName    = "/tetragon.FineGuidanceSensors/ListTracingPolicies"
	FineGuidanceSensors_ConfigureTracingPolicy_FullMethodName = "/tetragon.FineGuidanceSensors/ConfigureTracingPolicy"
	FineGuidanceSensors_EnableTracingPolicy_FullMethodName    = "/tetragon.FineGuidanceSensors/EnableTracingPolicy"
	FineGuidanceSensors_DisableTracingPolicy_FullMethodName   = "/tetragon.FineGuidanceSensors/DisableTracingPolicy"
	FineGuidanceSensors_ListSensors_FullMethodName            = "/tetragon.FineGuidanceSensors/ListSensors"
	FineGuidanceSensors_EnableSensor_FullMethodName           = "/tetragon.FineGuidanceSensors/EnableSensor"
	FineGuidanceSensors_DisableSensor_FullMethodName          = "/tetragon.FineGuidanceSensors/DisableSensor"
	FineGuidanceSensors_RemoveSensor_FullMethodName           = "/tetragon.FineGuidanceSensors/RemoveSensor"
	FineGuidanceSensors_GetStackTraceTree_FullMethodName      = "/tetragon.FineGuidanceSensors/GetStackTraceTree"
	FineGuidanceSensors_GetVersion_FullMethodName             = "/tetragon.FineGuidanceSensors/GetVersion"
	FineGuidanceSensors_RuntimeHook_FullMethodName            = "/tetragon.FineGuidanceSensors/RuntimeHook"
	FineGuidanceSensors_GetDebug_FullMethodName               = "/tetragon.FineGuidanceSensors/GetDebug"
	FineGuidanceSensors_SetDebug_FullMethodName               = "/tetragon.FineGuidanceSensors/SetDebug"
)

// FineGuidanceSensorsClient is the client API for FineGuidanceSensors service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
type FineGuidanceSensorsClient interface {
	GetEvents(ctx context.Context, in *GetEventsRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[GetEventsResponse], error)
	GetHealth(ctx context.Context, in *GetHealthStatusRequest, opts ...grpc.CallOption) (*GetHealthStatusResponse, error)
	AddTracingPolicy(ctx context.Context, in *AddTracingPolicyRequest, opts ...grpc.CallOption) (*AddTracingPolicyResponse, error)
	DeleteTracingPolicy(ctx context.Context, in *DeleteTracingPolicyRequest, opts ...grpc.CallOption) (*DeleteTracingPolicyResponse, error)
	ListTracingPolicies(ctx context.Context, in *ListTracingPoliciesRequest, opts ...grpc.CallOption) (*ListTracingPoliciesResponse, error)
	// ConfigureTracingPolicy can be used to configure a loaded tracing policy.
	// It can be used to:
	//   - enable/disable it
	//   - change its mode (enforcement vs monitoring)
	//
	// If multiple changes are requested and an error is encountered, the resulting state might have
	// partial updates applied. In other words, the configuring a tracing policy is not atomic.
	ConfigureTracingPolicy(ctx context.Context, in *ConfigureTracingPolicyRequest, opts ...grpc.CallOption) (*ConfigureTracingPolicyResponse, error)
	// Deprecated: Do not use.
	EnableTracingPolicy(ctx context.Context, in *EnableTracingPolicyRequest, opts ...grpc.CallOption) (*EnableTracingPolicyResponse, error)
	// Deprecated: Do not use.
	DisableTracingPolicy(ctx context.Context, in *DisableTracingPolicyRequest, opts ...grpc.CallOption) (*DisableTracingPolicyResponse, error)
	// Deprecated: Do not use.
	ListSensors(ctx context.Context, in *ListSensorsRequest, opts ...grpc.CallOption) (*ListSensorsResponse, error)
	// Deprecated: Do not use.
	EnableSensor(ctx context.Context, in *EnableSensorRequest, opts ...grpc.CallOption) (*EnableSensorResponse, error)
	// Deprecated: Do not use.
	DisableSensor(ctx context.Context, in *DisableSensorRequest, opts ...grpc.CallOption) (*DisableSensorResponse, error)
	// Deprecated: Do not use.
	RemoveSensor(ctx context.Context, in *RemoveSensorRequest, opts ...grpc.CallOption) (*RemoveSensorResponse, error)
	GetStackTraceTree(ctx context.Context, in *GetStackTraceTreeRequest, opts ...grpc.CallOption) (*GetStackTraceTreeResponse, error)
	GetVersion(ctx context.Context, in *GetVersionRequest, opts ...grpc.CallOption) (*GetVersionResponse, error)
	RuntimeHook(ctx context.Context, in *RuntimeHookRequest, opts ...grpc.CallOption) (*RuntimeHookResponse, error)
	GetDebug(ctx context.Context, in *GetDebugRequest, opts ...grpc.CallOption) (*GetDebugResponse, error)
	SetDebug(ctx context.Context, in *SetDebugRequest, opts ...grpc.CallOption) (*SetDebugResponse, error)
}

type fineGuidanceSensorsClient struct {
	cc grpc.ClientConnInterface
}

func NewFineGuidanceSensorsClient(cc grpc.ClientConnInterface) FineGuidanceSensorsClient {
	return &fineGuidanceSensorsClient{cc}
}

func (c *fineGuidanceSensorsClient) GetEvents(ctx context.Context, in *GetEventsRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[GetEventsResponse], error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	stream, err := c.cc.NewStream(ctx, &FineGuidanceSensors_ServiceDesc.Streams[0], FineGuidanceSensors_GetEvents_FullMethodName, cOpts...)
	if err != nil {
		return nil, err
	}
	x := &grpc.GenericClientStream[GetEventsRequest, GetEventsResponse]{ClientStream: stream}
	if err := x.ClientStream.SendMsg(in); err != nil {
		return nil, err
	}
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	return x, nil
}

// This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.
type FineGuidanceSensors_GetEventsClient = grpc.ServerStreamingClient[GetEventsResponse]

func (c *fineGuidanceSensorsClient) GetHealth(ctx context.Context, in *GetHealthStatusRequest, opts ...grpc.CallOption) (*GetHealthStatusResponse, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(GetHealthStatusResponse)
	err := c.cc.Invoke(ctx, FineGuidanceSensors_GetHealth_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *fineGuidanceSensorsClient) AddTracingPolicy(ctx context.Context, in *AddTracingPolicyRequest, opts ...grpc.CallOption) (*AddTracingPolicyResponse, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(AddTracingPolicyResponse)
	err := c.cc.Invoke(ctx, FineGuidanceSensors_AddTracingPolicy_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *fineGuidanceSensorsClient) DeleteTracingPolicy(ctx context.Context, in *DeleteTracingPolicyRequest, opts ...grpc.CallOption) (*DeleteTracingPolicyResponse, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(DeleteTracingPolicyResponse)
	err := c.cc.Invoke(ctx, FineGuidanceSensors_DeleteTracingPolicy_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *fineGuidanceSensorsClient) ListTracingPolicies(ctx context.Context, in *ListTracingPoliciesRequest, opts ...grpc.CallOption) (*ListTracingPoliciesResponse, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(ListTracingPoliciesResponse)
	err := c.cc.Invoke(ctx, FineGuidanceSensors_ListTracingPolicies_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *fineGuidanceSensorsClient) ConfigureTracingPolicy(ctx context.Context, in *ConfigureTracingPolicyRequest, opts ...grpc.CallOption) (*ConfigureTracingPolicyResponse, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(ConfigureTracingPolicyResponse)
	err := c.cc.Invoke(ctx, FineGuidanceSensors_ConfigureTracingPolicy_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// Deprecated: Do not use.
func (c *fineGuidanceSensorsClient) EnableTracingPolicy(ctx context.Context, in *EnableTracingPolicyRequest, opts ...grpc.CallOption) (*EnableTracingPolicyResponse, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(EnableTracingPolicyResponse)
	err := c.cc.Invoke(ctx, FineGuidanceSensors_EnableTracingPolicy_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// Deprecated: Do not use.
func (c *fineGuidanceSensorsClient) DisableTracingPolicy(ctx context.Context, in *DisableTracingPolicyRequest, opts ...grpc.CallOption) (*DisableTracingPolicyResponse, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(DisableTracingPolicyResponse)
	err := c.cc.Invoke(ctx, FineGuidanceSensors_DisableTracingPolicy_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// Deprecated: Do not use.
func (c *fineGuidanceSensorsClient) ListSensors(ctx context.Context, in *ListSensorsRequest, opts ...grpc.CallOption) (*ListSensorsResponse, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(ListSensorsResponse)
	err := c.cc.Invoke(ctx, FineGuidanceSensors_ListSensors_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// Deprecated: Do not use.
func (c *fineGuidanceSensorsClient) EnableSensor(ctx context.Context, in *EnableSensorRequest, opts ...grpc.CallOption) (*EnableSensorResponse, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(EnableSensorResponse)
	err := c.cc.Invoke(ctx, FineGuidanceSensors_EnableSensor_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// Deprecated: Do not use.
func (c *fineGuidanceSensorsClient) DisableSensor(ctx context.Context, in *DisableSensorRequest, opts ...grpc.CallOption) (*DisableSensorResponse, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(DisableSensorResponse)
	err := c.cc.Invoke(ctx, FineGuidanceSensors_DisableSensor_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// Deprecated: Do not use.
func (c *fineGuidanceSensorsClient) RemoveSensor(ctx context.Context, in *RemoveSensorRequest, opts ...grpc.CallOption) (*RemoveSensorResponse, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(RemoveSensorResponse)
	err := c.cc.Invoke(ctx, FineGuidanceSensors_RemoveSensor_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *fineGuidanceSensorsClient) GetStackTraceTree(ctx context.Context, in *GetStackTraceTreeRequest, opts ...grpc.CallOption) (*GetStackTraceTreeResponse, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(GetStackTraceTreeResponse)
	err := c.cc.Invoke(ctx, FineGuidanceSensors_GetStackTraceTree_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *fineGuidanceSensorsClient) GetVersion(ctx context.Context, in *GetVersionRequest, opts ...grpc.CallOption) (*GetVersionResponse, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(GetVersionResponse)
	err := c.cc.Invoke(ctx, FineGuidanceSensors_GetVersion_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *fineGuidanceSensorsClient) RuntimeHook(ctx context.Context, in *RuntimeHookRequest, opts ...grpc.CallOption) (*RuntimeHookResponse, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(RuntimeHookResponse)
	err := c.cc.Invoke(ctx, FineGuidanceSensors_RuntimeHook_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *fineGuidanceSensorsClient) GetDebug(ctx context.Context, in *GetDebugRequest, opts ...grpc.CallOption) (*GetDebugResponse, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(GetDebugResponse)
	err := c.cc.Invoke(ctx, FineGuidanceSensors_GetDebug_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *fineGuidanceSensorsClient) SetDebug(ctx context.Context, in *SetDebugRequest, opts ...grpc.CallOption) (*SetDebugResponse, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(SetDebugResponse)
	err := c.cc.Invoke(ctx, FineGuidanceSensors_SetDebug_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// FineGuidanceSensorsServer is the server API for FineGuidanceSensors service.
// All implementations must embed UnimplementedFineGuidanceSensorsServer
// for forward compatibility.
type FineGuidanceSensorsServer interface {
	GetEvents(*GetEventsRequest, grpc.ServerStreamingServer[GetEventsResponse]) error
	GetHealth(context.Context, *GetHealthStatusRequest) (*GetHealthStatusResponse, error)
	AddTracingPolicy(context.Context, *AddTracingPolicyRequest) (*AddTracingPolicyResponse, error)
	DeleteTracingPolicy(context.Context, *DeleteTracingPolicyRequest) (*DeleteTracingPolicyResponse, error)
	ListTracingPolicies(context.Context, *ListTracingPoliciesRequest) (*ListTracingPoliciesResponse, error)
	// ConfigureTracingPolicy can be used to configure a loaded tracing policy.
	// It can be used to:
	//   - enable/disable it
	//   - change its mode (enforcement vs monitoring)
	//
	// If multiple changes are requested and an error is encountered, the resulting state might have
	// partial updates applied. In other words, the configuring a tracing policy is not atomic.
	ConfigureTracingPolicy(context.Context, *ConfigureTracingPolicyRequest) (*ConfigureTracingPolicyResponse, error)
	// Deprecated: Do not use.
	EnableTracingPolicy(context.Context, *EnableTracingPolicyRequest) (*EnableTracingPolicyResponse, error)
	// Deprecated: Do not use.
	DisableTracingPolicy(context.Context, *DisableTracingPolicyRequest) (*DisableTracingPolicyResponse, error)
	// Deprecated: Do not use.
	ListSensors(context.Context, *ListSensorsRequest) (*ListSensorsResponse, error)
	// Deprecated: Do not use.
	EnableSensor(context.Context, *EnableSensorRequest) (*EnableSensorResponse, error)
	// Deprecated: Do not use.
	DisableSensor(context.Context, *DisableSensorRequest) (*DisableSensorResponse, error)
	// Deprecated: Do not use.
	RemoveSensor(context.Context, *RemoveSensorRequest) (*RemoveSensorResponse, error)
	GetStackTraceTree(context.Context, *GetStackTraceTreeRequest) (*GetStackTraceTreeResponse, error)
	GetVersion(context.Context, *GetVersionRequest) (*GetVersionResponse, error)
	RuntimeHook(context.Context, *RuntimeHookRequest) (*RuntimeHookResponse, error)
	GetDebug(context.Context, *GetDebugRequest) (*GetDebugResponse, error)
	SetDebug(context.Context, *SetDebugRequest) (*SetDebugResponse, error)
	mustEmbedUnimplementedFineGuidanceSensorsServer()
}

// UnimplementedFineGuidanceSensorsServer must be embedded to have
// forward compatible implementations.
//
// NOTE: this should be embedded by value instead of pointer to avoid a nil
// pointer dereference when methods are called.
type UnimplementedFineGuidanceSensorsServer struct{}

func (UnimplementedFineGuidanceSensorsServer) GetEvents(*GetEventsRequest, grpc.ServerStreamingServer[GetEventsResponse]) error {
	return status.Errorf(codes.Unimplemented, "method GetEvents not implemented")
}
func (UnimplementedFineGuidanceSensorsServer) GetHealth(context.Context, *GetHealthStatusRequest) (*GetHealthStatusResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetHealth not implemented")
}
func (UnimplementedFineGuidanceSensorsServer) AddTracingPolicy(context.Context, *AddTracingPolicyRequest) (*AddTracingPolicyResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method AddTracingPolicy not implemented")
}
func (UnimplementedFineGuidanceSensorsServer) DeleteTracingPolicy(context.Context, *DeleteTracingPolicyRequest) (*DeleteTracingPolicyResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteTracingPolicy not implemented")
}
func (UnimplementedFineGuidanceSensorsServer) ListTracingPolicies(context.Context, *ListTracingPoliciesRequest) (*ListTracingPoliciesResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListTracingPolicies not implemented")
}
func (UnimplementedFineGuidanceSensorsServer) ConfigureTracingPolicy(context.Context, *ConfigureTracingPolicyRequest) (*ConfigureTracingPolicyResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ConfigureTracingPolicy not implemented")
}
func (UnimplementedFineGuidanceSensorsServer) EnableTracingPolicy(context.Context, *EnableTracingPolicyRequest) (*EnableTracingPolicyResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method EnableTracingPolicy not implemented")
}
func (UnimplementedFineGuidanceSensorsServer) DisableTracingPolicy(context.Context, *DisableTracingPolicyRequest) (*DisableTracingPolicyResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DisableTracingPolicy not implemented")
}
func (UnimplementedFineGuidanceSensorsServer) ListSensors(context.Context, *ListSensorsRequest) (*ListSensorsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListSensors not implemented")
}
func (UnimplementedFineGuidanceSensorsServer) EnableSensor(context.Context, *EnableSensorRequest) (*EnableSensorResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method EnableSensor not implemented")
}
func (UnimplementedFineGuidanceSensorsServer) DisableSensor(context.Context, *DisableSensorRequest) (*DisableSensorResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DisableSensor not implemented")
}
func (UnimplementedFineGuidanceSensorsServer) RemoveSensor(context.Context, *RemoveSensorRequest) (*RemoveSensorResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method RemoveSensor not implemented")
}
func (UnimplementedFineGuidanceSensorsServer) GetStackTraceTree(context.Context, *GetStackTraceTreeRequest) (*GetStackTraceTreeResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetStackTraceTree not implemented")
}
func (UnimplementedFineGuidanceSensorsServer) GetVersion(context.Context, *GetVersionRequest) (*GetVersionResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetVersion not implemented")
}
func (UnimplementedFineGuidanceSensorsServer) RuntimeHook(context.Context, *RuntimeHookRequest) (*RuntimeHookResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method RuntimeHook not implemented")
}
func (UnimplementedFineGuidanceSensorsServer) GetDebug(context.Context, *GetDebugRequest) (*GetDebugResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetDebug not implemented")
}
func (UnimplementedFineGuidanceSensorsServer) SetDebug(context.Context, *SetDebugRequest) (*SetDebugResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method SetDebug not implemented")
}
func (UnimplementedFineGuidanceSensorsServer) mustEmbedUnimplementedFineGuidanceSensorsServer() {}
func (UnimplementedFineGuidanceSensorsServer) testEmbeddedByValue()                             {}

// UnsafeFineGuidanceSensorsServer may be embedded to opt out of forward compatibility for this service.
// Use of this interface is not recommended, as added methods to FineGuidanceSensorsServer will
// result in compilation errors.
type UnsafeFineGuidanceSensorsServer interface {
	mustEmbedUnimplementedFineGuidanceSensorsServer()
}

func RegisterFineGuidanceSensorsServer(s grpc.ServiceRegistrar, srv FineGuidanceSensorsServer) {
	// If the following call pancis, it indicates UnimplementedFineGuidanceSensorsServer was
	// embedded by pointer and is nil.  This will cause panics if an
	// unimplemented method is ever invoked, so we test this at initialization
	// time to prevent it from happening at runtime later due to I/O.
	if t, ok := srv.(interface{ testEmbeddedByValue() }); ok {
		t.testEmbeddedByValue()
	}
	s.RegisterService(&FineGuidanceSensors_ServiceDesc, srv)
}

func _FineGuidanceSensors_GetEvents_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(GetEventsRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(FineGuidanceSensorsServer).GetEvents(m, &grpc.GenericServerStream[GetEventsRequest, GetEventsResponse]{ServerStream: stream})
}

// This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.
type FineGuidanceSensors_GetEventsServer = grpc.ServerStreamingServer[GetEventsResponse]

func _FineGuidanceSensors_GetHealth_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetHealthStatusRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(FineGuidanceSensorsServer).GetHealth(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: FineGuidanceSensors_GetHealth_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(FineGuidanceSensorsServer).GetHealth(ctx, req.(*GetHealthStatusRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _FineGuidanceSensors_AddTracingPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AddTracingPolicyRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(FineGuidanceSensorsServer).AddTracingPolicy(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: FineGuidanceSensors_AddTracingPolicy_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(FineGuidanceSensorsServer).AddTracingPolicy(ctx, req.(*AddTracingPolicyRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _FineGuidanceSensors_DeleteTracingPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteTracingPolicyRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(FineGuidanceSensorsServer).DeleteTracingPolicy(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: FineGuidanceSensors_DeleteTracingPolicy_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(FineGuidanceSensorsServer).DeleteTracingPolicy(ctx, req.(*DeleteTracingPolicyRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _FineGuidanceSensors_ListTracingPolicies_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListTracingPoliciesRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(FineGuidanceSensorsServer).ListTracingPolicies(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: FineGuidanceSensors_ListTracingPolicies_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(FineGuidanceSensorsServer).ListTracingPolicies(ctx, req.(*ListTracingPoliciesRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _FineGuidanceSensors_ConfigureTracingPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ConfigureTracingPolicyRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(FineGuidanceSensorsServer).ConfigureTracingPolicy(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: FineGuidanceSensors_ConfigureTracingPolicy_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(FineGuidanceSensorsServer).ConfigureTracingPolicy(ctx, req.(*ConfigureTracingPolicyRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _FineGuidanceSensors_EnableTracingPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(EnableTracingPolicyRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(FineGuidanceSensorsServer).EnableTracingPolicy(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: FineGuidanceSensors_EnableTracingPolicy_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(FineGuidanceSensorsServer).EnableTracingPolicy(ctx, req.(*EnableTracingPolicyRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _FineGuidanceSensors_DisableTracingPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DisableTracingPolicyRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(FineGuidanceSensorsServer).DisableTracingPolicy(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: FineGuidanceSensors_DisableTracingPolicy_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(FineGuidanceSensorsServer).DisableTracingPolicy(ctx, req.(*DisableTracingPolicyRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _FineGuidanceSensors_ListSensors_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListSensorsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(FineGuidanceSensorsServer).ListSensors(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: FineGuidanceSensors_ListSensors_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(FineGuidanceSensorsServer).ListSensors(ctx, req.(*ListSensorsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _FineGuidanceSensors_EnableSensor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(EnableSensorRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(FineGuidanceSensorsServer).EnableSensor(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: FineGuidanceSensors_EnableSensor_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(FineGuidanceSensorsServer).EnableSensor(ctx, req.(*EnableSensorRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _FineGuidanceSensors_DisableSensor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DisableSensorRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(FineGuidanceSensorsServer).DisableSensor(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: FineGuidanceSensors_DisableSensor_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(FineGuidanceSensorsServer).DisableSensor(ctx, req.(*DisableSensorRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _FineGuidanceSensors_RemoveSensor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(RemoveSensorRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(FineGuidanceSensorsServer).RemoveSensor(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: FineGuidanceSensors_RemoveSensor_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(FineGuidanceSensorsServer).RemoveSensor(ctx, req.(*RemoveSensorRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _FineGuidanceSensors_GetStackTraceTree_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetStackTraceTreeRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(FineGuidanceSensorsServer).GetStackTraceTree(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: FineGuidanceSensors_GetStackTraceTree_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(FineGuidanceSensorsServer).GetStackTraceTree(ctx, req.(*GetStackTraceTreeRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _FineGuidanceSensors_GetVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetVersionRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(FineGuidanceSensorsServer).GetVersion(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: FineGuidanceSensors_GetVersion_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(FineGuidanceSensorsServer).GetVersion(ctx, req.(*GetVersionRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _FineGuidanceSensors_RuntimeHook_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(RuntimeHookRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(FineGuidanceSensorsServer).RuntimeHook(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: FineGuidanceSensors_RuntimeHook_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(FineGuidanceSensorsServer).RuntimeHook(ctx, req.(*RuntimeHookRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _FineGuidanceSensors_GetDebug_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetDebugRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(FineGuidanceSensorsServer).GetDebug(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: FineGuidanceSensors_GetDebug_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(FineGuidanceSensorsServer).GetDebug(ctx, req.(*GetDebugRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _FineGuidanceSensors_SetDebug_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(SetDebugRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(FineGuidanceSensorsServer).SetDebug(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: FineGuidanceSensors_SetDebug_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(FineGuidanceSensorsServer).SetDebug(ctx, req.(*SetDebugRequest))
	}
	return interceptor(ctx, in, info, handler)
}

// FineGuidanceSensors_ServiceDesc is the grpc.ServiceDesc for FineGuidanceSensors service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
var FineGuidanceSensors_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "tetragon.FineGuidanceSensors",
	HandlerType: (*FineGuidanceSensorsServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "GetHealth",
			Handler:    _FineGuidanceSensors_GetHealth_Handler,
		},
		{
			MethodName: "AddTracingPolicy",
			Handler:    _FineGuidanceSensors_AddTracingPolicy_Handler,
		},
		{
			MethodName: "DeleteTracingPolicy",
			Handler:    _FineGuidanceSensors_DeleteTracingPolicy_Handler,
		},
		{
			MethodName: "ListTracingPolicies",
			Handler:    _FineGuidanceSensors_ListTracingPolicies_Handler,
		},
		{
			MethodName: "ConfigureTracingPolicy",
			Handler:    _FineGuidanceSensors_ConfigureTracingPolicy_Handler,
		},
		{
			MethodName: "EnableTracingPolicy",
			Handler:    _FineGuidanceSensors_EnableTracingPolicy_Handler,
		},
		{
			MethodName: "DisableTracingPolicy",
			Handler:    _FineGuidanceSensors_DisableTracingPolicy_Handler,
		},
		{
			MethodName: "ListSensors",
			Handler:    _FineGuidanceSensors_ListSensors_Handler,
		},
		{
			MethodName: "EnableSensor",
			Handler:    _FineGuidanceSensors_EnableSensor_Handler,
		},
		{
			MethodName: "DisableSensor",
			Handler:    _FineGuidanceSensors_DisableSensor_Handler,
		},
		{
			MethodName: "RemoveSensor",
			Handler:    _FineGuidanceSensors_RemoveSensor_Handler,
		},
		{
			MethodName: "GetStackTraceTree",
			Handler:    _FineGuidanceSensors_GetStackTraceTree_Handler,
		},
		{
			MethodName: "GetVersion",
			Handler:    _FineGuidanceSensors_GetVersion_Handler,
		},
		{
			MethodName: "RuntimeHook",
			Handler:    _FineGuidanceSensors_RuntimeHook_Handler,
		},
		{
			MethodName: "GetDebug",
			Handler:    _FineGuidanceSensors_GetDebug_Handler,
		},
		{
			MethodName: "SetDebug",
			Handler:    _FineGuidanceSensors_SetDebug_Handler,
		},
	},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "GetEvents",
			Handler:       _FineGuidanceSensors_GetEvents_Handler,
			ServerStreams: true,
		},
	},
	Metadata: "tetragon/sensors.proto",
}
