<?php

namespace StructType;

use \WsdlToPhp\PackageBase\AbstractStructBase;

/**
 * This class stands for ContactSearchBasic StructType
 * @subpackage Structs
 */
class ContactSearchBasic extends SearchRecordBasic
{
    /**
     * The address
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $address;
    /**
     * The addressee
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $addressee;
    /**
     * The addressLabel
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $addressLabel;
    /**
     * The addressPhone
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $addressPhone;
    /**
     * The attention
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $attention;
    /**
     * The availableOffline
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchBooleanField
     */
    public $availableOffline;
    /**
     * The category
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchMultiSelectField
     */
    public $category;
    /**
     * The city
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $city;
    /**
     * The comments
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $comments;
    /**
     * The company
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchMultiSelectField
     */
    public $company;
    /**
     * The contactRole
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchMultiSelectField
     */
    public $contactRole;
    /**
     * The contactSource
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchMultiSelectField
     */
    public $contactSource;
    /**
     * The country
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchEnumMultiSelectField
     */
    public $country;
    /**
     * The county
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $county;
    /**
     * The dateCreated
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchDateField
     */
    public $dateCreated;
    /**
     * The defaultTaxReg
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchMultiSelectField
     */
    public $defaultTaxReg;
    /**
     * The defaultTaxRegText
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $defaultTaxRegText;
    /**
     * The email
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $email;
    /**
     * The employer
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $employer;
    /**
     * The entityId
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $entityId;
    /**
     * The externalId
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchMultiSelectField
     */
    public $externalId;
    /**
     * The externalIdString
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $externalIdString;
    /**
     * The fax
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $fax;
    /**
     * The firstName
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $firstName;
    /**
     * The giveAccess
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchBooleanField
     */
    public $giveAccess;
    /**
     * The globalSubscriptionStatus
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchEnumMultiSelectField
     */
    public $globalSubscriptionStatus;
    /**
     * The group
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchMultiSelectField
     */
    public $group;
    /**
     * The hasDuplicates
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchBooleanField
     */
    public $hasDuplicates;
    /**
     * The image
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $image;
    /**
     * The internalId
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchMultiSelectField
     */
    public $internalId;
    /**
     * The internalIdNumber
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchLongField
     */
    public $internalIdNumber;
    /**
     * The isDefaultBilling
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchBooleanField
     */
    public $isDefaultBilling;
    /**
     * The isDefaultShipping
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchBooleanField
     */
    public $isDefaultShipping;
    /**
     * The isInactive
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchBooleanField
     */
    public $isInactive;
    /**
     * The isPrivate
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchBooleanField
     */
    public $isPrivate;
    /**
     * The language
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchEnumMultiSelectField
     */
    public $language;
    /**
     * The lastModifiedDate
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchDateField
     */
    public $lastModifiedDate;
    /**
     * The lastName
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $lastName;
    /**
     * The level
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchEnumMultiSelectField
     */
    public $level;
    /**
     * The middleName
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $middleName;
    /**
     * The owner
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchMultiSelectField
     */
    public $owner;
    /**
     * The permission
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchEnumMultiSelectField
     */
    public $permission;
    /**
     * The phone
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $phone;
    /**
     * The phoneticName
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $phoneticName;
    /**
     * The salutation
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $salutation;
    /**
     * The state
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $state;
    /**
     * The subsidiary
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchMultiSelectField
     */
    public $subsidiary;
    /**
     * The title
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $title;
    /**
     * The type
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchEnumMultiSelectField
     */
    public $type;
    /**
     * The zipCode
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchStringField
     */
    public $zipCode;
    /**
     * The customFieldList
     * Meta information extracted from the WSDL
     * - minOccurs: 0
     * @var \StructType\SearchCustomFieldList
     */
    public $customFieldList;
    /**
     * Constructor method for ContactSearchBasic
     * @uses ContactSearchBasic::setAddress()
     * @uses ContactSearchBasic::setAddressee()
     * @uses ContactSearchBasic::setAddressLabel()
     * @uses ContactSearchBasic::setAddressPhone()
     * @uses ContactSearchBasic::setAttention()
     * @uses ContactSearchBasic::setAvailableOffline()
     * @uses ContactSearchBasic::setCategory()
     * @uses ContactSearchBasic::setCity()
     * @uses ContactSearchBasic::setComments()
     * @uses ContactSearchBasic::setCompany()
     * @uses ContactSearchBasic::setContactRole()
     * @uses ContactSearchBasic::setContactSource()
     * @uses ContactSearchBasic::setCountry()
     * @uses ContactSearchBasic::setCounty()
     * @uses ContactSearchBasic::setDateCreated()
     * @uses ContactSearchBasic::setDefaultTaxReg()
     * @uses ContactSearchBasic::setDefaultTaxRegText()
     * @uses ContactSearchBasic::setEmail()
     * @uses ContactSearchBasic::setEmployer()
     * @uses ContactSearchBasic::setEntityId()
     * @uses ContactSearchBasic::setExternalId()
     * @uses ContactSearchBasic::setExternalIdString()
     * @uses ContactSearchBasic::setFax()
     * @uses ContactSearchBasic::setFirstName()
     * @uses ContactSearchBasic::setGiveAccess()
     * @uses ContactSearchBasic::setGlobalSubscriptionStatus()
     * @uses ContactSearchBasic::setGroup()
     * @uses ContactSearchBasic::setHasDuplicates()
     * @uses ContactSearchBasic::setImage()
     * @uses ContactSearchBasic::setInternalId()
     * @uses ContactSearchBasic::setInternalIdNumber()
     * @uses ContactSearchBasic::setIsDefaultBilling()
     * @uses ContactSearchBasic::setIsDefaultShipping()
     * @uses ContactSearchBasic::setIsInactive()
     * @uses ContactSearchBasic::setIsPrivate()
     * @uses ContactSearchBasic::setLanguage()
     * @uses ContactSearchBasic::setLastModifiedDate()
     * @uses ContactSearchBasic::setLastName()
     * @uses ContactSearchBasic::setLevel()
     * @uses ContactSearchBasic::setMiddleName()
     * @uses ContactSearchBasic::setOwner()
     * @uses ContactSearchBasic::setPermission()
     * @uses ContactSearchBasic::setPhone()
     * @uses ContactSearchBasic::setPhoneticName()
     * @uses ContactSearchBasic::setSalutation()
     * @uses ContactSearchBasic::setState()
     * @uses ContactSearchBasic::setSubsidiary()
     * @uses ContactSearchBasic::setTitle()
     * @uses ContactSearchBasic::setType()
     * @uses ContactSearchBasic::setZipCode()
     * @uses ContactSearchBasic::setCustomFieldList()
     * @param \StructType\SearchStringField $address
     * @param \StructType\SearchStringField $addressee
     * @param \StructType\SearchStringField $addressLabel
     * @param \StructType\SearchStringField $addressPhone
     * @param \StructType\SearchStringField $attention
     * @param \StructType\SearchBooleanField $availableOffline
     * @param \StructType\SearchMultiSelectField $category
     * @param \StructType\SearchStringField $city
     * @param \StructType\SearchStringField $comments
     * @param \StructType\SearchMultiSelectField $company
     * @param \StructType\SearchMultiSelectField $contactRole
     * @param \StructType\SearchMultiSelectField $contactSource
     * @param \StructType\SearchEnumMultiSelectField $country
     * @param \StructType\SearchStringField $county
     * @param \StructType\SearchDateField $dateCreated
     * @param \StructType\SearchMultiSelectField $defaultTaxReg
     * @param \StructType\SearchStringField $defaultTaxRegText
     * @param \StructType\SearchStringField $email
     * @param \StructType\SearchStringField $employer
     * @param \StructType\SearchStringField $entityId
     * @param \StructType\SearchMultiSelectField $externalId
     * @param \StructType\SearchStringField $externalIdString
     * @param \StructType\SearchStringField $fax
     * @param \StructType\SearchStringField $firstName
     * @param \StructType\SearchBooleanField $giveAccess
     * @param \StructType\SearchEnumMultiSelectField $globalSubscriptionStatus
     * @param \StructType\SearchMultiSelectField $group
     * @param \StructType\SearchBooleanField $hasDuplicates
     * @param \StructType\SearchStringField $image
     * @param \StructType\SearchMultiSelectField $internalId
     * @param \StructType\SearchLongField $internalIdNumber
     * @param \StructType\SearchBooleanField $isDefaultBilling
     * @param \StructType\SearchBooleanField $isDefaultShipping
     * @param \StructType\SearchBooleanField $isInactive
     * @param \StructType\SearchBooleanField $isPrivate
     * @param \StructType\SearchEnumMultiSelectField $language
     * @param \StructType\SearchDateField $lastModifiedDate
     * @param \StructType\SearchStringField $lastName
     * @param \StructType\SearchEnumMultiSelectField $level
     * @param \StructType\SearchStringField $middleName
     * @param \StructType\SearchMultiSelectField $owner
     * @param \StructType\SearchEnumMultiSelectField $permission
     * @param \StructType\SearchStringField $phone
     * @param \StructType\SearchStringField $phoneticName
     * @param \StructType\SearchStringField $salutation
     * @param \StructType\SearchStringField $state
     * @param \StructType\SearchMultiSelectField $subsidiary
     * @param \StructType\SearchStringField $title
     * @param \StructType\SearchEnumMultiSelectField $type
     * @param \StructType\SearchStringField $zipCode
     * @param \StructType\SearchCustomFieldList $customFieldList
     */
    public function __construct(\StructType\SearchStringField $address = null, \StructType\SearchStringField $addressee = null, \StructType\SearchStringField $addressLabel = null, \StructType\SearchStringField $addressPhone = null, \StructType\SearchStringField $attention = null, \StructType\SearchBooleanField $availableOffline = null, \StructType\SearchMultiSelectField $category = null, \StructType\SearchStringField $city = null, \StructType\SearchStringField $comments = null, \StructType\SearchMultiSelectField $company = null, \StructType\SearchMultiSelectField $contactRole = null, \StructType\SearchMultiSelectField $contactSource = null, \StructType\SearchEnumMultiSelectField $country = null, \StructType\SearchStringField $county = null, \StructType\SearchDateField $dateCreated = null, \StructType\SearchMultiSelectField $defaultTaxReg = null, \StructType\SearchStringField $defaultTaxRegText = null, \StructType\SearchStringField $email = null, \StructType\SearchStringField $employer = null, \StructType\SearchStringField $entityId = null, \StructType\SearchMultiSelectField $externalId = null, \StructType\SearchStringField $externalIdString = null, \StructType\SearchStringField $fax = null, \StructType\SearchStringField $firstName = null, \StructType\SearchBooleanField $giveAccess = null, \StructType\SearchEnumMultiSelectField $globalSubscriptionStatus = null, \StructType\SearchMultiSelectField $group = null, \StructType\SearchBooleanField $hasDuplicates = null, \StructType\SearchStringField $image = null, \StructType\SearchMultiSelectField $internalId = null, \StructType\SearchLongField $internalIdNumber = null, \StructType\SearchBooleanField $isDefaultBilling = null, \StructType\SearchBooleanField $isDefaultShipping = null, \StructType\SearchBooleanField $isInactive = null, \StructType\SearchBooleanField $isPrivate = null, \StructType\SearchEnumMultiSelectField $language = null, \StructType\SearchDateField $lastModifiedDate = null, \StructType\SearchStringField $lastName = null, \StructType\SearchEnumMultiSelectField $level = null, \StructType\SearchStringField $middleName = null, \StructType\SearchMultiSelectField $owner = null, \StructType\SearchEnumMultiSelectField $permission = null, \StructType\SearchStringField $phone = null, \StructType\SearchStringField $phoneticName = null, \StructType\SearchStringField $salutation = null, \StructType\SearchStringField $state = null, \StructType\SearchMultiSelectField $subsidiary = null, \StructType\SearchStringField $title = null, \StructType\SearchEnumMultiSelectField $type = null, \StructType\SearchStringField $zipCode = null, \StructType\SearchCustomFieldList $customFieldList = null)
    {
        $this
            ->setAddress($address)
            ->setAddressee($addressee)
            ->setAddressLabel($addressLabel)
            ->setAddressPhone($addressPhone)
            ->setAttention($attention)
            ->setAvailableOffline($availableOffline)
            ->setCategory($category)
            ->setCity($city)
            ->setComments($comments)
            ->setCompany($company)
            ->setContactRole($contactRole)
            ->setContactSource($contactSource)
            ->setCountry($country)
            ->setCounty($county)
            ->setDateCreated($dateCreated)
            ->setDefaultTaxReg($defaultTaxReg)
            ->setDefaultTaxRegText($defaultTaxRegText)
            ->setEmail($email)
            ->setEmployer($employer)
            ->setEntityId($entityId)
            ->setExternalId($externalId)
            ->setExternalIdString($externalIdString)
            ->setFax($fax)
            ->setFirstName($firstName)
            ->setGiveAccess($giveAccess)
            ->setGlobalSubscriptionStatus($globalSubscriptionStatus)
            ->setGroup($group)
            ->setHasDuplicates($hasDuplicates)
            ->setImage($image)
            ->setInternalId($internalId)
            ->setInternalIdNumber($internalIdNumber)
            ->setIsDefaultBilling($isDefaultBilling)
            ->setIsDefaultShipping($isDefaultShipping)
            ->setIsInactive($isInactive)
            ->setIsPrivate($isPrivate)
            ->setLanguage($language)
            ->setLastModifiedDate($lastModifiedDate)
            ->setLastName($lastName)
            ->setLevel($level)
            ->setMiddleName($middleName)
            ->setOwner($owner)
            ->setPermission($permission)
            ->setPhone($phone)
            ->setPhoneticName($phoneticName)
            ->setSalutation($salutation)
            ->setState($state)
            ->setSubsidiary($subsidiary)
            ->setTitle($title)
            ->setType($type)
            ->setZipCode($zipCode)
            ->setCustomFieldList($customFieldList);
    }
    /**
     * Get address value
     * @return \StructType\SearchStringField|null
     */
    public function getAddress()
    {
        return $this->address;
    }
    /**
     * Set address value
     * @param \StructType\SearchStringField $address
     * @return \StructType\ContactSearchBasic
     */
    public function setAddress(\StructType\SearchStringField $address = null)
    {
        $this->address = $address;
        return $this;
    }
    /**
     * Get addressee value
     * @return \StructType\SearchStringField|null
     */
    public function getAddressee()
    {
        return $this->addressee;
    }
    /**
     * Set addressee value
     * @param \StructType\SearchStringField $addressee
     * @return \StructType\ContactSearchBasic
     */
    public function setAddressee(\StructType\SearchStringField $addressee = null)
    {
        $this->addressee = $addressee;
        return $this;
    }
    /**
     * Get addressLabel value
     * @return \StructType\SearchStringField|null
     */
    public function getAddressLabel()
    {
        return $this->addressLabel;
    }
    /**
     * Set addressLabel value
     * @param \StructType\SearchStringField $addressLabel
     * @return \StructType\ContactSearchBasic
     */
    public function setAddressLabel(\StructType\SearchStringField $addressLabel = null)
    {
        $this->addressLabel = $addressLabel;
        return $this;
    }
    /**
     * Get addressPhone value
     * @return \StructType\SearchStringField|null
     */
    public function getAddressPhone()
    {
        return $this->addressPhone;
    }
    /**
     * Set addressPhone value
     * @param \StructType\SearchStringField $addressPhone
     * @return \StructType\ContactSearchBasic
     */
    public function setAddressPhone(\StructType\SearchStringField $addressPhone = null)
    {
        $this->addressPhone = $addressPhone;
        return $this;
    }
    /**
     * Get attention value
     * @return \StructType\SearchStringField|null
     */
    public function getAttention()
    {
        return $this->attention;
    }
    /**
     * Set attention value
     * @param \StructType\SearchStringField $attention
     * @return \StructType\ContactSearchBasic
     */
    public function setAttention(\StructType\SearchStringField $attention = null)
    {
        $this->attention = $attention;
        return $this;
    }
    /**
     * Get availableOffline value
     * @return \StructType\SearchBooleanField|null
     */
    public function getAvailableOffline()
    {
        return $this->availableOffline;
    }
    /**
     * Set availableOffline value
     * @param \StructType\SearchBooleanField $availableOffline
     * @return \StructType\ContactSearchBasic
     */
    public function setAvailableOffline(\StructType\SearchBooleanField $availableOffline = null)
    {
        $this->availableOffline = $availableOffline;
        return $this;
    }
    /**
     * Get category value
     * @return \StructType\SearchMultiSelectField|null
     */
    public function getCategory()
    {
        return $this->category;
    }
    /**
     * Set category value
     * @param \StructType\SearchMultiSelectField $category
     * @return \StructType\ContactSearchBasic
     */
    public function setCategory(\StructType\SearchMultiSelectField $category = null)
    {
        $this->category = $category;
        return $this;
    }
    /**
     * Get city value
     * @return \StructType\SearchStringField|null
     */
    public function getCity()
    {
        return $this->city;
    }
    /**
     * Set city value
     * @param \StructType\SearchStringField $city
     * @return \StructType\ContactSearchBasic
     */
    public function setCity(\StructType\SearchStringField $city = null)
    {
        $this->city = $city;
        return $this;
    }
    /**
     * Get comments value
     * @return \StructType\SearchStringField|null
     */
    public function getComments()
    {
        return $this->comments;
    }
    /**
     * Set comments value
     * @param \StructType\SearchStringField $comments
     * @return \StructType\ContactSearchBasic
     */
    public function setComments(\StructType\SearchStringField $comments = null)
    {
        $this->comments = $comments;
        return $this;
    }
    /**
     * Get company value
     * @return \StructType\SearchMultiSelectField|null
     */
    public function getCompany()
    {
        return $this->company;
    }
    /**
     * Set company value
     * @param \StructType\SearchMultiSelectField $company
     * @return \StructType\ContactSearchBasic
     */
    public function setCompany(\StructType\SearchMultiSelectField $company = null)
    {
        $this->company = $company;
        return $this;
    }
    /**
     * Get contactRole value
     * @return \StructType\SearchMultiSelectField|null
     */
    public function getContactRole()
    {
        return $this->contactRole;
    }
    /**
     * Set contactRole value
     * @param \StructType\SearchMultiSelectField $contactRole
     * @return \StructType\ContactSearchBasic
     */
    public function setContactRole(\StructType\SearchMultiSelectField $contactRole = null)
    {
        $this->contactRole = $contactRole;
        return $this;
    }
    /**
     * Get contactSource value
     * @return \StructType\SearchMultiSelectField|null
     */
    public function getContactSource()
    {
        return $this->contactSource;
    }
    /**
     * Set contactSource value
     * @param \StructType\SearchMultiSelectField $contactSource
     * @return \StructType\ContactSearchBasic
     */
    public function setContactSource(\StructType\SearchMultiSelectField $contactSource = null)
    {
        $this->contactSource = $contactSource;
        return $this;
    }
    /**
     * Get country value
     * @return \StructType\SearchEnumMultiSelectField|null
     */
    public function getCountry()
    {
        return $this->country;
    }
    /**
     * Set country value
     * @param \StructType\SearchEnumMultiSelectField $country
     * @return \StructType\ContactSearchBasic
     */
    public function setCountry(\StructType\SearchEnumMultiSelectField $country = null)
    {
        $this->country = $country;
        return $this;
    }
    /**
     * Get county value
     * @return \StructType\SearchStringField|null
     */
    public function getCounty()
    {
        return $this->county;
    }
    /**
     * Set county value
     * @param \StructType\SearchStringField $county
     * @return \StructType\ContactSearchBasic
     */
    public function setCounty(\StructType\SearchStringField $county = null)
    {
        $this->county = $county;
        return $this;
    }
    /**
     * Get dateCreated value
     * @return \StructType\SearchDateField|null
     */
    public function getDateCreated()
    {
        return $this->dateCreated;
    }
    /**
     * Set dateCreated value
     * @param \StructType\SearchDateField $dateCreated
     * @return \StructType\ContactSearchBasic
     */
    public function setDateCreated(\StructType\SearchDateField $dateCreated = null)
    {
        $this->dateCreated = $dateCreated;
        return $this;
    }
    /**
     * Get defaultTaxReg value
     * @return \StructType\SearchMultiSelectField|null
     */
    public function getDefaultTaxReg()
    {
        return $this->defaultTaxReg;
    }
    /**
     * Set defaultTaxReg value
     * @param \StructType\SearchMultiSelectField $defaultTaxReg
     * @return \StructType\ContactSearchBasic
     */
    public function setDefaultTaxReg(\StructType\SearchMultiSelectField $defaultTaxReg = null)
    {
        $this->defaultTaxReg = $defaultTaxReg;
        return $this;
    }
    /**
     * Get defaultTaxRegText value
     * @return \StructType\SearchStringField|null
     */
    public function getDefaultTaxRegText()
    {
        return $this->defaultTaxRegText;
    }
    /**
     * Set defaultTaxRegText value
     * @param \StructType\SearchStringField $defaultTaxRegText
     * @return \StructType\ContactSearchBasic
     */
    public function setDefaultTaxRegText(\StructType\SearchStringField $defaultTaxRegText = null)
    {
        $this->defaultTaxRegText = $defaultTaxRegText;
        return $this;
    }
    /**
     * Get email value
     * @return \StructType\SearchStringField|null
     */
    public function getEmail()
    {
        return $this->email;
    }
    /**
     * Set email value
     * @param \StructType\SearchStringField $email
     * @return \StructType\ContactSearchBasic
     */
    public function setEmail(\StructType\SearchStringField $email = null)
    {
        $this->email = $email;
        return $this;
    }
    /**
     * Get employer value
     * @return \StructType\SearchStringField|null
     */
    public function getEmployer()
    {
        return $this->employer;
    }
    /**
     * Set employer value
     * @param \StructType\SearchStringField $employer
     * @return \StructType\ContactSearchBasic
     */
    public function setEmployer(\StructType\SearchStringField $employer = null)
    {
        $this->employer = $employer;
        return $this;
    }
    /**
     * Get entityId value
     * @return \StructType\SearchStringField|null
     */
    public function getEntityId()
    {
        return $this->entityId;
    }
    /**
     * Set entityId value
     * @param \StructType\SearchStringField $entityId
     * @return \StructType\ContactSearchBasic
     */
    public function setEntityId(\StructType\SearchStringField $entityId = null)
    {
        $this->entityId = $entityId;
        return $this;
    }
    /**
     * Get externalId value
     * @return \StructType\SearchMultiSelectField|null
     */
    public function getExternalId()
    {
        return $this->externalId;
    }
    /**
     * Set externalId value
     * @param \StructType\SearchMultiSelectField $externalId
     * @return \StructType\ContactSearchBasic
     */
    public function setExternalId(\StructType\SearchMultiSelectField $externalId = null)
    {
        $this->externalId = $externalId;
        return $this;
    }
    /**
     * Get externalIdString value
     * @return \StructType\SearchStringField|null
     */
    public function getExternalIdString()
    {
        return $this->externalIdString;
    }
    /**
     * Set externalIdString value
     * @param \StructType\SearchStringField $externalIdString
     * @return \StructType\ContactSearchBasic
     */
    public function setExternalIdString(\StructType\SearchStringField $externalIdString = null)
    {
        $this->externalIdString = $externalIdString;
        return $this;
    }
    /**
     * Get fax value
     * @return \StructType\SearchStringField|null
     */
    public function getFax()
    {
        return $this->fax;
    }
    /**
     * Set fax value
     * @param \StructType\SearchStringField $fax
     * @return \StructType\ContactSearchBasic
     */
    public function setFax(\StructType\SearchStringField $fax = null)
    {
        $this->fax = $fax;
        return $this;
    }
    /**
     * Get firstName value
     * @return \StructType\SearchStringField|null
     */
    public function getFirstName()
    {
        return $this->firstName;
    }
    /**
     * Set firstName value
     * @param \StructType\SearchStringField $firstName
     * @return \StructType\ContactSearchBasic
     */
    public function setFirstName(\StructType\SearchStringField $firstName = null)
    {
        $this->firstName = $firstName;
        return $this;
    }
    /**
     * Get giveAccess value
     * @return \StructType\SearchBooleanField|null
     */
    public function getGiveAccess()
    {
        return $this->giveAccess;
    }
    /**
     * Set giveAccess value
     * @param \StructType\SearchBooleanField $giveAccess
     * @return \StructType\ContactSearchBasic
     */
    public function setGiveAccess(\StructType\SearchBooleanField $giveAccess = null)
    {
        $this->giveAccess = $giveAccess;
        return $this;
    }
    /**
     * Get globalSubscriptionStatus value
     * @return \StructType\SearchEnumMultiSelectField|null
     */
    public function getGlobalSubscriptionStatus()
    {
        return $this->globalSubscriptionStatus;
    }
    /**
     * Set globalSubscriptionStatus value
     * @param \StructType\SearchEnumMultiSelectField $globalSubscriptionStatus
     * @return \StructType\ContactSearchBasic
     */
    public function setGlobalSubscriptionStatus(\StructType\SearchEnumMultiSelectField $globalSubscriptionStatus = null)
    {
        $this->globalSubscriptionStatus = $globalSubscriptionStatus;
        return $this;
    }
    /**
     * Get group value
     * @return \StructType\SearchMultiSelectField|null
     */
    public function getGroup()
    {
        return $this->group;
    }
    /**
     * Set group value
     * @param \StructType\SearchMultiSelectField $group
     * @return \StructType\ContactSearchBasic
     */
    public function setGroup(\StructType\SearchMultiSelectField $group = null)
    {
        $this->group = $group;
        return $this;
    }
    /**
     * Get hasDuplicates value
     * @return \StructType\SearchBooleanField|null
     */
    public function getHasDuplicates()
    {
        return $this->hasDuplicates;
    }
    /**
     * Set hasDuplicates value
     * @param \StructType\SearchBooleanField $hasDuplicates
     * @return \StructType\ContactSearchBasic
     */
    public function setHasDuplicates(\StructType\SearchBooleanField $hasDuplicates = null)
    {
        $this->hasDuplicates = $hasDuplicates;
        return $this;
    }
    /**
     * Get image value
     * @return \StructType\SearchStringField|null
     */
    public function getImage()
    {
        return $this->image;
    }
    /**
     * Set image value
     * @param \StructType\SearchStringField $image
     * @return \StructType\ContactSearchBasic
     */
    public function setImage(\StructType\SearchStringField $image = null)
    {
        $this->image = $image;
        return $this;
    }
    /**
     * Get internalId value
     * @return \StructType\SearchMultiSelectField|null
     */
    public function getInternalId()
    {
        return $this->internalId;
    }
    /**
     * Set internalId value
     * @param \StructType\SearchMultiSelectField $internalId
     * @return \StructType\ContactSearchBasic
     */
    public function setInternalId(\StructType\SearchMultiSelectField $internalId = null)
    {
        $this->internalId = $internalId;
        return $this;
    }
    /**
     * Get internalIdNumber value
     * @return \StructType\SearchLongField|null
     */
    public function getInternalIdNumber()
    {
        return $this->internalIdNumber;
    }
    /**
     * Set internalIdNumber value
     * @param \StructType\SearchLongField $internalIdNumber
     * @return \StructType\ContactSearchBasic
     */
    public function setInternalIdNumber(\StructType\SearchLongField $internalIdNumber = null)
    {
        $this->internalIdNumber = $internalIdNumber;
        return $this;
    }
    /**
     * Get isDefaultBilling value
     * @return \StructType\SearchBooleanField|null
     */
    public function getIsDefaultBilling()
    {
        return $this->isDefaultBilling;
    }
    /**
     * Set isDefaultBilling value
     * @param \StructType\SearchBooleanField $isDefaultBilling
     * @return \StructType\ContactSearchBasic
     */
    public function setIsDefaultBilling(\StructType\SearchBooleanField $isDefaultBilling = null)
    {
        $this->isDefaultBilling = $isDefaultBilling;
        return $this;
    }
    /**
     * Get isDefaultShipping value
     * @return \StructType\SearchBooleanField|null
     */
    public function getIsDefaultShipping()
    {
        return $this->isDefaultShipping;
    }
    /**
     * Set isDefaultShipping value
     * @param \StructType\SearchBooleanField $isDefaultShipping
     * @return \StructType\ContactSearchBasic
     */
    public function setIsDefaultShipping(\StructType\SearchBooleanField $isDefaultShipping = null)
    {
        $this->isDefaultShipping = $isDefaultShipping;
        return $this;
    }
    /**
     * Get isInactive value
     * @return \StructType\SearchBooleanField|null
     */
    public function getIsInactive()
    {
        return $this->isInactive;
    }
    /**
     * Set isInactive value
     * @param \StructType\SearchBooleanField $isInactive
     * @return \StructType\ContactSearchBasic
     */
    public function setIsInactive(\StructType\SearchBooleanField $isInactive = null)
    {
        $this->isInactive = $isInactive;
        return $this;
    }
    /**
     * Get isPrivate value
     * @return \StructType\SearchBooleanField|null
     */
    public function getIsPrivate()
    {
        return $this->isPrivate;
    }
    /**
     * Set isPrivate value
     * @param \StructType\SearchBooleanField $isPrivate
     * @return \StructType\ContactSearchBasic
     */
    public function setIsPrivate(\StructType\SearchBooleanField $isPrivate = null)
    {
        $this->isPrivate = $isPrivate;
        return $this;
    }
    /**
     * Get language value
     * @return \StructType\SearchEnumMultiSelectField|null
     */
    public function getLanguage()
    {
        return $this->language;
    }
    /**
     * Set language value
     * @param \StructType\SearchEnumMultiSelectField $language
     * @return \StructType\ContactSearchBasic
     */
    public function setLanguage(\StructType\SearchEnumMultiSelectField $language = null)
    {
        $this->language = $language;
        return $this;
    }
    /**
     * Get lastModifiedDate value
     * @return \StructType\SearchDateField|null
     */
    public function getLastModifiedDate()
    {
        return $this->lastModifiedDate;
    }
    /**
     * Set lastModifiedDate value
     * @param \StructType\SearchDateField $lastModifiedDate
     * @return \StructType\ContactSearchBasic
     */
    public function setLastModifiedDate(\StructType\SearchDateField $lastModifiedDate = null)
    {
        $this->lastModifiedDate = $lastModifiedDate;
        return $this;
    }
    /**
     * Get lastName value
     * @return \StructType\SearchStringField|null
     */
    public function getLastName()
    {
        return $this->lastName;
    }
    /**
     * Set lastName value
     * @param \StructType\SearchStringField $lastName
     * @return \StructType\ContactSearchBasic
     */
    public function setLastName(\StructType\SearchStringField $lastName = null)
    {
        $this->lastName = $lastName;
        return $this;
    }
    /**
     * Get level value
     * @return \StructType\SearchEnumMultiSelectField|null
     */
    public function getLevel()
    {
        return $this->level;
    }
    /**
     * Set level value
     * @param \StructType\SearchEnumMultiSelectField $level
     * @return \StructType\ContactSearchBasic
     */
    public function setLevel(\StructType\SearchEnumMultiSelectField $level = null)
    {
        $this->level = $level;
        return $this;
    }
    /**
     * Get middleName value
     * @return \StructType\SearchStringField|null
     */
    public function getMiddleName()
    {
        return $this->middleName;
    }
    /**
     * Set middleName value
     * @param \StructType\SearchStringField $middleName
     * @return \StructType\ContactSearchBasic
     */
    public function setMiddleName(\StructType\SearchStringField $middleName = null)
    {
        $this->middleName = $middleName;
        return $this;
    }
    /**
     * Get owner value
     * @return \StructType\SearchMultiSelectField|null
     */
    public function getOwner()
    {
        return $this->owner;
    }
    /**
     * Set owner value
     * @param \StructType\SearchMultiSelectField $owner
     * @return \StructType\ContactSearchBasic
     */
    public function setOwner(\StructType\SearchMultiSelectField $owner = null)
    {
        $this->owner = $owner;
        return $this;
    }
    /**
     * Get permission value
     * @return \StructType\SearchEnumMultiSelectField|null
     */
    public function getPermission()
    {
        return $this->permission;
    }
    /**
     * Set permission value
     * @param \StructType\SearchEnumMultiSelectField $permission
     * @return \StructType\ContactSearchBasic
     */
    public function setPermission(\StructType\SearchEnumMultiSelectField $permission = null)
    {
        $this->permission = $permission;
        return $this;
    }
    /**
     * Get phone value
     * @return \StructType\SearchStringField|null
     */
    public function getPhone()
    {
        return $this->phone;
    }
    /**
     * Set phone value
     * @param \StructType\SearchStringField $phone
     * @return \StructType\ContactSearchBasic
     */
    public function setPhone(\StructType\SearchStringField $phone = null)
    {
        $this->phone = $phone;
        return $this;
    }
    /**
     * Get phoneticName value
     * @return \StructType\SearchStringField|null
     */
    public function getPhoneticName()
    {
        return $this->phoneticName;
    }
    /**
     * Set phoneticName value
     * @param \StructType\SearchStringField $phoneticName
     * @return \StructType\ContactSearchBasic
     */
    public function setPhoneticName(\StructType\SearchStringField $phoneticName = null)
    {
        $this->phoneticName = $phoneticName;
        return $this;
    }
    /**
     * Get salutation value
     * @return \StructType\SearchStringField|null
     */
    public function getSalutation()
    {
        return $this->salutation;
    }
    /**
     * Set salutation value
     * @param \StructType\SearchStringField $salutation
     * @return \StructType\ContactSearchBasic
     */
    public function setSalutation(\StructType\SearchStringField $salutation = null)
    {
        $this->salutation = $salutation;
        return $this;
    }
    /**
     * Get state value
     * @return \StructType\SearchStringField|null
     */
    public function getState()
    {
        return $this->state;
    }
    /**
     * Set state value
     * @param \StructType\SearchStringField $state
     * @return \StructType\ContactSearchBasic
     */
    public function setState(\StructType\SearchStringField $state = null)
    {
        $this->state = $state;
        return $this;
    }
    /**
     * Get subsidiary value
     * @return \StructType\SearchMultiSelectField|null
     */
    public function getSubsidiary()
    {
        return $this->subsidiary;
    }
    /**
     * Set subsidiary value
     * @param \StructType\SearchMultiSelectField $subsidiary
     * @return \StructType\ContactSearchBasic
     */
    public function setSubsidiary(\StructType\SearchMultiSelectField $subsidiary = null)
    {
        $this->subsidiary = $subsidiary;
        return $this;
    }
    /**
     * Get title value
     * @return \StructType\SearchStringField|null
     */
    public function getTitle()
    {
        return $this->title;
    }
    /**
     * Set title value
     * @param \StructType\SearchStringField $title
     * @return \StructType\ContactSearchBasic
     */
    public function setTitle(\StructType\SearchStringField $title = null)
    {
        $this->title = $title;
        return $this;
    }
    /**
     * Get type value
     * @return \StructType\SearchEnumMultiSelectField|null
     */
    public function getType()
    {
        return $this->type;
    }
    /**
     * Set type value
     * @param \StructType\SearchEnumMultiSelectField $type
     * @return \StructType\ContactSearchBasic
     */
    public function setType(\StructType\SearchEnumMultiSelectField $type = null)
    {
        $this->type = $type;
        return $this;
    }
    /**
     * Get zipCode value
     * @return \StructType\SearchStringField|null
     */
    public function getZipCode()
    {
        return $this->zipCode;
    }
    /**
     * Set zipCode value
     * @param \StructType\SearchStringField $zipCode
     * @return \StructType\ContactSearchBasic
     */
    public function setZipCode(\StructType\SearchStringField $zipCode = null)
    {
        $this->zipCode = $zipCode;
        return $this;
    }
    /**
     * Get customFieldList value
     * @return \StructType\SearchCustomFieldList|null
     */
    public function getCustomFieldList()
    {
        return $this->customFieldList;
    }
    /**
     * Set customFieldList value
     * @param \StructType\SearchCustomFieldList $customFieldList
     * @return \StructType\ContactSearchBasic
     */
    public function setCustomFieldList(\StructType\SearchCustomFieldList $customFieldList = null)
    {
        $this->customFieldList = $customFieldList;
        return $this;
    }
}
