"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.vpnCatalogProductSchema = exports.simActivationFeeCatalogItemSchema = exports.simCatalogProductSchema = exports.internetAddonCatalogItemSchema = exports.internetInstallationCatalogItemSchema = exports.internetPlanCatalogItemSchema = exports.internetPlanTemplateSchema = exports.internetCatalogProductSchema = exports.catalogPricebookEntrySchema = exports.catalogProductBaseSchema = void 0; const zod_1 = require("zod"); exports.catalogProductBaseSchema = zod_1.z.object({ id: zod_1.z.string(), sku: zod_1.z.string(), name: zod_1.z.string(), description: zod_1.z.string().optional(), displayOrder: zod_1.z.number().optional(), billingCycle: zod_1.z.string().optional(), monthlyPrice: zod_1.z.number().optional(), oneTimePrice: zod_1.z.number().optional(), unitPrice: zod_1.z.number().optional(), }); exports.catalogPricebookEntrySchema = zod_1.z.object({ id: zod_1.z.string().optional(), name: zod_1.z.string().optional(), unitPrice: zod_1.z.number().optional(), pricebook2Id: zod_1.z.string().optional(), product2Id: zod_1.z.string().optional(), isActive: zod_1.z.boolean().optional(), }); exports.internetCatalogProductSchema = exports.catalogProductBaseSchema.extend({ internetPlanTier: zod_1.z.string().optional(), internetOfferingType: zod_1.z.string().optional(), features: zod_1.z.array(zod_1.z.string()).optional(), }); exports.internetPlanTemplateSchema = zod_1.z.object({ tierDescription: zod_1.z.string(), description: zod_1.z.string().optional(), features: zod_1.z.array(zod_1.z.string()).optional(), }); exports.internetPlanCatalogItemSchema = exports.internetCatalogProductSchema.extend({ catalogMetadata: zod_1.z.object({ tierDescription: zod_1.z.string().optional(), features: zod_1.z.array(zod_1.z.string()).optional(), isRecommended: zod_1.z.boolean().optional(), }).optional(), }); exports.internetInstallationCatalogItemSchema = exports.internetCatalogProductSchema.extend({ catalogMetadata: zod_1.z.object({ installationTerm: zod_1.z.enum(["One-time", "12-Month", "24-Month"]), }).optional(), }); exports.internetAddonCatalogItemSchema = exports.internetCatalogProductSchema.extend({ isBundledAddon: zod_1.z.boolean().optional(), bundledAddonId: zod_1.z.string().optional(), }); exports.simCatalogProductSchema = exports.catalogProductBaseSchema.extend({ simDataSize: zod_1.z.string().optional(), simPlanType: zod_1.z.string().optional(), simHasFamilyDiscount: zod_1.z.boolean().optional(), isBundledAddon: zod_1.z.boolean().optional(), bundledAddonId: zod_1.z.string().optional(), }); exports.simActivationFeeCatalogItemSchema = exports.simCatalogProductSchema.extend({ catalogMetadata: zod_1.z.object({ isDefault: zod_1.z.boolean(), }).optional(), }); exports.vpnCatalogProductSchema = exports.catalogProductBaseSchema.extend({ vpnRegion: zod_1.z.string().optional(), }); //# sourceMappingURL=schema.js.map