"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.freebitEsimActivationParamsSchema = exports.freebitEsimActivationResponseSchema = exports.freebitEsimActivationRequestSchema = exports.freebitEsimIdentitySchema = exports.freebitCancelAccountRequestSchema = exports.freebitAuthRequestSchema = exports.freebitGlobalIpRequestSchema = exports.freebitSimFeaturesRequestSchema = exports.freebitEsimAddAccountRequestSchema = exports.freebitEsimReissueRequestSchema = exports.freebitEsimMnpSchema = exports.freebitQuotaHistoryResponseSchema = exports.freebitQuotaHistoryRequestSchema = exports.freebitCancelPlanApiRequestSchema = exports.freebitCancelPlanRequestSchema = exports.freebitRemoveSpecRequestSchema = exports.freebitAddSpecRequestSchema = exports.freebitPlanChangeApiRequestSchema = exports.freebitPlanChangeRequestSchema = exports.freebitTopUpApiRequestSchema = exports.freebitTopUpRequestPayloadSchema = exports.freebitTopUpOptionsSchema = exports.freebitTrafficInfoRequestSchema = exports.freebitAccountDetailsRequestSchema = void 0; const zod_1 = require("zod"); exports.freebitAccountDetailsRequestSchema = zod_1.z.object({ version: zod_1.z.string().optional(), requestDatas: zod_1.z .array(zod_1.z.object({ kind: zod_1.z.enum(["MASTER", "MVNO"]), account: zod_1.z.union([zod_1.z.string(), zod_1.z.number()]).optional(), })) .min(1, "At least one request data entry is required"), }); exports.freebitTrafficInfoRequestSchema = zod_1.z.object({ account: zod_1.z.string().min(1, "Account is required"), }); exports.freebitTopUpOptionsSchema = zod_1.z.object({ campaignCode: zod_1.z.string().optional(), expiryDate: zod_1.z.string().optional(), scheduledAt: zod_1.z.string().optional(), }); exports.freebitTopUpRequestPayloadSchema = zod_1.z.object({ account: zod_1.z.string().min(1, "Account is required"), quotaMb: zod_1.z.number().positive("Quota must be positive"), options: exports.freebitTopUpOptionsSchema.optional(), }); exports.freebitTopUpApiRequestSchema = zod_1.z.object({ account: zod_1.z.string().min(1, "Account is required"), quota: zod_1.z.number().positive("Quota must be positive"), quotaCode: zod_1.z.string().optional(), expire: zod_1.z.string().optional(), runTime: zod_1.z.string().optional(), }); exports.freebitPlanChangeRequestSchema = zod_1.z.object({ account: zod_1.z.string().min(1, "Account is required"), newPlanCode: zod_1.z.string().min(1, "New plan code is required"), assignGlobalIp: zod_1.z.boolean().optional(), scheduledAt: zod_1.z.string().optional(), }); exports.freebitPlanChangeApiRequestSchema = zod_1.z.object({ account: zod_1.z.string().min(1, "Account is required"), plancode: zod_1.z.string().min(1, "Plan code is required"), globalip: zod_1.z.enum(["0", "1"]).optional(), runTime: zod_1.z.string().optional(), }); exports.freebitAddSpecRequestSchema = zod_1.z.object({ account: zod_1.z.string().min(1, "Account is required"), specCode: zod_1.z.string().min(1, "Spec code is required"), enabled: zod_1.z.boolean().optional(), networkType: zod_1.z.enum(["4G", "5G"]).optional(), }); exports.freebitRemoveSpecRequestSchema = zod_1.z.object({ account: zod_1.z.string().min(1, "Account is required"), specCode: zod_1.z.string().min(1, "Spec code is required"), }); exports.freebitCancelPlanRequestSchema = zod_1.z.object({ account: zod_1.z.string().min(1, "Account is required"), runDate: zod_1.z.string().optional(), }); exports.freebitCancelPlanApiRequestSchema = zod_1.z.object({ account: zod_1.z.string().min(1, "Account is required"), runTime: zod_1.z.string().optional(), }); exports.freebitQuotaHistoryRequestSchema = zod_1.z.object({ account: zod_1.z.string().min(1, "Account is required"), fromDate: zod_1.z.string().regex(/^\d{8}$/, "From date must be in YYYYMMDD format"), toDate: zod_1.z.string().regex(/^\d{8}$/, "To date must be in YYYYMMDD format"), }); exports.freebitQuotaHistoryResponseSchema = zod_1.z.object({ resultCode: zod_1.z.string(), status: zod_1.z .object({ message: zod_1.z.string(), statusCode: zod_1.z.union([zod_1.z.string(), zod_1.z.number()]), }) .optional(), total: zod_1.z.union([zod_1.z.string(), zod_1.z.number()]), count: zod_1.z.union([zod_1.z.string(), zod_1.z.number()]), quotaHistory: zod_1.z.array(zod_1.z.object({ addQuotaKb: zod_1.z.union([zod_1.z.string(), zod_1.z.number()]), addDate: zod_1.z.string(), expireDate: zod_1.z.string(), campaignCode: zod_1.z.string().optional(), })), }); exports.freebitEsimMnpSchema = zod_1.z.object({ reserveNumber: zod_1.z.string().min(1, "Reserve number is required"), reserveExpireDate: zod_1.z.string().regex(/^\d{8}$/, "Reserve expire date must be in YYYYMMDD format"), }); exports.freebitEsimReissueRequestSchema = zod_1.z.object({ account: zod_1.z.string().min(1, "Account is required"), newEid: zod_1.z.string().min(1, "New EID is required"), oldEid: zod_1.z.string().optional(), planCode: zod_1.z.string().optional(), oldProductNumber: zod_1.z.string().optional(), }); exports.freebitEsimAddAccountRequestSchema = zod_1.z.object({ authKey: zod_1.z.string().min(1).optional(), aladinOperated: zod_1.z.enum(["10", "20"]).default("10"), account: zod_1.z.string().min(1, "Account is required"), eid: zod_1.z.string().min(1, "EID is required"), addKind: zod_1.z.enum(["N", "R"]).default("N"), shipDate: zod_1.z.string().regex(/^\d{8}$/, "Ship date must be in YYYYMMDD format").optional(), planCode: zod_1.z.string().optional(), contractLine: zod_1.z.enum(["4G", "5G"]).optional(), mnp: exports.freebitEsimMnpSchema.optional(), }); exports.freebitSimFeaturesRequestSchema = zod_1.z.object({ account: zod_1.z.string().min(1, "Account is required"), voiceMailEnabled: zod_1.z.boolean().optional(), callWaitingEnabled: zod_1.z.boolean().optional(), callForwardingEnabled: zod_1.z.boolean().optional(), callerIdEnabled: zod_1.z.boolean().optional(), }); exports.freebitGlobalIpRequestSchema = zod_1.z.object({ account: zod_1.z.string().min(1, "Account is required"), assign: zod_1.z.boolean(), }); exports.freebitAuthRequestSchema = zod_1.z.object({ oemId: zod_1.z.string().min(1), oemKey: zod_1.z.string().min(1), }); exports.freebitCancelAccountRequestSchema = zod_1.z.object({ account: zod_1.z.string().min(1), runDate: zod_1.z.string().optional(), }); exports.freebitEsimIdentitySchema = zod_1.z.object({ firstnameKanji: zod_1.z.string().optional(), lastnameKanji: zod_1.z.string().optional(), firstnameZenKana: zod_1.z.string().optional(), lastnameZenKana: zod_1.z.string().optional(), gender: zod_1.z.enum(["M", "F"]).optional(), birthday: zod_1.z.string().regex(/^\d{8}$/, "Birthday must be in YYYYMMDD format").optional(), }); exports.freebitEsimActivationRequestSchema = zod_1.z.object({ authKey: zod_1.z.string().min(1, "Auth key is required"), aladinOperated: zod_1.z.enum(["10", "20"]).default("10"), createType: zod_1.z.enum(["new", "reissue", "exchange"]).default("new"), account: zod_1.z.string().min(1, "Account (MSISDN) is required"), eid: zod_1.z.string().min(1, "EID is required for eSIM"), simkind: zod_1.z.enum(["esim", "psim"]).default("esim"), planCode: zod_1.z.string().optional(), contractLine: zod_1.z.enum(["4G", "5G"]).optional(), shipDate: zod_1.z.string().regex(/^\d{8}$/, "Ship date must be in YYYYMMDD format").optional(), mnp: exports.freebitEsimMnpSchema.optional(), firstnameKanji: zod_1.z.string().optional(), lastnameKanji: zod_1.z.string().optional(), firstnameZenKana: zod_1.z.string().optional(), lastnameZenKana: zod_1.z.string().optional(), gender: zod_1.z.enum(["M", "F"]).optional(), birthday: zod_1.z.string().regex(/^\d{8}$/, "Birthday must be in YYYYMMDD format").optional(), masterAccount: zod_1.z.string().optional(), masterPassword: zod_1.z.string().optional(), repAccount: zod_1.z.string().optional(), size: zod_1.z.string().optional(), addKind: zod_1.z.string().optional(), oldEid: zod_1.z.string().optional(), oldProductNumber: zod_1.z.string().optional(), deliveryCode: zod_1.z.string().optional(), globalIp: zod_1.z.enum(["10", "20"]).optional(), }); exports.freebitEsimActivationResponseSchema = zod_1.z.object({ resultCode: zod_1.z.string(), resultMessage: zod_1.z.string().optional(), data: zod_1.z.any().optional(), status: zod_1.z.object({ statusCode: zod_1.z.union([zod_1.z.string(), zod_1.z.number()]), message: zod_1.z.string(), }).optional(), message: zod_1.z.string().optional(), }); exports.freebitEsimActivationParamsSchema = zod_1.z.object({ account: zod_1.z.string().min(1, "Account is required"), eid: zod_1.z.string().min(1, "EID is required"), planCode: zod_1.z.string().optional(), contractLine: zod_1.z.enum(["4G", "5G"]).optional(), aladinOperated: zod_1.z.enum(["10", "20"]).default("10"), shipDate: zod_1.z.string().regex(/^\d{8}$/, "Ship date must be in YYYYMMDD format").optional(), mnp: exports.freebitEsimMnpSchema.optional(), identity: exports.freebitEsimIdentitySchema.optional(), }); //# sourceMappingURL=requests.js.map