import { Amount } from '../../../commonStateTypes/amount'; import { ID } from '../../../commonStateTypes/common'; import { ZeniDate } from '../../../zeniDayJS'; import { InvoicingPlanTier, InvoicingProduct } from '../product/productState'; export interface InvoicingPlan { id: ID; applicableItems?: ID[]; archivedAt?: ZeniDate; billingCycles?: number; createdAt?: ZeniDate; currencyCode?: string; description?: string; enabledForCheckout?: boolean; enabledInPortal?: boolean; externalId?: string; externalName?: string; giftClaimRedirectUrl?: string; includedInMrr?: boolean; isGiftable?: boolean; isShippable?: boolean; itemApplicability?: string; itemFamilyID?: ID; itemType?: string; metadata?: Record; metered?: boolean; name?: string; period?: number; periodUnit?: string; price?: Amount; productCode?: string; status?: string; subFamilies?: InvoicingProduct[]; tiers?: InvoicingPlanTier[]; trialPeriod?: number; trialPeriodUnit?: string; type?: string; unit?: string; updatedAt?: ZeniDate; usageCalculation?: string; } export interface InvoicingPlanState { planByID: Record; }