package usecase import "context" // LifecycleUseCase performs single-step member status transitions. type LifecycleUseCase interface { CreateUnverified(ctx context.Context, req *CreatePlatformMemberRequest) (*MemberDTO, error) Activate(ctx context.Context, tenantID, uid string) error Suspend(ctx context.Context, tenantID, uid, reason string) error Reactivate(ctx context.Context, tenantID, uid string) error SoftDelete(ctx context.Context, tenantID, uid string) error AbortPending(ctx context.Context, tenantID, uid string) error } // CreatePlatformMemberRequest creates an unverified platform-native member. type CreatePlatformMemberRequest struct { TenantID string Email string PasswordHash string DisplayName string Language string }