UNPKG

chargebee

Version:

A library for integrating with Chargebee.

176 lines (173 loc) 4.84 kB
///<reference path='./../core.d.ts'/> ///<reference path='./../index.d.ts'/> declare module 'chargebee' { export interface InvoiceEstimate { recurring: boolean; price_type: PriceTypeEnum; currency_code: string; sub_total: number; total?: number; credits_applied?: number; amount_paid?: number; amount_due?: number; line_items?: InvoiceEstimate.LineItem[]; discounts?: InvoiceEstimate.Discount[]; taxes?: InvoiceEstimate.Tax[]; line_item_taxes?: InvoiceEstimate.LineItemTax[]; line_item_tiers?: InvoiceEstimate.LineItemTier[]; line_item_credits?: InvoiceEstimate.LineItemCredit[]; line_item_discounts?: InvoiceEstimate.LineItemDiscount[]; round_off_amount?: number; customer_id?: string; line_item_addresses?: InvoiceEstimate.LineItemAddress[]; } export namespace InvoiceEstimate { export interface LineItem { id?: string; subscription_id?: string; date_from: number; date_to: number; unit_amount: number; quantity?: number; amount?: number; pricing_model?: | 'flat_fee' | 'per_unit' | 'tiered' | 'volume' | 'stairstep'; is_taxed: boolean; tax_amount?: number; tax_rate?: number; unit_amount_in_decimal?: string; quantity_in_decimal?: string; amount_in_decimal?: string; discount_amount?: number; item_level_discount_amount?: number; metered?: boolean; is_percentage_pricing?: boolean; reference_line_item_id?: string; description: string; entity_description?: string; entity_type: | 'adhoc' | 'plan_item_price' | 'addon_item_price' | 'charge_item_price' | 'plan_setup' | 'plan' | 'addon'; tax_exempt_reason?: | 'tax_not_configured' | 'region_non_taxable' | 'export' | 'customer_exempt' | 'product_exempt' | 'zero_rated' | 'reverse_charge' | 'high_value_physical_goods' | 'zero_value_item' | 'tax_not_configured_external_provider'; entity_id?: string; customer_id?: string; } export interface Discount { amount: number; description?: string; entity_type: | 'item_level_coupon' | 'document_level_coupon' | 'promotional_credits' | 'prorated_credits' | 'item_level_discount' | 'document_level_discount'; discount_type?: 'fixed_amount' | 'percentage'; entity_id?: string; coupon_set_code?: string; } export interface Tax { name: string; amount: number; description?: string; } export interface LineItemTax { line_item_id?: string; tax_name: string; tax_rate: number; date_to?: number; date_from?: number; prorated_taxable_amount?: number; is_partial_tax_applied?: boolean; is_non_compliance_tax?: boolean; taxable_amount: number; tax_amount: number; tax_juris_type?: | 'country' | 'federal' | 'state' | 'county' | 'city' | 'special' | 'unincorporated' | 'other'; tax_juris_name?: string; tax_juris_code?: string; tax_amount_in_local_currency?: number; local_currency_code?: string; } export interface LineItemTier { line_item_id?: string; starting_unit: number; ending_unit?: number; quantity_used: number; unit_amount: number; starting_unit_in_decimal?: string; ending_unit_in_decimal?: string; quantity_used_in_decimal?: string; unit_amount_in_decimal?: string; pricing_type?: 'per_unit' | 'flat_fee' | 'package'; package_size?: number; } export interface LineItemCredit { cn_id: string; applied_amount: number; line_item_id?: string; } export interface LineItemDiscount { line_item_id: string; discount_type: | 'item_level_coupon' | 'document_level_coupon' | 'promotional_credits' | 'prorated_credits' | 'item_level_discount' | 'document_level_discount'; coupon_id?: string; entity_id?: string; discount_amount: number; } export interface LineItemAddress { line_item_id?: string; first_name?: string; last_name?: string; email?: string; company?: string; phone?: string; line1?: string; line2?: string; line3?: string; city?: string; state_code?: string; state?: string; country?: string; zip?: string; validation_status?: | 'not_validated' | 'valid' | 'partially_valid' | 'invalid'; } // REQUEST PARAMS //--------------- } }