import { AllowedValueWithCode } from '../../commonStateTypes/allowedValue'; import { ZeniAPIResponse } from '../../responsePayload'; import { SubscriptionEstimateWithSchema } from './types/subscriptionEstmiate'; interface CommonEstimatePayload { amount: number; change_status: string; currency_code: string; currency_symbol: string; description: string; } interface PlanEstimatePayload extends CommonEstimatePayload { detail_description: string; } interface AddOnEstimatePayload extends CommonEstimatePayload { charge_type: string; detail_description: string; } export interface SubscriptionEstimateDataPayloadWithSchema { schema: { subscription_estimate: { change_status: { allowed_values: AllowedValueWithCode[]; }; }; }; subscription_estimate: { addons: AddOnEstimatePayload[]; amount_due: number; company_name: string; coupons: CommonEstimatePayload[]; credits_applied: number; currency_code: string; currency_symbol: string; description: string; estimate_query_hash: string; plan: PlanEstimatePayload; promotional_credits: number; sub_total_amount: number; subscription_estimate_type: 'subscription_create' | 'subscription_update'; total_amount: number; }; } export type SubscriptionEstimateDataWithSchemaResponse = ZeniAPIResponse; /** * Helpers */ export declare function toSubscriptionEstimateWithSchema(subscriptionEstimateWithSchema: SubscriptionEstimateDataPayloadWithSchema): SubscriptionEstimateWithSchema; export {};