package models

type AzureBilling struct {
	InvoiceSectionName     string  `json:"InvoiceSectionName"`
	AccountName            string  `json:"AccountName"`
	AccountOwnerId         string  `json:"AccountOwnerId"`
	SubscriptionId         string  `json:"SubscriptionId"`
	SubscriptionName       string  `json:"SubscriptionName"`
	ResourceGroup          string  `json:"ResourceGroup"`
	ResourceLocation       string  `json:"ResourceLocation"`
	Date                   string  `json:"Date"`
	ProductName            string  `json:"ProductName"`
	MeterCategory          string  `json:"MeterCategory"`
	MeterSubCategory       string  `json:"MeterSubCategory"`
	MeterId                string  `json:"MeterId"`
	MeterName              string  `json:"MeterName"`
	MeterRegion            string  `json:"MeterRegion"`
	UnitOfMeasure          string  `json:"UnitOfMeasure"`
	Quantity               float64 `json:"Quantity"`
	EffectivePrice         float64 `json:"EffectivePrice"`
	CostInBillingCurrency  float64 `json:"CostInBillingCurrency"`
	CostCenter             string  `json:"CostCenter"`
	ConsumedService        string  `json:"ConsumedService"`
	ResourceId             string  `json:"ResourceId"`
	Tags                   string  `json:"Tags"`
	OfferId                string  `json:"OfferId"`
	AdditionalInfo         string  `json:"AdditionalInfo"`
	ServiceInfo1           string  `json:"ServiceInfo1"`
	ServiceInfo2           string  `json:"ServiceInfo2"`
	ResourceName           string  `json:"ResourceName"`
	ReservationId          string  `json:"ReservationId"`
	ReservationName        string  `json:"ReservationName"`
	UnitPrice              float64 `json:"UnitPrice"`
	ProductOrderId         string  `json:"ProductOrderId"`
	ProductOrderName       string  `json:"ProductOrderName"`
	Term                   string  `json:"Term"`
	PublisherType          string  `json:"PublisherType"`
	PublisherName          string  `json:"PublisherName"`
	ChargeType             string  `json:"ChargeType"`
	Frequency              string  `json:"Frequency"`
	PricingModel           string  `json:"PricingModel"`
	AvailabilityZone       string  `json:"AvailabilityZone"`
	BillingAccountId       string  `json:"BillingAccountId"`
	BillingAccountName     string  `json:"BillingAccountName"`
	BillingCurrencyCode    string  `json:"BillingCurrencyCode"`
	BillingPeriodStartDate string  `json:"BillingPeriodStartDate"`
	BillingPeriodEndDate   string  `json:"BillingPeriodEndDate"`
	BillingProfileId       string  `json:"BillingProfileId"`
	BillingProfileName     string  `json:"BillingProfileName"`
	InvoiceSectionId       string  `json:"InvoiceSectionId"`
	IsAzureCreditEligible  bool    `json:"IsAzureCreditEligible"`
	PartNumber             string  `json:"PartNumber"`
	PayGPrice              float64 `json:"PayGPrice"`
	PlanName               string  `json:"PlanName"`
	ServiceFamily          string  `json:"ServiceFamily"`
	CostAllocationRuleName string  `json:"CostAllocationRuleName"`
	BenefitId              string  `json:"BenefitId"`
	BenefitName            string  `json:"BenefitName"`
}

type AzureMeta struct {
	Blobs []AzureBlobMeta `json:"blobs"`
}

type AzureBlobMeta struct {
	BlobName     string `json:"blobName"`
	ByteCount    int64  `json:"byteCount"`
	DataRowCount int64  `json:"dataRowCount"`
}
