func (o *ProductAccess) HasTransactions() bool {
	if o != nil && o.Transactions.IsSet() {
		return true
	}
	return false
}
HasTransactions returns a boolean if a field has been set.
package plaid
import (
	"encoding/json"
)
type ProductAccess struct {
	Statements NullableBool `json:"statements,omitempty"`
	Identity NullableBool `json:"identity,omitempty"`
	Auth NullableBool `json:"auth,omitempty"`
	Transactions NullableBool `json:"transactions,omitempty"`
	AdditionalProperties map[string]interface{}
}
type _ProductAccess ProductAccess
func NewProductAccess() *ProductAccess {
	this := ProductAccess{}
	var statements bool = true
	this.Statements = *NewNullableBool(&statements)
	var identity bool = true
	this.Identity = *NewNullableBool(&identity)
	var auth bool = true
	this.Auth = *NewNullableBool(&auth)
	var transactions bool = true
	this.Transactions = *NewNullableBool(&transactions)
	return &this
}
func NewProductAccessWithDefaults() *ProductAccess {
	this := ProductAccess{}
	var statements bool = true
	this.Statements = *NewNullableBool(&statements)
	var identity bool = true
	this.Identity = *NewNullableBool(&identity)
	var auth bool = true
	this.Auth = *NewNullableBool(&auth)
	var transactions bool = true
	this.Transactions = *NewNullableBool(&transactions)
	return &this
}
func (o *ProductAccess) GetStatements() bool {
	if o == nil || o.Statements.Get() == nil {
		var ret bool
		return ret
	}
	return *o.Statements.Get()
}
func (o *ProductAccess) GetStatementsOk() (*bool, bool) {
	if o == nil  {
		return nil, false
	}
	return o.Statements.Get(), o.Statements.IsSet()
}
func (o *ProductAccess) HasStatements() bool {
	if o != nil && o.Statements.IsSet() {
		return true
	}
	return false
}
func (o *ProductAccess) SetStatements(v bool) {
	o.Statements.Set(&v)
}
func (o *ProductAccess) SetStatementsNil() {
	o.Statements.Set(nil)
}
func (o *ProductAccess) UnsetStatements() {
	o.Statements.Unset()
}
func (o *ProductAccess) GetIdentity() bool {
	if o == nil || o.Identity.Get() == nil {
		var ret bool
		return ret
	}
	return *o.Identity.Get()
}
func (o *ProductAccess) GetIdentityOk() (*bool, bool) {
	if o == nil  {
		return nil, false
	}
	return o.Identity.Get(), o.Identity.IsSet()
}
func (o *ProductAccess) HasIdentity() bool {
	if o != nil && o.Identity.IsSet() {
		return true
	}
	return false
}
func (o *ProductAccess) SetIdentity(v bool) {
	o.Identity.Set(&v)
}
func (o *ProductAccess) SetIdentityNil() {
	o.Identity.Set(nil)
}
func (o *ProductAccess) UnsetIdentity() {
	o.Identity.Unset()
}
func (o *ProductAccess) GetAuth() bool {
	if o == nil || o.Auth.Get() == nil {
		var ret bool
		return ret
	}
	return *o.Auth.Get()
}
func (o *ProductAccess) GetAuthOk() (*bool, bool) {
	if o == nil  {
		return nil, false
	}
	return o.Auth.Get(), o.Auth.IsSet()
}
func (o *ProductAccess) HasAuth() bool {
	if o != nil && o.Auth.IsSet() {
		return true
	}
	return false
}
func (o *ProductAccess) SetAuth(v bool) {
	o.Auth.Set(&v)
}
func (o *ProductAccess) SetAuthNil() {
	o.Auth.Set(nil)
}
func (o *ProductAccess) UnsetAuth() {
	o.Auth.Unset()
}
func (o *ProductAccess) GetTransactions() bool {
	if o == nil || o.Transactions.Get() == nil {
		var ret bool
		return ret
	}
	return *o.Transactions.Get()
}
func (o *ProductAccess) GetTransactionsOk() (*bool, bool) {
	if o == nil  {
		return nil, false
	}
	return o.Transactions.Get(), o.Transactions.IsSet()
}