package types

import "database/sql"

// Quote is a first class object type
type Quote struct {
	ID                   string
	AccountID            string
	AdditionalAddress    *Address
	AdditionalName       string
	Amount               float64
	BillingAddress       *Address
	BillingContactID     string
	BillingName          string
	BusinessAddress      *Address
	BusinessTax          float64
	CannabisTax          float64
	ContactID            string
	ContractID           string
	CoordinateID         string
	CreatedByID          string
	CreatedDate          sql.NullTime
	CreditTerms          string
	CustomerID           string
	QuoteDate            sql.NullTime
	Description          string
	Discount             float64
	DiscountAmount       float64
	Email                string
	EndUserID            string
	EstimatedAmount      float64
	EstimatedBusinessTax float64
	EstimatedCannabisTax float64
	EstimatedCOGS        float64
	EstimatedDiscount    float64
	EstimatedSalesTax    float64
	EstimatedSubtotal    float64
	ExpirationDate       sql.NullTime
	Fax                  string
	GrandTotal           float64
	IngestID             string
	InstallationDate     sql.NullTime
	Items                []*QuoteItem
	LastModifiedByID     string
	LastModifiedDate     sql.NullTime
	JobID                string
	MonthlyAmount        float64
	Name                 string
	OpportunityID        string
	OwnerID              string
	ParentFK             string
	PaymentTerms         string
	PeriodID             string
	Phone                string
	PlaceGeoCode         string
	PurchaseAmount       float64
	QuoteAmount          float64
	QuoteNumber          string
	QuoteToAddress       *Address
	QuoteToName          string
	Ref                  string
	SalesRegulation      string
	SalesTax             float64
	ServiceTerm          string
	ShippingAddress      *Address
	ShippingContactID    string
	ShippingHandling     float64
	ShippingName         string
	Status               string
	Subtotal             float64
	Tax                  float64
	TaxTransactions      []*TaxTransaction
	TelecomTax           float64
	TemplateID           string
	TenantID             string
	Total                *Total
	TotalID              string
	TotalPrice           float64
	Type                 string
}
