@utilix-tech/sdk 0.14.0 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -244,12 +244,72 @@ function isValidBase32(input, alphabet = "standard") {
244
244
  if (rem === 1 || rem === 3 || rem === 6) return false;
245
245
  return true;
246
246
  }
247
+ var BASE58_ALPHABET = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";
248
+ var BASE62_ALPHABET = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
249
+ function encodeBytesToBase(bytes, alphabet) {
250
+ const base = BigInt(alphabet.length);
251
+ let num = 0n;
252
+ for (const byte of bytes) num = num << 8n | BigInt(byte);
253
+ let out = "";
254
+ while (num > 0n) {
255
+ out = alphabet[Number(num % base)] + out;
256
+ num = num / base;
257
+ }
258
+ let leadingZeros = 0;
259
+ for (const byte of bytes) {
260
+ if (byte === 0) leadingZeros++;
261
+ else break;
262
+ }
263
+ return alphabet[0].repeat(leadingZeros) + out;
264
+ }
265
+ function decodeBaseToBytes(input, alphabet) {
266
+ const base = BigInt(alphabet.length);
267
+ let num = 0n;
268
+ for (const char of input) {
269
+ const idx = alphabet.indexOf(char);
270
+ if (idx === -1) return { error: `Invalid character '${char}' for this alphabet` };
271
+ num = num * base + BigInt(idx);
272
+ }
273
+ const bytes = [];
274
+ while (num > 0n) {
275
+ bytes.unshift(Number(num % 256n));
276
+ num = num / 256n;
277
+ }
278
+ let leadingZeros = 0;
279
+ for (const char of input) {
280
+ if (char === alphabet[0]) leadingZeros++;
281
+ else break;
282
+ }
283
+ return new Uint8Array([...new Array(leadingZeros).fill(0), ...bytes]);
284
+ }
285
+ function base58Encode(input) {
286
+ return encodeBytesToBase(stringToBytes(input), BASE58_ALPHABET);
287
+ }
288
+ function base58Decode(input) {
289
+ if (!input) return { error: "No input provided" };
290
+ const result = decodeBaseToBytes(input, BASE58_ALPHABET);
291
+ if (!(result instanceof Uint8Array)) return result;
292
+ return bytesToString(result);
293
+ }
294
+ function base62Encode(input) {
295
+ return encodeBytesToBase(stringToBytes(input), BASE62_ALPHABET);
296
+ }
297
+ function base62Decode(input) {
298
+ if (!input) return { error: "No input provided" };
299
+ const result = decodeBaseToBytes(input, BASE62_ALPHABET);
300
+ if (!(result instanceof Uint8Array)) return result;
301
+ return bytesToString(result);
302
+ }
247
303
 
248
304
  exports.ALPHABETS = ALPHABETS;
249
305
  exports.base32Decode = base32Decode;
250
306
  exports.base32DecodeBytes = base32DecodeBytes;
251
307
  exports.base32Encode = base32Encode;
252
308
  exports.base32EncodeBytes = base32EncodeBytes;
309
+ exports.base58Decode = base58Decode;
310
+ exports.base58Encode = base58Encode;
311
+ exports.base62Decode = base62Decode;
312
+ exports.base62Encode = base62Encode;
253
313
  exports.decodeBase64 = decodeBase64;
254
314
  exports.decodeHtmlEntities = decodeHtmlEntities;
255
315
  exports.decodeUrl = decodeUrl;
@@ -1 +1 @@
1
- export { A as ALPHABETS, B as Base32Alphabet, a as Base64DecodeResult, b as Base64EncodeResult, c as Base64Error, d as Base64Variant, D as DecodeResult, E as EncodeResult, U as UrlEncodeError, f as UrlEncodeMode, g as UrlEncodeResult, h as UrlResult, i as base32Decode, j as base32DecodeBytes, k as base32Encode, l as base32EncodeBytes, m as decodeBase64, n as decodeHtmlEntities, o as decodeUrl, p as diffSegments, q as encodeBase64, r as encodeHtmlEntities, s as encodeHtmlEntitiesAll, t as encodeMode, u as encodeUrl, v as isValidBase32 } from '../encoding-7gmq-vkV.cjs';
1
+ export { A as ALPHABETS, B as Base32Alphabet, a as Base64DecodeResult, b as Base64EncodeResult, c as Base64Error, d as Base64Variant, D as DecodeResult, E as EncodeResult, U as UrlEncodeError, f as UrlEncodeMode, g as UrlEncodeResult, h as UrlResult, i as base32Decode, j as base32DecodeBytes, k as base32Encode, l as base32EncodeBytes, m as base58Decode, n as base58Encode, o as base62Decode, p as base62Encode, q as decodeBase64, r as decodeHtmlEntities, s as decodeUrl, t as diffSegments, u as encodeBase64, v as encodeHtmlEntities, w as encodeHtmlEntitiesAll, x as encodeMode, y as encodeUrl, z as isValidBase32 } from '../encoding-Dk3wpmb3.cjs';
@@ -1 +1 @@
1
- export { A as ALPHABETS, B as Base32Alphabet, a as Base64DecodeResult, b as Base64EncodeResult, c as Base64Error, d as Base64Variant, D as DecodeResult, E as EncodeResult, U as UrlEncodeError, f as UrlEncodeMode, g as UrlEncodeResult, h as UrlResult, i as base32Decode, j as base32DecodeBytes, k as base32Encode, l as base32EncodeBytes, m as decodeBase64, n as decodeHtmlEntities, o as decodeUrl, p as diffSegments, q as encodeBase64, r as encodeHtmlEntities, s as encodeHtmlEntitiesAll, t as encodeMode, u as encodeUrl, v as isValidBase32 } from '../encoding-7gmq-vkV.js';
1
+ export { A as ALPHABETS, B as Base32Alphabet, a as Base64DecodeResult, b as Base64EncodeResult, c as Base64Error, d as Base64Variant, D as DecodeResult, E as EncodeResult, U as UrlEncodeError, f as UrlEncodeMode, g as UrlEncodeResult, h as UrlResult, i as base32Decode, j as base32DecodeBytes, k as base32Encode, l as base32EncodeBytes, m as base58Decode, n as base58Encode, o as base62Decode, p as base62Encode, q as decodeBase64, r as decodeHtmlEntities, s as decodeUrl, t as diffSegments, u as encodeBase64, v as encodeHtmlEntities, w as encodeHtmlEntitiesAll, x as encodeMode, y as encodeUrl, z as isValidBase32 } from '../encoding-Dk3wpmb3.js';
@@ -1,2 +1,2 @@
1
- export { ALPHABETS, base32Decode, base32DecodeBytes, base32Encode, base32EncodeBytes, decodeBase64, decodeHtmlEntities, decodeUrl, diffSegments, encodeBase64, encodeHtmlEntities, encodeHtmlEntitiesAll, encodeUrl, isValidBase32 } from '../chunk-IPR7FSX4.js';
1
+ export { ALPHABETS, base32Decode, base32DecodeBytes, base32Encode, base32EncodeBytes, base58Decode, base58Encode, base62Decode, base62Encode, decodeBase64, decodeHtmlEntities, decodeUrl, diffSegments, encodeBase64, encodeHtmlEntities, encodeHtmlEntitiesAll, encodeUrl, isValidBase32 } from '../chunk-DOWQZUTP.js';
2
2
  import '../chunk-MLKGABMK.js';
@@ -1189,6 +1189,42 @@ function validateIsbn(input) {
1189
1189
  }
1190
1190
  return { error: `Unsupported length (${cleaned.length} characters); expected 10 (ISBN-10) or 13 (ISBN-13)` };
1191
1191
  }
1192
+ var COMMON_TIP_PERCENTAGES = [10, 15, 18, 20, 25];
1193
+ function calculateTipSplit(billAmount, tipPercent, numPeople = 1) {
1194
+ if (!Number.isFinite(billAmount) || billAmount < 0) return { error: "Bill amount must be zero or a positive number" };
1195
+ if (!Number.isFinite(tipPercent) || tipPercent < 0) return { error: "Tip percent must be zero or a positive number" };
1196
+ if (!Number.isInteger(numPeople) || numPeople < 1) return { error: "Number of people must be a positive whole number" };
1197
+ const round22 = (n) => Math.round(n * 100) / 100;
1198
+ const billRounded = round22(billAmount);
1199
+ const tipAmount = round22(billAmount * (tipPercent / 100));
1200
+ const totalAmount = round22(billRounded + tipAmount);
1201
+ return {
1202
+ billAmount: billRounded,
1203
+ tipPercent,
1204
+ tipAmount,
1205
+ totalAmount,
1206
+ numPeople,
1207
+ perPersonBill: round22(billRounded / numPeople),
1208
+ perPersonTip: round22(tipAmount / numPeople),
1209
+ perPersonTotal: round22(totalAmount / numPeople)
1210
+ };
1211
+ }
1212
+ function calculateSimpleInterest(principal, annualRatePercent, years) {
1213
+ if (!Number.isFinite(principal) || principal < 0) return { error: "Principal must be zero or a positive number" };
1214
+ if (!Number.isFinite(annualRatePercent) || annualRatePercent < 0) {
1215
+ return { error: "Annual interest rate must be zero or a positive number" };
1216
+ }
1217
+ if (!Number.isFinite(years) || years <= 0) return { error: "Years must be a positive number" };
1218
+ const round22 = (n) => Math.round(n * 100) / 100;
1219
+ const interest = round22(principal * (annualRatePercent / 100) * years);
1220
+ return {
1221
+ principal: round22(principal),
1222
+ annualRatePercent,
1223
+ years,
1224
+ interest,
1225
+ totalPayoff: round22(principal + interest)
1226
+ };
1227
+ }
1192
1228
 
1193
1229
  exports.BASE_LABELS = BASE_LABELS;
1194
1230
  exports.BASE_PREFIXES = BASE_PREFIXES;
@@ -1199,6 +1235,7 @@ exports.COMMON_PERMISSIONS = COMMON_PERMISSIONS;
1199
1235
  exports.COMMON_RATIOS = COMMON_RATIOS;
1200
1236
  exports.COMMON_SIZES = COMMON_SIZES;
1201
1237
  exports.COMMON_TAX_RATES = COMMON_TAX_RATES;
1238
+ exports.COMMON_TIP_PERCENTAGES = COMMON_TIP_PERCENTAGES;
1202
1239
  exports.COMMON_VIEWPORTS = COMMON_VIEWPORTS;
1203
1240
  exports.autoFormat = autoFormat;
1204
1241
  exports.bumpVersion = bumpVersion;
@@ -1206,7 +1243,9 @@ exports.calcAspectRatio = calcAspectRatio;
1206
1243
  exports.calcSubnet = calcSubnet;
1207
1244
  exports.calculateCompoundInterest = calculateCompoundInterest;
1208
1245
  exports.calculateLoan = calculateLoan;
1246
+ exports.calculateSimpleInterest = calculateSimpleInterest;
1209
1247
  exports.calculateTax = calculateTax;
1248
+ exports.calculateTipSplit = calculateTipSplit;
1210
1249
  exports.compareSemver = compareSemver;
1211
1250
  exports.convert = convert;
1212
1251
  exports.convertBytes = convertBytes;
@@ -1 +1 @@
1
- export { A as AmortizationRow, a as AspectRatioResult, B as BASE_LABELS, b as BASE_PREFIXES, c as BYTE_UNITS, d as BarcodeFormat, e as BarcodeValidationResult, f as BaseConvertResult, g as ByteConvertResult, h as ByteUnit, C as COMMON_CURRENCIES, i as COMMON_LOCALES, j as COMMON_PERMISSIONS, k as COMMON_RATIOS, l as COMMON_SIZES, m as COMMON_TAX_RATES, n as COMMON_VIEWPORTS, o as CardValidationResult, p as CompoundInterestResult, q as CompoundYearRow, D as Dimensions, F as FilePermissions, r as FormatOptions, I as IbanValidationResult, s as IpConversion, t as IsbnFormat, v as IsbnResult, L as LoanResult, N as NotationStyle, w as NumberBase, P as Permission, x as PxConvertResult, S as SemverVersion, y as SubnetInfo, T as TaxDirection, z as TaxResult, V as ViewportConvertResult, E as autoFormat, G as bumpVersion, H as calcAspectRatio, J as calcSubnet, K as calculateCompoundInterest, M as calculateLoan, O as calculateTax, Q as compareSemver, R as convert, U as convertBytes, W as convertIp, X as coverBox, Y as decimalToIp, Z as decimalToIpCidr, _ as describePermissions, $ as fitIntoBox, a0 as formatNumber, a1 as formatValue, a2 as formatVwValue, a3 as formatWithSeparator, a4 as gcd, a5 as ipFromBinary, a6 as ipFromDecimal, a7 as ipFromHex, a8 as ipToBinary, a9 as ipToDecimal, aa as ipToDecimalCidr, ab as ipToHex, ac as ipToOctal, ad as isValid, ae as isValidCidr, af as isValidIp, ag as isValidIpv4, ah as octalToPermissions, ai as parseFileSize, aj as parseInput, ak as parseNumberString, al as parseSemver, am as permissionsToChmod, an as permissionsToOctal, ao as permissionsToSymbolic, ap as ptToPx, aq as pxToAll, ar as pxToViewport, as as remToPx, at as satisfiesRange, au as scaleByHeight, av as scaleByWidth, aw as sortVersions, ax as splitSubnet, ay as symbolicToPermissions, az as validateBarcode, aA as validateCardNumber, aB as validateIban, aC as validateIsbn, aD as viewportToPx } from '../units-C4N1Dq7_.cjs';
1
+ export { A as AmortizationRow, a as AspectRatioResult, B as BASE_LABELS, b as BASE_PREFIXES, c as BYTE_UNITS, d as BarcodeFormat, e as BarcodeValidationResult, f as BaseConvertResult, g as ByteConvertResult, h as ByteUnit, C as COMMON_CURRENCIES, i as COMMON_LOCALES, j as COMMON_PERMISSIONS, k as COMMON_RATIOS, l as COMMON_SIZES, m as COMMON_TAX_RATES, n as COMMON_TIP_PERCENTAGES, o as COMMON_VIEWPORTS, p as CardValidationResult, q as CompoundInterestResult, r as CompoundYearRow, D as Dimensions, F as FilePermissions, s as FormatOptions, I as IbanValidationResult, t as IpConversion, v as IsbnFormat, w as IsbnResult, L as LoanResult, N as NotationStyle, x as NumberBase, P as Permission, y as PxConvertResult, S as SemverVersion, z as SimpleInterestResult, E as SubnetInfo, T as TaxDirection, G as TaxResult, H as TipSplitResult, V as ViewportConvertResult, J as autoFormat, K as bumpVersion, M as calcAspectRatio, O as calcSubnet, Q as calculateCompoundInterest, R as calculateLoan, U as calculateSimpleInterest, W as calculateTax, X as calculateTipSplit, Y as compareSemver, Z as convert, _ as convertBytes, $ as convertIp, a0 as coverBox, a1 as decimalToIp, a2 as decimalToIpCidr, a3 as describePermissions, a4 as fitIntoBox, a5 as formatNumber, a6 as formatValue, a7 as formatVwValue, a8 as formatWithSeparator, a9 as gcd, aa as ipFromBinary, ab as ipFromDecimal, ac as ipFromHex, ad as ipToBinary, ae as ipToDecimal, af as ipToDecimalCidr, ag as ipToHex, ah as ipToOctal, ai as isValid, aj as isValidCidr, ak as isValidIp, al as isValidIpv4, am as octalToPermissions, an as parseFileSize, ao as parseInput, ap as parseNumberString, aq as parseSemver, ar as permissionsToChmod, as as permissionsToOctal, at as permissionsToSymbolic, au as ptToPx, av as pxToAll, aw as pxToViewport, ax as remToPx, ay as satisfiesRange, az as scaleByHeight, aA as scaleByWidth, aB as sortVersions, aC as splitSubnet, aD as symbolicToPermissions, aE as validateBarcode, aF as validateCardNumber, aG as validateIban, aH as validateIsbn, aI as viewportToPx } from '../units-CkV4kAIs.cjs';
@@ -1 +1 @@
1
- export { A as AmortizationRow, a as AspectRatioResult, B as BASE_LABELS, b as BASE_PREFIXES, c as BYTE_UNITS, d as BarcodeFormat, e as BarcodeValidationResult, f as BaseConvertResult, g as ByteConvertResult, h as ByteUnit, C as COMMON_CURRENCIES, i as COMMON_LOCALES, j as COMMON_PERMISSIONS, k as COMMON_RATIOS, l as COMMON_SIZES, m as COMMON_TAX_RATES, n as COMMON_VIEWPORTS, o as CardValidationResult, p as CompoundInterestResult, q as CompoundYearRow, D as Dimensions, F as FilePermissions, r as FormatOptions, I as IbanValidationResult, s as IpConversion, t as IsbnFormat, v as IsbnResult, L as LoanResult, N as NotationStyle, w as NumberBase, P as Permission, x as PxConvertResult, S as SemverVersion, y as SubnetInfo, T as TaxDirection, z as TaxResult, V as ViewportConvertResult, E as autoFormat, G as bumpVersion, H as calcAspectRatio, J as calcSubnet, K as calculateCompoundInterest, M as calculateLoan, O as calculateTax, Q as compareSemver, R as convert, U as convertBytes, W as convertIp, X as coverBox, Y as decimalToIp, Z as decimalToIpCidr, _ as describePermissions, $ as fitIntoBox, a0 as formatNumber, a1 as formatValue, a2 as formatVwValue, a3 as formatWithSeparator, a4 as gcd, a5 as ipFromBinary, a6 as ipFromDecimal, a7 as ipFromHex, a8 as ipToBinary, a9 as ipToDecimal, aa as ipToDecimalCidr, ab as ipToHex, ac as ipToOctal, ad as isValid, ae as isValidCidr, af as isValidIp, ag as isValidIpv4, ah as octalToPermissions, ai as parseFileSize, aj as parseInput, ak as parseNumberString, al as parseSemver, am as permissionsToChmod, an as permissionsToOctal, ao as permissionsToSymbolic, ap as ptToPx, aq as pxToAll, ar as pxToViewport, as as remToPx, at as satisfiesRange, au as scaleByHeight, av as scaleByWidth, aw as sortVersions, ax as splitSubnet, ay as symbolicToPermissions, az as validateBarcode, aA as validateCardNumber, aB as validateIban, aC as validateIsbn, aD as viewportToPx } from '../units-C4N1Dq7_.js';
1
+ export { A as AmortizationRow, a as AspectRatioResult, B as BASE_LABELS, b as BASE_PREFIXES, c as BYTE_UNITS, d as BarcodeFormat, e as BarcodeValidationResult, f as BaseConvertResult, g as ByteConvertResult, h as ByteUnit, C as COMMON_CURRENCIES, i as COMMON_LOCALES, j as COMMON_PERMISSIONS, k as COMMON_RATIOS, l as COMMON_SIZES, m as COMMON_TAX_RATES, n as COMMON_TIP_PERCENTAGES, o as COMMON_VIEWPORTS, p as CardValidationResult, q as CompoundInterestResult, r as CompoundYearRow, D as Dimensions, F as FilePermissions, s as FormatOptions, I as IbanValidationResult, t as IpConversion, v as IsbnFormat, w as IsbnResult, L as LoanResult, N as NotationStyle, x as NumberBase, P as Permission, y as PxConvertResult, S as SemverVersion, z as SimpleInterestResult, E as SubnetInfo, T as TaxDirection, G as TaxResult, H as TipSplitResult, V as ViewportConvertResult, J as autoFormat, K as bumpVersion, M as calcAspectRatio, O as calcSubnet, Q as calculateCompoundInterest, R as calculateLoan, U as calculateSimpleInterest, W as calculateTax, X as calculateTipSplit, Y as compareSemver, Z as convert, _ as convertBytes, $ as convertIp, a0 as coverBox, a1 as decimalToIp, a2 as decimalToIpCidr, a3 as describePermissions, a4 as fitIntoBox, a5 as formatNumber, a6 as formatValue, a7 as formatVwValue, a8 as formatWithSeparator, a9 as gcd, aa as ipFromBinary, ab as ipFromDecimal, ac as ipFromHex, ad as ipToBinary, ae as ipToDecimal, af as ipToDecimalCidr, ag as ipToHex, ah as ipToOctal, ai as isValid, aj as isValidCidr, ak as isValidIp, al as isValidIpv4, am as octalToPermissions, an as parseFileSize, ao as parseInput, ap as parseNumberString, aq as parseSemver, ar as permissionsToChmod, as as permissionsToOctal, at as permissionsToSymbolic, au as ptToPx, av as pxToAll, aw as pxToViewport, ax as remToPx, ay as satisfiesRange, az as scaleByHeight, aA as scaleByWidth, aB as sortVersions, aC as splitSubnet, aD as symbolicToPermissions, aE as validateBarcode, aF as validateCardNumber, aG as validateIban, aH as validateIsbn, aI as viewportToPx } from '../units-CkV4kAIs.js';
@@ -1,2 +1,2 @@
1
- export { BASE_LABELS, BASE_PREFIXES, BYTE_UNITS, COMMON_CURRENCIES, COMMON_LOCALES, COMMON_PERMISSIONS, COMMON_RATIOS, COMMON_SIZES, COMMON_TAX_RATES, COMMON_VIEWPORTS, autoFormat, bumpVersion, calcAspectRatio, calcSubnet, calculateCompoundInterest, calculateLoan, calculateTax, compareSemver, convert, convertBytes, convertIp, coverBox, decimalToIp, decimalToIpCidr, describePermissions, fitIntoBox, formatNumber, formatValue, formatVwValue, formatWithSeparator, gcd, ipFromBinary, ipFromDecimal, ipFromHex, ipToBinary, ipToDecimal, ipToDecimalCidr, ipToHex, ipToOctal, isValid, isValidCidr, isValidIp, isValidIpv4, octalToPermissions, parseFileSize, parseInput, parseNumberString, parseSemver, permissionsToChmod, permissionsToOctal, permissionsToSymbolic, ptToPx, pxToAll, pxToViewport, remToPx, satisfiesRange, scaleByHeight, scaleByWidth, sortVersions, splitSubnet, symbolicToPermissions, validateBarcode, validateCardNumber, validateIban, validateIsbn, viewportToPx } from '../chunk-2TQTKZCN.js';
1
+ export { BASE_LABELS, BASE_PREFIXES, BYTE_UNITS, COMMON_CURRENCIES, COMMON_LOCALES, COMMON_PERMISSIONS, COMMON_RATIOS, COMMON_SIZES, COMMON_TAX_RATES, COMMON_TIP_PERCENTAGES, COMMON_VIEWPORTS, autoFormat, bumpVersion, calcAspectRatio, calcSubnet, calculateCompoundInterest, calculateLoan, calculateSimpleInterest, calculateTax, calculateTipSplit, compareSemver, convert, convertBytes, convertIp, coverBox, decimalToIp, decimalToIpCidr, describePermissions, fitIntoBox, formatNumber, formatValue, formatVwValue, formatWithSeparator, gcd, ipFromBinary, ipFromDecimal, ipFromHex, ipToBinary, ipToDecimal, ipToDecimalCidr, ipToHex, ipToOctal, isValid, isValidCidr, isValidIp, isValidIpv4, octalToPermissions, parseFileSize, parseInput, parseNumberString, parseSemver, permissionsToChmod, permissionsToOctal, permissionsToSymbolic, ptToPx, pxToAll, pxToViewport, remToPx, satisfiesRange, scaleByHeight, scaleByWidth, sortVersions, splitSubnet, symbolicToPermissions, validateBarcode, validateCardNumber, validateIban, validateIsbn, viewportToPx } from '../chunk-M4MMO6C6.js';
2
2
  import '../chunk-MLKGABMK.js';
@@ -19,6 +19,8 @@
19
19
  * - vat-calculator : calculateTax
20
20
  * - compound-interest-calculator : calculateCompoundInterest
21
21
  * - isbn-validator : validateIsbn
22
+ * - tip-calculator : calculateTipSplit
23
+ * - simple-interest-calculator : calculateSimpleInterest
22
24
  */
23
25
  interface PxConvertResult {
24
26
  px: number;
@@ -366,6 +368,42 @@ interface IsbnResult {
366
368
  declare function validateIsbn(input: string): IsbnResult | {
367
369
  error: string;
368
370
  };
371
+ interface TipSplitResult {
372
+ billAmount: number;
373
+ tipPercent: number;
374
+ tipAmount: number;
375
+ totalAmount: number;
376
+ numPeople: number;
377
+ perPersonBill: number;
378
+ perPersonTip: number;
379
+ perPersonTotal: number;
380
+ }
381
+ /** Common tip percentages shown as quick-select buttons in the UI. */
382
+ declare const COMMON_TIP_PERCENTAGES: number[];
383
+ /**
384
+ * Compute a tip on a bill amount and split the bill, tip, and total evenly
385
+ * across a number of people. Pure arithmetic over user-supplied numbers, no
386
+ * live rate feed and no uneven per-item splitting.
387
+ */
388
+ declare function calculateTipSplit(billAmount: number, tipPercent: number, numPeople?: number): TipSplitResult | {
389
+ error: string;
390
+ };
391
+ interface SimpleInterestResult {
392
+ principal: number;
393
+ annualRatePercent: number;
394
+ years: number;
395
+ interest: number;
396
+ totalPayoff: number;
397
+ }
398
+ /**
399
+ * Compute simple (non-compounding) interest: interest = principal × rate ×
400
+ * time. Distinct from calculateCompoundInterest, which reinvests interest
401
+ * each period; this is the flat-rate formula commonly used for short-term
402
+ * loans and bonds.
403
+ */
404
+ declare function calculateSimpleInterest(principal: number, annualRatePercent: number, years: number): SimpleInterestResult | {
405
+ error: string;
406
+ };
369
407
 
370
408
  type units_AmortizationRow = AmortizationRow;
371
409
  type units_AspectRatioResult = AspectRatioResult;
@@ -383,6 +421,7 @@ declare const units_COMMON_PERMISSIONS: typeof COMMON_PERMISSIONS;
383
421
  declare const units_COMMON_RATIOS: typeof COMMON_RATIOS;
384
422
  declare const units_COMMON_SIZES: typeof COMMON_SIZES;
385
423
  declare const units_COMMON_TAX_RATES: typeof COMMON_TAX_RATES;
424
+ declare const units_COMMON_TIP_PERCENTAGES: typeof COMMON_TIP_PERCENTAGES;
386
425
  declare const units_COMMON_VIEWPORTS: typeof COMMON_VIEWPORTS;
387
426
  type units_CardValidationResult = CardValidationResult;
388
427
  type units_CompoundInterestResult = CompoundInterestResult;
@@ -400,9 +439,11 @@ type units_NumberBase = NumberBase;
400
439
  type units_Permission = Permission;
401
440
  type units_PxConvertResult = PxConvertResult;
402
441
  type units_SemverVersion = SemverVersion;
442
+ type units_SimpleInterestResult = SimpleInterestResult;
403
443
  type units_SubnetInfo = SubnetInfo;
404
444
  type units_TaxDirection = TaxDirection;
405
445
  type units_TaxResult = TaxResult;
446
+ type units_TipSplitResult = TipSplitResult;
406
447
  type units_ViewportConvertResult = ViewportConvertResult;
407
448
  declare const units_autoFormat: typeof autoFormat;
408
449
  declare const units_bumpVersion: typeof bumpVersion;
@@ -410,7 +451,9 @@ declare const units_calcAspectRatio: typeof calcAspectRatio;
410
451
  declare const units_calcSubnet: typeof calcSubnet;
411
452
  declare const units_calculateCompoundInterest: typeof calculateCompoundInterest;
412
453
  declare const units_calculateLoan: typeof calculateLoan;
454
+ declare const units_calculateSimpleInterest: typeof calculateSimpleInterest;
413
455
  declare const units_calculateTax: typeof calculateTax;
456
+ declare const units_calculateTipSplit: typeof calculateTipSplit;
414
457
  declare const units_compareSemver: typeof compareSemver;
415
458
  declare const units_convert: typeof convert;
416
459
  declare const units_convertBytes: typeof convertBytes;
@@ -461,7 +504,7 @@ declare const units_validateIban: typeof validateIban;
461
504
  declare const units_validateIsbn: typeof validateIsbn;
462
505
  declare const units_viewportToPx: typeof viewportToPx;
463
506
  declare namespace units {
464
- export { type units_AmortizationRow as AmortizationRow, type units_AspectRatioResult as AspectRatioResult, units_BASE_LABELS as BASE_LABELS, units_BASE_PREFIXES as BASE_PREFIXES, units_BYTE_UNITS as BYTE_UNITS, type units_BarcodeFormat as BarcodeFormat, type units_BarcodeValidationResult as BarcodeValidationResult, type units_BaseConvertResult as BaseConvertResult, type units_ByteConvertResult as ByteConvertResult, type units_ByteUnit as ByteUnit, units_COMMON_CURRENCIES as COMMON_CURRENCIES, units_COMMON_LOCALES as COMMON_LOCALES, units_COMMON_PERMISSIONS as COMMON_PERMISSIONS, units_COMMON_RATIOS as COMMON_RATIOS, units_COMMON_SIZES as COMMON_SIZES, units_COMMON_TAX_RATES as COMMON_TAX_RATES, units_COMMON_VIEWPORTS as COMMON_VIEWPORTS, type units_CardValidationResult as CardValidationResult, type units_CompoundInterestResult as CompoundInterestResult, type units_CompoundYearRow as CompoundYearRow, type units_Dimensions as Dimensions, type units_FilePermissions as FilePermissions, type units_FormatOptions as FormatOptions, type units_IbanValidationResult as IbanValidationResult, type units_IpConversion as IpConversion, type units_IsbnFormat as IsbnFormat, type units_IsbnResult as IsbnResult, type units_LoanResult as LoanResult, type units_NotationStyle as NotationStyle, type units_NumberBase as NumberBase, type units_Permission as Permission, type units_PxConvertResult as PxConvertResult, type units_SemverVersion as SemverVersion, type units_SubnetInfo as SubnetInfo, type units_TaxDirection as TaxDirection, type units_TaxResult as TaxResult, type units_ViewportConvertResult as ViewportConvertResult, units_autoFormat as autoFormat, units_bumpVersion as bumpVersion, units_calcAspectRatio as calcAspectRatio, units_calcSubnet as calcSubnet, units_calculateCompoundInterest as calculateCompoundInterest, units_calculateLoan as calculateLoan, units_calculateTax as calculateTax, units_compareSemver as compareSemver, units_convert as convert, units_convertBytes as convertBytes, units_convertIp as convertIp, units_coverBox as coverBox, units_decimalToIp as decimalToIp, units_decimalToIpCidr as decimalToIpCidr, units_describePermissions as describePermissions, units_fitIntoBox as fitIntoBox, units_formatNumber as formatNumber, units_formatValue as formatValue, units_formatVwValue as formatVwValue, units_formatWithSeparator as formatWithSeparator, units_gcd as gcd, units_ipFromBinary as ipFromBinary, units_ipFromDecimal as ipFromDecimal, units_ipFromHex as ipFromHex, units_ipToBinary as ipToBinary, units_ipToDecimal as ipToDecimal, units_ipToDecimalCidr as ipToDecimalCidr, units_ipToHex as ipToHex, units_ipToOctal as ipToOctal, units_isValid as isValid, units_isValidCidr as isValidCidr, units_isValidIp as isValidIp, units_isValidIpv4 as isValidIpv4, units_octalToPermissions as octalToPermissions, units_parseFileSize as parseFileSize, units_parseInput as parseInput, units_parseNumberString as parseNumberString, units_parseSemver as parseSemver, units_permissionsToChmod as permissionsToChmod, units_permissionsToOctal as permissionsToOctal, units_permissionsToSymbolic as permissionsToSymbolic, units_ptToPx as ptToPx, units_pxToAll as pxToAll, units_pxToViewport as pxToViewport, units_remToPx as remToPx, units_satisfiesRange as satisfiesRange, units_scaleByHeight as scaleByHeight, units_scaleByWidth as scaleByWidth, units_sortVersions as sortVersions, units_splitSubnet as splitSubnet, units_symbolicToPermissions as symbolicToPermissions, units_validateBarcode as validateBarcode, units_validateCardNumber as validateCardNumber, units_validateIban as validateIban, units_validateIsbn as validateIsbn, units_viewportToPx as viewportToPx };
507
+ export { type units_AmortizationRow as AmortizationRow, type units_AspectRatioResult as AspectRatioResult, units_BASE_LABELS as BASE_LABELS, units_BASE_PREFIXES as BASE_PREFIXES, units_BYTE_UNITS as BYTE_UNITS, type units_BarcodeFormat as BarcodeFormat, type units_BarcodeValidationResult as BarcodeValidationResult, type units_BaseConvertResult as BaseConvertResult, type units_ByteConvertResult as ByteConvertResult, type units_ByteUnit as ByteUnit, units_COMMON_CURRENCIES as COMMON_CURRENCIES, units_COMMON_LOCALES as COMMON_LOCALES, units_COMMON_PERMISSIONS as COMMON_PERMISSIONS, units_COMMON_RATIOS as COMMON_RATIOS, units_COMMON_SIZES as COMMON_SIZES, units_COMMON_TAX_RATES as COMMON_TAX_RATES, units_COMMON_TIP_PERCENTAGES as COMMON_TIP_PERCENTAGES, units_COMMON_VIEWPORTS as COMMON_VIEWPORTS, type units_CardValidationResult as CardValidationResult, type units_CompoundInterestResult as CompoundInterestResult, type units_CompoundYearRow as CompoundYearRow, type units_Dimensions as Dimensions, type units_FilePermissions as FilePermissions, type units_FormatOptions as FormatOptions, type units_IbanValidationResult as IbanValidationResult, type units_IpConversion as IpConversion, type units_IsbnFormat as IsbnFormat, type units_IsbnResult as IsbnResult, type units_LoanResult as LoanResult, type units_NotationStyle as NotationStyle, type units_NumberBase as NumberBase, type units_Permission as Permission, type units_PxConvertResult as PxConvertResult, type units_SemverVersion as SemverVersion, type units_SimpleInterestResult as SimpleInterestResult, type units_SubnetInfo as SubnetInfo, type units_TaxDirection as TaxDirection, type units_TaxResult as TaxResult, type units_TipSplitResult as TipSplitResult, type units_ViewportConvertResult as ViewportConvertResult, units_autoFormat as autoFormat, units_bumpVersion as bumpVersion, units_calcAspectRatio as calcAspectRatio, units_calcSubnet as calcSubnet, units_calculateCompoundInterest as calculateCompoundInterest, units_calculateLoan as calculateLoan, units_calculateSimpleInterest as calculateSimpleInterest, units_calculateTax as calculateTax, units_calculateTipSplit as calculateTipSplit, units_compareSemver as compareSemver, units_convert as convert, units_convertBytes as convertBytes, units_convertIp as convertIp, units_coverBox as coverBox, units_decimalToIp as decimalToIp, units_decimalToIpCidr as decimalToIpCidr, units_describePermissions as describePermissions, units_fitIntoBox as fitIntoBox, units_formatNumber as formatNumber, units_formatValue as formatValue, units_formatVwValue as formatVwValue, units_formatWithSeparator as formatWithSeparator, units_gcd as gcd, units_ipFromBinary as ipFromBinary, units_ipFromDecimal as ipFromDecimal, units_ipFromHex as ipFromHex, units_ipToBinary as ipToBinary, units_ipToDecimal as ipToDecimal, units_ipToDecimalCidr as ipToDecimalCidr, units_ipToHex as ipToHex, units_ipToOctal as ipToOctal, units_isValid as isValid, units_isValidCidr as isValidCidr, units_isValidIp as isValidIp, units_isValidIpv4 as isValidIpv4, units_octalToPermissions as octalToPermissions, units_parseFileSize as parseFileSize, units_parseInput as parseInput, units_parseNumberString as parseNumberString, units_parseSemver as parseSemver, units_permissionsToChmod as permissionsToChmod, units_permissionsToOctal as permissionsToOctal, units_permissionsToSymbolic as permissionsToSymbolic, units_ptToPx as ptToPx, units_pxToAll as pxToAll, units_pxToViewport as pxToViewport, units_remToPx as remToPx, units_satisfiesRange as satisfiesRange, units_scaleByHeight as scaleByHeight, units_scaleByWidth as scaleByWidth, units_sortVersions as sortVersions, units_splitSubnet as splitSubnet, units_symbolicToPermissions as symbolicToPermissions, units_validateBarcode as validateBarcode, units_validateCardNumber as validateCardNumber, units_validateIban as validateIban, units_validateIsbn as validateIsbn, units_viewportToPx as viewportToPx };
465
508
  }
466
509
 
467
- export { fitIntoBox as $, type AmortizationRow as A, BASE_LABELS as B, COMMON_CURRENCIES as C, type Dimensions as D, autoFormat as E, type FilePermissions as F, bumpVersion as G, calcAspectRatio as H, type IbanValidationResult as I, calcSubnet as J, calculateCompoundInterest as K, type LoanResult as L, calculateLoan as M, type NotationStyle as N, calculateTax as O, type Permission as P, compareSemver as Q, convert as R, type SemverVersion as S, type TaxDirection as T, convertBytes as U, type ViewportConvertResult as V, convertIp as W, coverBox as X, decimalToIp as Y, decimalToIpCidr as Z, describePermissions as _, type AspectRatioResult as a, formatNumber as a0, formatValue as a1, formatVwValue as a2, formatWithSeparator as a3, gcd as a4, ipFromBinary as a5, ipFromDecimal as a6, ipFromHex as a7, ipToBinary as a8, ipToDecimal as a9, validateCardNumber as aA, validateIban as aB, validateIsbn as aC, viewportToPx as aD, ipToDecimalCidr as aa, ipToHex as ab, ipToOctal as ac, isValid as ad, isValidCidr as ae, isValidIp as af, isValidIpv4 as ag, octalToPermissions as ah, parseFileSize as ai, parseInput as aj, parseNumberString as ak, parseSemver as al, permissionsToChmod as am, permissionsToOctal as an, permissionsToSymbolic as ao, ptToPx as ap, pxToAll as aq, pxToViewport as ar, remToPx as as, satisfiesRange as at, scaleByHeight as au, scaleByWidth as av, sortVersions as aw, splitSubnet as ax, symbolicToPermissions as ay, validateBarcode as az, BASE_PREFIXES as b, BYTE_UNITS as c, type BarcodeFormat as d, type BarcodeValidationResult as e, type BaseConvertResult as f, type ByteConvertResult as g, type ByteUnit as h, COMMON_LOCALES as i, COMMON_PERMISSIONS as j, COMMON_RATIOS as k, COMMON_SIZES as l, COMMON_TAX_RATES as m, COMMON_VIEWPORTS as n, type CardValidationResult as o, type CompoundInterestResult as p, type CompoundYearRow as q, type FormatOptions as r, type IpConversion as s, type IsbnFormat as t, units as u, type IsbnResult as v, type NumberBase as w, type PxConvertResult as x, type SubnetInfo as y, type TaxResult as z };
510
+ export { convertIp as $, type AmortizationRow as A, BASE_LABELS as B, COMMON_CURRENCIES as C, type Dimensions as D, type SubnetInfo as E, type FilePermissions as F, type TaxResult as G, type TipSplitResult as H, type IbanValidationResult as I, autoFormat as J, bumpVersion as K, type LoanResult as L, calcAspectRatio as M, type NotationStyle as N, calcSubnet as O, type Permission as P, calculateCompoundInterest as Q, calculateLoan as R, type SemverVersion as S, type TaxDirection as T, calculateSimpleInterest as U, type ViewportConvertResult as V, calculateTax as W, calculateTipSplit as X, compareSemver as Y, convert as Z, convertBytes as _, type AspectRatioResult as a, coverBox as a0, decimalToIp as a1, decimalToIpCidr as a2, describePermissions as a3, fitIntoBox as a4, formatNumber as a5, formatValue as a6, formatVwValue as a7, formatWithSeparator as a8, gcd as a9, scaleByWidth as aA, sortVersions as aB, splitSubnet as aC, symbolicToPermissions as aD, validateBarcode as aE, validateCardNumber as aF, validateIban as aG, validateIsbn as aH, viewportToPx as aI, ipFromBinary as aa, ipFromDecimal as ab, ipFromHex as ac, ipToBinary as ad, ipToDecimal as ae, ipToDecimalCidr as af, ipToHex as ag, ipToOctal as ah, isValid as ai, isValidCidr as aj, isValidIp as ak, isValidIpv4 as al, octalToPermissions as am, parseFileSize as an, parseInput as ao, parseNumberString as ap, parseSemver as aq, permissionsToChmod as ar, permissionsToOctal as as, permissionsToSymbolic as at, ptToPx as au, pxToAll as av, pxToViewport as aw, remToPx as ax, satisfiesRange as ay, scaleByHeight as az, BASE_PREFIXES as b, BYTE_UNITS as c, type BarcodeFormat as d, type BarcodeValidationResult as e, type BaseConvertResult as f, type ByteConvertResult as g, type ByteUnit as h, COMMON_LOCALES as i, COMMON_PERMISSIONS as j, COMMON_RATIOS as k, COMMON_SIZES as l, COMMON_TAX_RATES as m, COMMON_TIP_PERCENTAGES as n, COMMON_VIEWPORTS as o, type CardValidationResult as p, type CompoundInterestResult as q, type CompoundYearRow as r, type FormatOptions as s, type IpConversion as t, units as u, type IsbnFormat as v, type IsbnResult as w, type NumberBase as x, type PxConvertResult as y, type SimpleInterestResult as z };
@@ -19,6 +19,8 @@
19
19
  * - vat-calculator : calculateTax
20
20
  * - compound-interest-calculator : calculateCompoundInterest
21
21
  * - isbn-validator : validateIsbn
22
+ * - tip-calculator : calculateTipSplit
23
+ * - simple-interest-calculator : calculateSimpleInterest
22
24
  */
23
25
  interface PxConvertResult {
24
26
  px: number;
@@ -366,6 +368,42 @@ interface IsbnResult {
366
368
  declare function validateIsbn(input: string): IsbnResult | {
367
369
  error: string;
368
370
  };
371
+ interface TipSplitResult {
372
+ billAmount: number;
373
+ tipPercent: number;
374
+ tipAmount: number;
375
+ totalAmount: number;
376
+ numPeople: number;
377
+ perPersonBill: number;
378
+ perPersonTip: number;
379
+ perPersonTotal: number;
380
+ }
381
+ /** Common tip percentages shown as quick-select buttons in the UI. */
382
+ declare const COMMON_TIP_PERCENTAGES: number[];
383
+ /**
384
+ * Compute a tip on a bill amount and split the bill, tip, and total evenly
385
+ * across a number of people. Pure arithmetic over user-supplied numbers, no
386
+ * live rate feed and no uneven per-item splitting.
387
+ */
388
+ declare function calculateTipSplit(billAmount: number, tipPercent: number, numPeople?: number): TipSplitResult | {
389
+ error: string;
390
+ };
391
+ interface SimpleInterestResult {
392
+ principal: number;
393
+ annualRatePercent: number;
394
+ years: number;
395
+ interest: number;
396
+ totalPayoff: number;
397
+ }
398
+ /**
399
+ * Compute simple (non-compounding) interest: interest = principal × rate ×
400
+ * time. Distinct from calculateCompoundInterest, which reinvests interest
401
+ * each period; this is the flat-rate formula commonly used for short-term
402
+ * loans and bonds.
403
+ */
404
+ declare function calculateSimpleInterest(principal: number, annualRatePercent: number, years: number): SimpleInterestResult | {
405
+ error: string;
406
+ };
369
407
 
370
408
  type units_AmortizationRow = AmortizationRow;
371
409
  type units_AspectRatioResult = AspectRatioResult;
@@ -383,6 +421,7 @@ declare const units_COMMON_PERMISSIONS: typeof COMMON_PERMISSIONS;
383
421
  declare const units_COMMON_RATIOS: typeof COMMON_RATIOS;
384
422
  declare const units_COMMON_SIZES: typeof COMMON_SIZES;
385
423
  declare const units_COMMON_TAX_RATES: typeof COMMON_TAX_RATES;
424
+ declare const units_COMMON_TIP_PERCENTAGES: typeof COMMON_TIP_PERCENTAGES;
386
425
  declare const units_COMMON_VIEWPORTS: typeof COMMON_VIEWPORTS;
387
426
  type units_CardValidationResult = CardValidationResult;
388
427
  type units_CompoundInterestResult = CompoundInterestResult;
@@ -400,9 +439,11 @@ type units_NumberBase = NumberBase;
400
439
  type units_Permission = Permission;
401
440
  type units_PxConvertResult = PxConvertResult;
402
441
  type units_SemverVersion = SemverVersion;
442
+ type units_SimpleInterestResult = SimpleInterestResult;
403
443
  type units_SubnetInfo = SubnetInfo;
404
444
  type units_TaxDirection = TaxDirection;
405
445
  type units_TaxResult = TaxResult;
446
+ type units_TipSplitResult = TipSplitResult;
406
447
  type units_ViewportConvertResult = ViewportConvertResult;
407
448
  declare const units_autoFormat: typeof autoFormat;
408
449
  declare const units_bumpVersion: typeof bumpVersion;
@@ -410,7 +451,9 @@ declare const units_calcAspectRatio: typeof calcAspectRatio;
410
451
  declare const units_calcSubnet: typeof calcSubnet;
411
452
  declare const units_calculateCompoundInterest: typeof calculateCompoundInterest;
412
453
  declare const units_calculateLoan: typeof calculateLoan;
454
+ declare const units_calculateSimpleInterest: typeof calculateSimpleInterest;
413
455
  declare const units_calculateTax: typeof calculateTax;
456
+ declare const units_calculateTipSplit: typeof calculateTipSplit;
414
457
  declare const units_compareSemver: typeof compareSemver;
415
458
  declare const units_convert: typeof convert;
416
459
  declare const units_convertBytes: typeof convertBytes;
@@ -461,7 +504,7 @@ declare const units_validateIban: typeof validateIban;
461
504
  declare const units_validateIsbn: typeof validateIsbn;
462
505
  declare const units_viewportToPx: typeof viewportToPx;
463
506
  declare namespace units {
464
- export { type units_AmortizationRow as AmortizationRow, type units_AspectRatioResult as AspectRatioResult, units_BASE_LABELS as BASE_LABELS, units_BASE_PREFIXES as BASE_PREFIXES, units_BYTE_UNITS as BYTE_UNITS, type units_BarcodeFormat as BarcodeFormat, type units_BarcodeValidationResult as BarcodeValidationResult, type units_BaseConvertResult as BaseConvertResult, type units_ByteConvertResult as ByteConvertResult, type units_ByteUnit as ByteUnit, units_COMMON_CURRENCIES as COMMON_CURRENCIES, units_COMMON_LOCALES as COMMON_LOCALES, units_COMMON_PERMISSIONS as COMMON_PERMISSIONS, units_COMMON_RATIOS as COMMON_RATIOS, units_COMMON_SIZES as COMMON_SIZES, units_COMMON_TAX_RATES as COMMON_TAX_RATES, units_COMMON_VIEWPORTS as COMMON_VIEWPORTS, type units_CardValidationResult as CardValidationResult, type units_CompoundInterestResult as CompoundInterestResult, type units_CompoundYearRow as CompoundYearRow, type units_Dimensions as Dimensions, type units_FilePermissions as FilePermissions, type units_FormatOptions as FormatOptions, type units_IbanValidationResult as IbanValidationResult, type units_IpConversion as IpConversion, type units_IsbnFormat as IsbnFormat, type units_IsbnResult as IsbnResult, type units_LoanResult as LoanResult, type units_NotationStyle as NotationStyle, type units_NumberBase as NumberBase, type units_Permission as Permission, type units_PxConvertResult as PxConvertResult, type units_SemverVersion as SemverVersion, type units_SubnetInfo as SubnetInfo, type units_TaxDirection as TaxDirection, type units_TaxResult as TaxResult, type units_ViewportConvertResult as ViewportConvertResult, units_autoFormat as autoFormat, units_bumpVersion as bumpVersion, units_calcAspectRatio as calcAspectRatio, units_calcSubnet as calcSubnet, units_calculateCompoundInterest as calculateCompoundInterest, units_calculateLoan as calculateLoan, units_calculateTax as calculateTax, units_compareSemver as compareSemver, units_convert as convert, units_convertBytes as convertBytes, units_convertIp as convertIp, units_coverBox as coverBox, units_decimalToIp as decimalToIp, units_decimalToIpCidr as decimalToIpCidr, units_describePermissions as describePermissions, units_fitIntoBox as fitIntoBox, units_formatNumber as formatNumber, units_formatValue as formatValue, units_formatVwValue as formatVwValue, units_formatWithSeparator as formatWithSeparator, units_gcd as gcd, units_ipFromBinary as ipFromBinary, units_ipFromDecimal as ipFromDecimal, units_ipFromHex as ipFromHex, units_ipToBinary as ipToBinary, units_ipToDecimal as ipToDecimal, units_ipToDecimalCidr as ipToDecimalCidr, units_ipToHex as ipToHex, units_ipToOctal as ipToOctal, units_isValid as isValid, units_isValidCidr as isValidCidr, units_isValidIp as isValidIp, units_isValidIpv4 as isValidIpv4, units_octalToPermissions as octalToPermissions, units_parseFileSize as parseFileSize, units_parseInput as parseInput, units_parseNumberString as parseNumberString, units_parseSemver as parseSemver, units_permissionsToChmod as permissionsToChmod, units_permissionsToOctal as permissionsToOctal, units_permissionsToSymbolic as permissionsToSymbolic, units_ptToPx as ptToPx, units_pxToAll as pxToAll, units_pxToViewport as pxToViewport, units_remToPx as remToPx, units_satisfiesRange as satisfiesRange, units_scaleByHeight as scaleByHeight, units_scaleByWidth as scaleByWidth, units_sortVersions as sortVersions, units_splitSubnet as splitSubnet, units_symbolicToPermissions as symbolicToPermissions, units_validateBarcode as validateBarcode, units_validateCardNumber as validateCardNumber, units_validateIban as validateIban, units_validateIsbn as validateIsbn, units_viewportToPx as viewportToPx };
507
+ export { type units_AmortizationRow as AmortizationRow, type units_AspectRatioResult as AspectRatioResult, units_BASE_LABELS as BASE_LABELS, units_BASE_PREFIXES as BASE_PREFIXES, units_BYTE_UNITS as BYTE_UNITS, type units_BarcodeFormat as BarcodeFormat, type units_BarcodeValidationResult as BarcodeValidationResult, type units_BaseConvertResult as BaseConvertResult, type units_ByteConvertResult as ByteConvertResult, type units_ByteUnit as ByteUnit, units_COMMON_CURRENCIES as COMMON_CURRENCIES, units_COMMON_LOCALES as COMMON_LOCALES, units_COMMON_PERMISSIONS as COMMON_PERMISSIONS, units_COMMON_RATIOS as COMMON_RATIOS, units_COMMON_SIZES as COMMON_SIZES, units_COMMON_TAX_RATES as COMMON_TAX_RATES, units_COMMON_TIP_PERCENTAGES as COMMON_TIP_PERCENTAGES, units_COMMON_VIEWPORTS as COMMON_VIEWPORTS, type units_CardValidationResult as CardValidationResult, type units_CompoundInterestResult as CompoundInterestResult, type units_CompoundYearRow as CompoundYearRow, type units_Dimensions as Dimensions, type units_FilePermissions as FilePermissions, type units_FormatOptions as FormatOptions, type units_IbanValidationResult as IbanValidationResult, type units_IpConversion as IpConversion, type units_IsbnFormat as IsbnFormat, type units_IsbnResult as IsbnResult, type units_LoanResult as LoanResult, type units_NotationStyle as NotationStyle, type units_NumberBase as NumberBase, type units_Permission as Permission, type units_PxConvertResult as PxConvertResult, type units_SemverVersion as SemverVersion, type units_SimpleInterestResult as SimpleInterestResult, type units_SubnetInfo as SubnetInfo, type units_TaxDirection as TaxDirection, type units_TaxResult as TaxResult, type units_TipSplitResult as TipSplitResult, type units_ViewportConvertResult as ViewportConvertResult, units_autoFormat as autoFormat, units_bumpVersion as bumpVersion, units_calcAspectRatio as calcAspectRatio, units_calcSubnet as calcSubnet, units_calculateCompoundInterest as calculateCompoundInterest, units_calculateLoan as calculateLoan, units_calculateSimpleInterest as calculateSimpleInterest, units_calculateTax as calculateTax, units_calculateTipSplit as calculateTipSplit, units_compareSemver as compareSemver, units_convert as convert, units_convertBytes as convertBytes, units_convertIp as convertIp, units_coverBox as coverBox, units_decimalToIp as decimalToIp, units_decimalToIpCidr as decimalToIpCidr, units_describePermissions as describePermissions, units_fitIntoBox as fitIntoBox, units_formatNumber as formatNumber, units_formatValue as formatValue, units_formatVwValue as formatVwValue, units_formatWithSeparator as formatWithSeparator, units_gcd as gcd, units_ipFromBinary as ipFromBinary, units_ipFromDecimal as ipFromDecimal, units_ipFromHex as ipFromHex, units_ipToBinary as ipToBinary, units_ipToDecimal as ipToDecimal, units_ipToDecimalCidr as ipToDecimalCidr, units_ipToHex as ipToHex, units_ipToOctal as ipToOctal, units_isValid as isValid, units_isValidCidr as isValidCidr, units_isValidIp as isValidIp, units_isValidIpv4 as isValidIpv4, units_octalToPermissions as octalToPermissions, units_parseFileSize as parseFileSize, units_parseInput as parseInput, units_parseNumberString as parseNumberString, units_parseSemver as parseSemver, units_permissionsToChmod as permissionsToChmod, units_permissionsToOctal as permissionsToOctal, units_permissionsToSymbolic as permissionsToSymbolic, units_ptToPx as ptToPx, units_pxToAll as pxToAll, units_pxToViewport as pxToViewport, units_remToPx as remToPx, units_satisfiesRange as satisfiesRange, units_scaleByHeight as scaleByHeight, units_scaleByWidth as scaleByWidth, units_sortVersions as sortVersions, units_splitSubnet as splitSubnet, units_symbolicToPermissions as symbolicToPermissions, units_validateBarcode as validateBarcode, units_validateCardNumber as validateCardNumber, units_validateIban as validateIban, units_validateIsbn as validateIsbn, units_viewportToPx as viewportToPx };
465
508
  }
466
509
 
467
- export { fitIntoBox as $, type AmortizationRow as A, BASE_LABELS as B, COMMON_CURRENCIES as C, type Dimensions as D, autoFormat as E, type FilePermissions as F, bumpVersion as G, calcAspectRatio as H, type IbanValidationResult as I, calcSubnet as J, calculateCompoundInterest as K, type LoanResult as L, calculateLoan as M, type NotationStyle as N, calculateTax as O, type Permission as P, compareSemver as Q, convert as R, type SemverVersion as S, type TaxDirection as T, convertBytes as U, type ViewportConvertResult as V, convertIp as W, coverBox as X, decimalToIp as Y, decimalToIpCidr as Z, describePermissions as _, type AspectRatioResult as a, formatNumber as a0, formatValue as a1, formatVwValue as a2, formatWithSeparator as a3, gcd as a4, ipFromBinary as a5, ipFromDecimal as a6, ipFromHex as a7, ipToBinary as a8, ipToDecimal as a9, validateCardNumber as aA, validateIban as aB, validateIsbn as aC, viewportToPx as aD, ipToDecimalCidr as aa, ipToHex as ab, ipToOctal as ac, isValid as ad, isValidCidr as ae, isValidIp as af, isValidIpv4 as ag, octalToPermissions as ah, parseFileSize as ai, parseInput as aj, parseNumberString as ak, parseSemver as al, permissionsToChmod as am, permissionsToOctal as an, permissionsToSymbolic as ao, ptToPx as ap, pxToAll as aq, pxToViewport as ar, remToPx as as, satisfiesRange as at, scaleByHeight as au, scaleByWidth as av, sortVersions as aw, splitSubnet as ax, symbolicToPermissions as ay, validateBarcode as az, BASE_PREFIXES as b, BYTE_UNITS as c, type BarcodeFormat as d, type BarcodeValidationResult as e, type BaseConvertResult as f, type ByteConvertResult as g, type ByteUnit as h, COMMON_LOCALES as i, COMMON_PERMISSIONS as j, COMMON_RATIOS as k, COMMON_SIZES as l, COMMON_TAX_RATES as m, COMMON_VIEWPORTS as n, type CardValidationResult as o, type CompoundInterestResult as p, type CompoundYearRow as q, type FormatOptions as r, type IpConversion as s, type IsbnFormat as t, units as u, type IsbnResult as v, type NumberBase as w, type PxConvertResult as x, type SubnetInfo as y, type TaxResult as z };
510
+ export { convertIp as $, type AmortizationRow as A, BASE_LABELS as B, COMMON_CURRENCIES as C, type Dimensions as D, type SubnetInfo as E, type FilePermissions as F, type TaxResult as G, type TipSplitResult as H, type IbanValidationResult as I, autoFormat as J, bumpVersion as K, type LoanResult as L, calcAspectRatio as M, type NotationStyle as N, calcSubnet as O, type Permission as P, calculateCompoundInterest as Q, calculateLoan as R, type SemverVersion as S, type TaxDirection as T, calculateSimpleInterest as U, type ViewportConvertResult as V, calculateTax as W, calculateTipSplit as X, compareSemver as Y, convert as Z, convertBytes as _, type AspectRatioResult as a, coverBox as a0, decimalToIp as a1, decimalToIpCidr as a2, describePermissions as a3, fitIntoBox as a4, formatNumber as a5, formatValue as a6, formatVwValue as a7, formatWithSeparator as a8, gcd as a9, scaleByWidth as aA, sortVersions as aB, splitSubnet as aC, symbolicToPermissions as aD, validateBarcode as aE, validateCardNumber as aF, validateIban as aG, validateIsbn as aH, viewportToPx as aI, ipFromBinary as aa, ipFromDecimal as ab, ipFromHex as ac, ipToBinary as ad, ipToDecimal as ae, ipToDecimalCidr as af, ipToHex as ag, ipToOctal as ah, isValid as ai, isValidCidr as aj, isValidIp as ak, isValidIpv4 as al, octalToPermissions as am, parseFileSize as an, parseInput as ao, parseNumberString as ap, parseSemver as aq, permissionsToChmod as ar, permissionsToOctal as as, permissionsToSymbolic as at, ptToPx as au, pxToAll as av, pxToViewport as aw, remToPx as ax, satisfiesRange as ay, scaleByHeight as az, BASE_PREFIXES as b, BYTE_UNITS as c, type BarcodeFormat as d, type BarcodeValidationResult as e, type BaseConvertResult as f, type ByteConvertResult as g, type ByteUnit as h, COMMON_LOCALES as i, COMMON_PERMISSIONS as j, COMMON_RATIOS as k, COMMON_SIZES as l, COMMON_TAX_RATES as m, COMMON_TIP_PERCENTAGES as n, COMMON_VIEWPORTS as o, type CardValidationResult as p, type CompoundInterestResult as q, type CompoundYearRow as r, type FormatOptions as s, type IpConversion as t, units as u, type IsbnFormat as v, type IsbnResult as w, type NumberBase as x, type PxConvertResult as y, type SimpleInterestResult as z };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@utilix-tech/sdk",
3
- "version": "0.14.0",
3
+ "version": "0.16.0",
4
4
  "description": "154+ developer utility tools for Node.js: JSON, encoding, hashing, color, CSS, network and more. Runs locally, no API key required.",
5
5
  "author": "Utilix <hello@utilix.tech>",
6
6
  "license": "MIT",