func (sdk *FabricSDK) NewPreEnrolledUser(orgID string, userName string) (apifabclient.IdentityContext, error) {
	return sdk.newUser(orgID, userName)
}
NewPreEnrolledUser returns a new pre-enrolled user
package fabsdk
import (
	"github.com/hyperledger/fabric-sdk-go/api/apiconfig"
	"github.com/hyperledger/fabric-sdk-go/api/apifabclient"
	"github.com/hyperledger/fabric-sdk-go/api/apitxn/chclient"
	chmgmt "github.com/hyperledger/fabric-sdk-go/api/apitxn/chmgmtclient"
	resmgmt "github.com/hyperledger/fabric-sdk-go/api/apitxn/resmgmtclient"
	apisdk "github.com/hyperledger/fabric-sdk-go/pkg/fabsdk/api"
	"github.com/pkg/errors"
)
type ChannelClientOpts struct {
	OrgName        string
	ConfigProvider apiconfig.Config
}
type ChannelMgmtClientOpts struct {
	OrgName        string
	ConfigProvider apiconfig.Config
}
type ResourceMgmtClientOpts struct {
	OrgName        string
	TargetFilter   resmgmt.TargetFilter
	ConfigProvider apiconfig.Config
}
func (sdk *FabricSDK) NewChannelMgmtClientWithOpts(userName string, opt *ChannelMgmtClientOpts) (chmgmt.ChannelMgmtClient, error) {
	o := []ContextOption{}
	if opt.OrgName != "" {
		o = append(o, WithOrg(opt.OrgName))
	}
	if opt.ConfigProvider != nil {
		o = append(o, withConfig(opt.ConfigProvider))
	}
	c := sdk.NewClient(WithUser(userName), o...)
	return c.ChannelMgmt()
}
func (sdk *FabricSDK) NewResourceMgmtClientWithOpts(userName string, opt *ResourceMgmtClientOpts) (resmgmt.ResourceMgmtClient, error) {
	o := []ContextOption{}
	if opt.OrgName != "" {
		o = append(o, WithOrg(opt.OrgName))
	}
	if opt.ConfigProvider != nil {
		o = append(o, withConfig(opt.ConfigProvider))
	}
	clientOpts := []ClientOption{}
	if opt.TargetFilter != nil {
		clientOpts = append(clientOpts, WithTargetFilter(opt.TargetFilter))
	}
	c := sdk.NewClient(WithUser(userName), o...)
	return c.ResourceMgmt(clientOpts...)
}
func (sdk *FabricSDK) NewChannelClientWithOpts(channelID string, userName string, opt *ChannelClientOpts) (chclient.ChannelClient, error) {
	o := []ContextOption{}
	if opt.OrgName != "" {
		o = append(o, WithOrg(opt.OrgName))
	}
	if opt.ConfigProvider != nil {
		o = append(o, withConfig(opt.ConfigProvider))
	}
	c := sdk.NewClient(WithUser(userName), o...)
	return c.Channel(channelID)
}
func (sdk *FabricSDK) NewChannelMgmtClient(userName string, opts ...ContextOption) (chmgmt.ChannelMgmtClient, error) {
	c := sdk.NewClient(WithUser(userName), opts...)
	return c.ChannelMgmt()
}
func (sdk *FabricSDK) NewResourceMgmtClient(userName string, opts ...ContextOption) (resmgmt.ResourceMgmtClient, error) {
	c := sdk.NewClient(WithUser(userName), opts...)
	return c.ResourceMgmt()
}
func (sdk *FabricSDK) NewChannelClient(channelID string, userName string, opts ...ContextOption) (chclient.ChannelClient, error) {
	c := sdk.NewClient(WithUser(userName), opts...)
	return c.Channel(channelID)
}