1 | import { Product } from '../shared';
|
2 | import { Package } from '../package-details';
|
3 | import { Addon, AddonKey } from '@vendasta/core/marketplace-packages';
|
4 | export interface SalesPackage {
|
5 | formattedPrices: string;
|
6 | packageId: string;
|
7 | name: string;
|
8 | icon: string;
|
9 | productIds: string[];
|
10 | products: SalesProduct[];
|
11 | addonsWithNoParent: SalesAddon[];
|
12 | totalAddons: number;
|
13 | activationStatus?: StatusNotificationItem;
|
14 | }
|
15 | export interface SalesProduct {
|
16 | productId: string;
|
17 | name: string;
|
18 | icon: string;
|
19 | tagline: string;
|
20 | activationStatus?: StatusNotificationItem;
|
21 | addons: SalesAddon[];
|
22 | }
|
23 | export interface SalesAddon {
|
24 | parentId: string;
|
25 | addonId: string;
|
26 | name: string;
|
27 | icon: string;
|
28 | tagline: string;
|
29 | parentName: string;
|
30 | parentIcon: string;
|
31 | activationStatus?: StatusNotificationItem;
|
32 | }
|
33 | export interface PackageItemActivationStatus {
|
34 | packageItemId: string;
|
35 | status: ActivationStatus;
|
36 | }
|
37 | export declare enum ActivationStatus {
|
38 | SUCCESS = 0,
|
39 | WARNING = 1,
|
40 | ERROR = 2,
|
41 | }
|
42 | export interface StatusNotificationItem {
|
43 | icon: string;
|
44 | text: string;
|
45 | status: ActivationStatus;
|
46 | }
|
47 | export declare function buildSalesPackages(packages: Package[], products: Product[], addons: Addon[]): SalesPackage[];
|
48 | export declare function buildSalesProducts(pkg: Package, products: Product[], addons: Addon[]): SalesProduct[];
|
49 | export declare function filterAddonsByAddonKeys(addons: Addon[], addonKeys: AddonKey[]): Addon[];
|
50 | export declare function addStatusesToSalesPackages(salesPackages: SalesPackage[], statuses: PackageItemActivationStatus[]): SalesPackage[];
|