// Code generated by go-swagger; DO NOT EDIT.

// (c) 2012-2023 by Vernon Keenan
// All rights reserved worldwide.
// Proprietary product; unlicensed use is not allowed

package members_models

// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command

import (
	"context"

	"github.com/go-openapi/strfmt"
	"github.com/go-openapi/swag"
)

// TenantUser Relationship object that connects users to a tenant
//
// swagger:model tenantUser
type TenantUser struct {

	// The makeTenantUser access level for this User
	AccessLevel *string `json:"AccessLevel,omitempty"`

	// Account ID
	AccountID *string `json:"AccountID,omitempty"`

	// Auth0 User ID
	Auth0UserID *string `json:"Auth0UserID,omitempty"`

	// Account Name
	CompanyName *string `json:"CompanyName,omitempty"`

	// Contact ID
	ContactID *string `json:"ContactID,omitempty"`

	// Account
	ExternalAccount *string `json:"ExternalAccount,omitempty"`

	// Tenant active?
	TenantActive *bool `json:"TenantActive,omitempty"`

	// The Tenant ID
	TenantID *string `json:"TenantID,omitempty"`

	// Tenant Name
	TenantName *string `json:"TenantName,omitempty"`

	// Tenant Status
	TenantStatus *string `json:"TenantStatus,omitempty"`

	// Tenant type
	TenantType *string `json:"TenantType,omitempty"`

	// Tenant Version
	TenantVersion *string `json:"TenantVersion,omitempty"`

	// User Email Address
	UserEmail *string `json:"UserEmail,omitempty"`

	// User Full Name
	UserFullName *string `json:"UserFullName,omitempty"`

	// The User ID
	UserID *string `json:"UserID,omitempty"`

	// Username
	Username *string `json:"Username,omitempty"`
}

// Validate validates this tenant user
func (m *TenantUser) Validate(formats strfmt.Registry) error {
	return nil
}

// ContextValidate validates this tenant user based on context it is used
func (m *TenantUser) ContextValidate(ctx context.Context, formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *TenantUser) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *TenantUser) UnmarshalBinary(b []byte) error {
	var res TenantUser
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}
