61 lines
1.6 KiB
TypeScript
61 lines
1.6 KiB
TypeScript
export interface CatalogProductBase {
|
|
id: string;
|
|
sku: string;
|
|
name: string;
|
|
description?: string;
|
|
displayOrder?: number;
|
|
billingCycle?: string;
|
|
monthlyPrice?: number;
|
|
oneTimePrice?: number;
|
|
unitPrice?: number;
|
|
}
|
|
export interface InternetCatalogProduct extends CatalogProductBase {
|
|
internetPlanTier?: string;
|
|
internetOfferingType?: string;
|
|
features?: string[];
|
|
}
|
|
export interface InternetPlanTemplate {
|
|
tierDescription: string;
|
|
description?: string;
|
|
features?: string[];
|
|
}
|
|
export interface InternetPlanCatalogItem extends InternetCatalogProduct {
|
|
catalogMetadata?: {
|
|
tierDescription?: string;
|
|
features?: string[];
|
|
isRecommended?: boolean;
|
|
};
|
|
}
|
|
export interface InternetInstallationCatalogItem extends InternetCatalogProduct {
|
|
catalogMetadata?: {
|
|
installationTerm: "One-time" | "12-Month" | "24-Month";
|
|
};
|
|
}
|
|
export interface InternetAddonCatalogItem extends InternetCatalogProduct {
|
|
isBundledAddon?: boolean;
|
|
bundledAddonId?: string;
|
|
}
|
|
export interface SimCatalogProduct extends CatalogProductBase {
|
|
simDataSize?: string;
|
|
simPlanType?: string;
|
|
simHasFamilyDiscount?: boolean;
|
|
isBundledAddon?: boolean;
|
|
bundledAddonId?: string;
|
|
}
|
|
export interface SimActivationFeeCatalogItem extends SimCatalogProduct {
|
|
catalogMetadata?: {
|
|
isDefault: boolean;
|
|
};
|
|
}
|
|
export interface VpnCatalogProduct extends CatalogProductBase {
|
|
vpnRegion?: string;
|
|
}
|
|
export interface CatalogPricebookEntry {
|
|
id?: string;
|
|
name?: string;
|
|
unitPrice?: number;
|
|
pricebook2Id?: string;
|
|
product2Id?: string;
|
|
isActive?: boolean;
|
|
}
|