package compatibility

import (
	"context"

	runtimev1 "github.com/pingcap-inc/nexuscrm-contract/wire-go/gen/runtime/v1"
	"google.golang.org/grpc"
)

// publishedOutboundIntentClient freezes the current attachment-aware method
// set that existing consumers and test doubles implement. New terminal
// operations must use additive service interfaces instead of expanding it.
type publishedOutboundIntentClient struct{}

func (publishedOutboundIntentClient) ReadOutboundIntentGeneration(context.Context, *runtimev1.ReadOutboundIntentGenerationRequest, ...grpc.CallOption) (*runtimev1.ReadOutboundIntentGenerationResponse, error) {
	return nil, nil
}

func (publishedOutboundIntentClient) ListPendingOutboundIntents(context.Context, *runtimev1.ListPendingOutboundIntentsRequest, ...grpc.CallOption) (*runtimev1.ListPendingOutboundIntentsResponse, error) {
	return nil, nil
}

func (publishedOutboundIntentClient) AcknowledgeOutboundIntent(context.Context, *runtimev1.AcknowledgeOutboundIntentRequest, ...grpc.CallOption) (*runtimev1.AcknowledgeOutboundIntentResponse, error) {
	return nil, nil
}

func (publishedOutboundIntentClient) CommitOutboundResult(context.Context, *runtimev1.CommitOutboundResultRequest, ...grpc.CallOption) (*runtimev1.CommitOutboundResultResponse, error) {
	return nil, nil
}

func (publishedOutboundIntentClient) OpenOutboundMailAttachment(context.Context, *runtimev1.OpenOutboundMailAttachmentRequest, ...grpc.CallOption) (grpc.ServerStreamingClient[runtimev1.OpenOutboundMailAttachmentResponse], error) {
	return nil, nil
}

var _ runtimev1.OutboundIntentServiceClient = publishedOutboundIntentClient{}
