import { FrequentlyAskedQuestionsInterface } from './product.interface'; import { RestrictionsInterface } from './restrictions.interface'; export interface AddonInterface { addonId?: string; appId?: string; tagline?: string; title?: string; approved?: boolean; icon?: string; bannerImage?: string; endUserMarketing?: MarketingInformationInterface; serviceModel?: string[]; discoverable?: boolean; screenshots?: string[]; multipleActivations?: boolean; usesOrderForm?: boolean; billingFrequency?: string; resellerMarketing?: MarketingInformationInterface; created?: Date; updated?: Date; orderForm?: OrderFormInterface; price?: number; restrictions?: RestrictionsInterface; activationRequiresApproval?: boolean; billingId?: string; currency?: string; setupFee?: number; suspended?: Date; usesCustomPricing?: boolean; } export interface IncludedCommonFormFieldsInterface { businessName?: boolean; businessAddress?: boolean; businessPhoneNumber?: boolean; businessAccountGroupId?: boolean; salespersonName?: boolean; salespersonPhoneNumber?: boolean; salespersonEmail?: boolean; contactName?: boolean; contactPhoneNumber?: boolean; contactEmail?: boolean; } export interface MarketingInformationInterface { description?: string; keySellingPoints?: string[]; faqs?: FrequentlyAskedQuestionsInterface[]; files?: string[]; } export interface OrderFormInterface { orderForm?: OrderFormFieldInterface[]; commonForm?: IncludedCommonFormFieldsInterface; activationMessage?: string; separateOrderForms?: boolean; } export interface OrderFormFieldInterface { label?: string; id?: string; type?: string; options?: string[]; description?: string; required?: boolean; prefix?: string; suffix?: string; regexValidator?: string; regexErrorMessage?: string; }