@sheetxl/formulas 0.7.26 → 0.7.28-beta.1

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.
Files changed (165) hide show
  1. package/README.md +136 -12
  2. package/browser/cjs/1XrWGMP3GmsQOMIX.cjs +1 -0
  3. package/browser/cjs/49_x589Na12sizKK.cjs +1 -0
  4. package/browser/cjs/4nReftSsKWmnRdtf.cjs +1 -0
  5. package/browser/cjs/507hQYooKKjnRzsZ.cjs +1 -0
  6. package/browser/cjs/BAxVLKkxFgI6cXnR.cjs +1 -0
  7. package/browser/cjs/BK0SCfN_VZYqBxoQ.cjs +1 -0
  8. package/browser/cjs/Btc0Nzu40VYOpzLX.cjs +1 -0
  9. package/browser/cjs/C9C-pr-T_ThweQX9.cjs +1 -0
  10. package/browser/cjs/CJYewYJ5Z3iojl7J.cjs +1 -0
  11. package/browser/cjs/CRx1WvmgBjT8WVyB.cjs +1 -0
  12. package/browser/cjs/CV4KQsHluMqo1I2Q.cjs +1 -0
  13. package/browser/cjs/CXlzsh_WHCOsErJ1.cjs +1 -0
  14. package/browser/cjs/CpJJh4UnFl1_qFui.cjs +1 -0
  15. package/browser/cjs/CrZlUtdX1h2RUnCP.cjs +1 -0
  16. package/browser/cjs/D8-KovdJ0LjxqCe2.cjs +1 -0
  17. package/browser/cjs/DCIlWcGDrp-5PDoA.cjs +1 -0
  18. package/browser/cjs/DDnGLOLTqLFsdUDS.cjs +1 -0
  19. package/browser/cjs/DG2kqsWRUtVugjay.cjs +1 -0
  20. package/browser/cjs/DM7-R_ltoLbA9jde.cjs +1 -0
  21. package/browser/cjs/DNKyaSruDogoBd2H.cjs +1 -0
  22. package/browser/cjs/Du4jBiFxRIF1OjD4.cjs +1 -0
  23. package/browser/cjs/EeOVMRq7TuptFKTc.cjs +1 -0
  24. package/browser/cjs/Kvn916ebqGc4t6hv.cjs +1 -0
  25. package/browser/cjs/aONv0Ys3C8xmnaR8.cjs +1 -0
  26. package/browser/cjs/index.cjs +1 -6
  27. package/browser/cjs/z_rZE1OHFPpdGBh4.cjs +1 -0
  28. package/browser/esm/B00UnPvEAkPkBES0.mjs +21 -0
  29. package/browser/esm/BMOy-29kM8QKSXAA.mjs +316 -0
  30. package/browser/esm/BTwaInIwOYixmjEI.mjs +23 -0
  31. package/browser/esm/BVcAlvEdsM6nrdMi.mjs +24 -0
  32. package/browser/esm/BbAe5bgfHEREMZHH.mjs +96 -0
  33. package/browser/esm/BbxTHuwQRw9Q2Yk4.mjs +382 -0
  34. package/browser/esm/BdWPkyDEfOSORikD.mjs +28 -0
  35. package/browser/esm/CDHIW0fz5goCgqWd.mjs +123 -0
  36. package/browser/esm/CHIg7-M9TGMfmdss.mjs +105 -0
  37. package/browser/esm/CT2Mx78hoGrtXGGc.mjs +37 -0
  38. package/browser/esm/CzY0HOXVgv9HM917.mjs +13 -0
  39. package/browser/esm/D--3bRsKlG0pbw1W.mjs +111 -0
  40. package/browser/esm/D85giwE9k8tjVhRt.mjs +319 -0
  41. package/browser/esm/DCo9qXQklIlMDf1F.mjs +12 -0
  42. package/browser/esm/DXCZWZ7sM3_YT_1j.mjs +146 -0
  43. package/browser/esm/D_-1XUpmS6dtfCBh.mjs +119 -0
  44. package/browser/esm/Dft0O81rt55l5ZPx.mjs +22 -0
  45. package/browser/esm/Dpe3qlV_AVenWc7u.mjs +14 -0
  46. package/browser/esm/FN6OQFCYtpPy-ZGy.mjs +17 -0
  47. package/browser/esm/FNQCkMr4-0zUGiVT.mjs +860 -0
  48. package/browser/esm/YndGL8daSV3kCBM7.mjs +138 -0
  49. package/browser/esm/index.mjs +13173 -13
  50. package/browser/esm/lm5NLBN11iNAiJh_.mjs +28 -0
  51. package/browser/esm/oPZX92aKdMLlSZpq.mjs +15 -0
  52. package/browser/esm/tq8bbbAwRbbuTwtH.mjs +173 -0
  53. package/browser/esm/zTYqn0nYRbk30lHy.mjs +144 -0
  54. package/licenses/dependencies.txt +92 -1
  55. package/node/esm/B00UnPvEAkPkBES0.mjs +21 -0
  56. package/node/esm/B1fcULoMBcva83xT.mjs +14 -0
  57. package/node/esm/BMOy-29kM8QKSXAA.mjs +316 -0
  58. package/node/esm/BTwaInIwOYixmjEI.mjs +23 -0
  59. package/node/esm/BVcAlvEdsM6nrdMi.mjs +24 -0
  60. package/node/esm/BX7yXzCInSe9fUVy.mjs +28 -0
  61. package/node/esm/BbAe5bgfHEREMZHH.mjs +96 -0
  62. package/node/esm/BbxTHuwQRw9Q2Yk4.mjs +382 -0
  63. package/node/esm/BdWPkyDEfOSORikD.mjs +28 -0
  64. package/node/esm/BhgO3MAcneYe97dY.mjs +13 -0
  65. package/node/esm/CDHIW0fz5goCgqWd.mjs +123 -0
  66. package/node/esm/CHIg7-M9TGMfmdss.mjs +105 -0
  67. package/node/esm/CT2Mx78hoGrtXGGc.mjs +37 -0
  68. package/node/esm/D--3bRsKlG0pbw1W.mjs +111 -0
  69. package/node/esm/D8J2HQnvcmSMPRoj.mjs +319 -0
  70. package/node/esm/DCo9qXQklIlMDf1F.mjs +12 -0
  71. package/node/esm/DXCZWZ7sM3_YT_1j.mjs +146 -0
  72. package/node/esm/DXEtJwyiQ0VV4Hhd.mjs +15 -0
  73. package/node/esm/D_-1XUpmS6dtfCBh.mjs +119 -0
  74. package/node/esm/Dft0O81rt55l5ZPx.mjs +22 -0
  75. package/node/esm/FN6OQFCYtpPy-ZGy.mjs +17 -0
  76. package/node/esm/FNQCkMr4-0zUGiVT.mjs +860 -0
  77. package/node/esm/YndGL8daSV3kCBM7.mjs +138 -0
  78. package/node/esm/index.mjs +11091 -13
  79. package/node/esm/tq8bbbAwRbbuTwtH.mjs +173 -0
  80. package/node/esm/zTYqn0nYRbk30lHy.mjs +144 -0
  81. package/package.json +4 -3
  82. package/resources/contents.json +14 -0
  83. package/resources/locales/contents.json +9 -0
  84. package/resources/locales/de/functions.json +298 -0
  85. package/types/index.d.ts +4 -17
  86. package/types/src/.generated/decl/database/Database.decl.d.ts +4 -0
  87. package/types/src/.generated/decl/dateTime/Date.decl.d.ts +4 -0
  88. package/types/src/.generated/decl/engineering/Bessel.decl.d.ts +4 -0
  89. package/types/src/.generated/decl/engineering/Bitwise.decl.d.ts +4 -0
  90. package/types/src/.generated/decl/engineering/Convert.decl.d.ts +4 -0
  91. package/types/src/.generated/decl/engineering/Engineering.decl.d.ts +4 -0
  92. package/types/src/.generated/decl/engineering/Error.decl.d.ts +4 -0
  93. package/types/src/.generated/decl/engineering/Imaginary.decl.d.ts +4 -0
  94. package/types/src/.generated/decl/information/Information.decl.d.ts +4 -0
  95. package/types/src/.generated/decl/japanese/Date.decl.d.ts +4 -0
  96. package/types/src/.generated/decl/japanese/Text.decl.d.ts +4 -0
  97. package/types/src/.generated/decl/logical/Logical.decl.d.ts +4 -0
  98. package/types/src/.generated/decl/lookupReference/GroupBy.decl.d.ts +4 -0
  99. package/types/src/.generated/decl/lookupReference/PivotBy.decl.d.ts +4 -0
  100. package/types/src/.generated/decl/lookupReference/Reference.decl.d.ts +4 -0
  101. package/types/src/.generated/decl/mathTrig/Math.decl.d.ts +4 -0
  102. package/types/src/.generated/decl/mathTrig/Trig.decl.d.ts +4 -0
  103. package/types/src/.generated/decl/operators/Operators.decl.d.ts +4 -0
  104. package/types/src/.generated/decl/statistical/Distribution.decl.d.ts +4 -0
  105. package/types/src/.generated/decl/statistical/Statistical.decl.d.ts +4 -0
  106. package/types/src/.generated/decl/testing/Testing.decl.d.ts +4 -0
  107. package/types/src/.generated/decl/text/Text.decl.d.ts +4 -0
  108. package/types/src/.generated/decl/thai/Text.decl.d.ts +4 -0
  109. package/types/src/.generated/decl/web/FilterXML.decl.d.ts +4 -0
  110. package/types/src/.generated/decl/web/Web.decl.d.ts +4 -0
  111. package/types/src/.generated/desc/database/Database.desc.d.ts +4 -0
  112. package/types/src/.generated/desc/dateTime/Date.desc.d.ts +4 -0
  113. package/types/src/.generated/desc/engineering/Bessel.desc.d.ts +4 -0
  114. package/types/src/.generated/desc/engineering/Bitwise.desc.d.ts +4 -0
  115. package/types/src/.generated/desc/engineering/Convert.desc.d.ts +4 -0
  116. package/types/src/.generated/desc/engineering/Engineering.desc.d.ts +4 -0
  117. package/types/src/.generated/desc/engineering/Error.desc.d.ts +4 -0
  118. package/types/src/.generated/desc/engineering/Imaginary.desc.d.ts +4 -0
  119. package/types/src/.generated/desc/information/Information.desc.d.ts +4 -0
  120. package/types/src/.generated/desc/japanese/Date.desc.d.ts +4 -0
  121. package/types/src/.generated/desc/japanese/Text.desc.d.ts +4 -0
  122. package/types/src/.generated/desc/logical/Logical.desc.d.ts +4 -0
  123. package/types/src/.generated/desc/lookupReference/GroupBy.desc.d.ts +4 -0
  124. package/types/src/.generated/desc/lookupReference/PivotBy.desc.d.ts +4 -0
  125. package/types/src/.generated/desc/lookupReference/Reference.desc.d.ts +4 -0
  126. package/types/src/.generated/desc/mathTrig/Math.desc.d.ts +4 -0
  127. package/types/src/.generated/desc/mathTrig/Trig.desc.d.ts +4 -0
  128. package/types/src/.generated/desc/operators/Operators.desc.d.ts +4 -0
  129. package/types/src/.generated/desc/statistical/Distribution.desc.d.ts +4 -0
  130. package/types/src/.generated/desc/statistical/Statistical.desc.d.ts +4 -0
  131. package/types/src/.generated/desc/testing/Testing.desc.d.ts +4 -0
  132. package/types/src/.generated/desc/text/Text.desc.d.ts +4 -0
  133. package/types/src/.generated/desc/thai/Text.desc.d.ts +4 -0
  134. package/types/src/.generated/desc/web/FilterXML.desc.d.ts +4 -0
  135. package/types/src/.generated/desc/web/Web.desc.d.ts +4 -0
  136. package/types/src/.generated/index.d.ts +7 -0
  137. package/types/src/_utils/AggregateIFS.d.ts +39 -0
  138. package/types/src/_utils/Consts.d.ts +14 -0
  139. package/types/src/_utils/Errors.d.ts +33 -0
  140. package/types/src/_utils/ReduceIf.d.ts +26 -0
  141. package/types/src/database/Database.d.ts +86 -0
  142. package/types/src/dateTime/Date.d.ts +139 -0
  143. package/types/src/engineering/Bessel.d.ts +26 -0
  144. package/types/src/engineering/Bitwise.d.ts +101 -0
  145. package/types/src/engineering/Convert.d.ts +9 -0
  146. package/types/src/engineering/Engineering.d.ts +14 -0
  147. package/types/src/engineering/Error.d.ts +25 -0
  148. package/types/src/engineering/Imaginary.d.ts +155 -0
  149. package/types/src/information/Information.d.ts +166 -0
  150. package/types/src/japanese/Date.d.ts +15 -0
  151. package/types/src/japanese/Text.d.ts +8 -0
  152. package/types/src/logical/Logical.d.ts +133 -0
  153. package/types/src/lookupReference/GroupBy.d.ts +19 -0
  154. package/types/src/lookupReference/PivotBy.d.ts +24 -0
  155. package/types/src/lookupReference/Reference.d.ts +296 -0
  156. package/types/src/mathTrig/Math.d.ts +430 -0
  157. package/types/src/mathTrig/Trig.d.ts +107 -0
  158. package/types/src/operators/Operators.d.ts +107 -0
  159. package/types/src/statistical/Distribution.d.ts +858 -0
  160. package/types/src/statistical/Statistical.d.ts +165 -0
  161. package/types/src/testing/Testing.d.ts +28 -0
  162. package/types/src/text/Text.d.ts +312 -0
  163. package/types/src/thai/Text.d.ts +8 -0
  164. package/types/src/web/FilterXML.d.ts +8 -0
  165. package/types/src/web/Web.d.ts +11 -0
@@ -0,0 +1,139 @@
1
+ import { AcceptError, Scalar, Flatten, Omittable } from '@sheetxl/primitives';
2
+ /**
3
+ * @summary Returns the number that represents the date in date-time code.
4
+ * @param year is a number from 1900 or 1904 (depending on the workbook's date system) to 9999.
5
+ * @param month is a number from 1 to 12 representing the month of the year.
6
+ * @param day is a number from 1 to 31 representing the day of the month.
7
+ */
8
+ export declare function DATE(year: number, month: number, day: number): number;
9
+ /**
10
+ * @summary Converts a date in the form of text to a number that represents the date as a date-time code.
11
+ * @param dateText is text that represents a date in date format, between 1/1/1900 or 1/1/1904 (depending on the workbook's date system) and 12/31/9999.
12
+ */
13
+ export declare function DATEVALUE(dateText: string): number;
14
+ /**
15
+ * @summary Returns the day of the month, a number from 1 to 31.
16
+ * @param serialNumber is a number in the date-time code or text in time format, such as 16:48:00 or 4:48:00 PM.
17
+ */
18
+ export declare function DAY(serialNumber: number): number;
19
+ /**
20
+ * @summary Returns the number of days between the two dates.
21
+ * @param endDate startDate and endDate are the two dates between which you want to know the number of days.
22
+ * @param startDate startDate and endDate are the two dates between which you want to know the number of days.
23
+ */
24
+ export declare function DAYS(endDate: number, // date
25
+ startDate: number): number;
26
+ /**
27
+ * @summary Returns the serial number of the date that is the indicated number of months before or after the start date.
28
+ * @param startDate is a serial date number that represents the start date.
29
+ * @param months is the number of months before or after startDate.
30
+ */
31
+ export declare function EDATE(startDate: Scalar, months: Scalar): number;
32
+ /**
33
+ * @summary Returns the serial number of the last day of the month before or after a specified number of months.
34
+ * @param startDate is a serial date number that represents the start date.
35
+ * @param months is the number of months before or after the startDate.
36
+ */
37
+ export declare function EOMONTH(startDate: Scalar, months: Scalar): number;
38
+ /**
39
+ * @summary Returns the hour as a number from 0 (12:00 A.M.) to 23 (11:00 P.M.).
40
+ * @param serialNumber is a number in the date-time code or text in time format, such as 16:48:00 or 4:48:00 PM.
41
+ */
42
+ export declare function HOUR(serialNumber: number): number;
43
+ /**
44
+ * @summary Returns the ISO week number in the year for a given date.
45
+ * @param date is a number in the date-time code or text in time format, such as 16:48:00 or 4:48:00 PM.
46
+ */
47
+ export declare function ISOWEEKNUM(date: number): number;
48
+ /**
49
+ * @summary Returns the minute, a number from 0 to 59.
50
+ * @param serialNumber is a number in the date-time code or text in time format, such as 16:48:00 or 4:48:00 PM.
51
+ */
52
+ export declare function MINUTE(serialNumber: number): number;
53
+ /**
54
+ * @summary Returns the month, a number from 1 (January) to 12 (December).
55
+ * @param serialNumber is a number in the date-time code or text in date format.
56
+ */
57
+ export declare function MONTH(serialNumber: number): number;
58
+ /**
59
+ * @summary Returns the number of whole workdays between two dates.
60
+ * @param startDate is a serial date number that represents the start date.
61
+ * @param endDate is a serial date number that represents the end date.
62
+ * @param holidays is an optional set of one or more serial date numbers to exclude from the working calendar, such as state and federal holidays and floating holidays.
63
+ */
64
+ export declare function NETWORKDAYS(startDate: number, // date
65
+ endDate: number, // date
66
+ holidays?: Omittable<Flatten<Scalar>>): number;
67
+ /**
68
+ * @name NETWORKDAYS.INTL
69
+ * @summary Returns the number of whole workdays between two dates with custom weekend parameters.
70
+ * @param startDate is a serial date number that represents the start date.
71
+ * @param endDate is a serial date number that represents the end date.
72
+ * @param weekend is a number or string specifying when weekends occur.
73
+ * @param holidays is an optional set of one or more serial date numbers to exclude from the working calendar, such as state and federal holidays and floating holidays.
74
+ */
75
+ export declare function NETWORKDAYS_INTL(startDate: number, // date
76
+ endDate: number, // date
77
+ weekend?: Omittable<AcceptError<Scalar>>, holidays?: Omittable<Flatten<Scalar>>): number;
78
+ /**
79
+ * @summary Returns the current date and time formatted as a date and time.
80
+ */
81
+ export declare function NOW(): number;
82
+ /**
83
+ * @summary Returns the second, a number from 0 to 59.
84
+ * @param serialNumber is a number in the date-time code or text in time format, such as 16:48:23 or 4:48:47 PM.
85
+ */
86
+ export declare function SECOND(serialNumber: number): number;
87
+ /**
88
+ * @summary Converts hours, minutes, and seconds given as numbers to a date code, formatted with a time format.
89
+ * @param hour is a number from 0 to 23 representing the hour.
90
+ * @param minute is a number from 0 to 59 representing the minute.
91
+ * @param second is a number from 0 to 59 representing the second.
92
+ */
93
+ export declare function TIME(hour: number, minute: number, second: number): number;
94
+ /**
95
+ * @summary Converts a text time to a date code for a time, a number from 0 (12:00:00 AM) to 0.999988426 (11:59:59 PM). Format the number with a time format after entering the formula.
96
+ * @param timeText is a text string that gives a time in any one of the time formats (date information in the string is ignored).
97
+ */
98
+ export declare function TIMEVALUE(timeText: string): number;
99
+ /**
100
+ * @summary Returns the current date formatted as a date.
101
+ */
102
+ export declare function TODAY(): number;
103
+ /**
104
+ * @summary Returns a number from 1 to 7 identifying the day of the week of a date.
105
+ * @param serialNumber is a number that represents a date.
106
+ * @param returnType is a number: for Sunday=1 through Saturday=7, use 1; for Monday=1 through Sunday=7, use 2; for Monday=0 through Sunday=6, use 3.
107
+ */
108
+ export declare function WEEKDAY(serialNumber: number, // date
109
+ returnType?: number): number;
110
+ /**
111
+ * @summary Returns the week number in the year.
112
+ * @param serialNumber is the date-time code used for date and time calculation.
113
+ * @param returnType is a number (1 or 2) that determines the type of the return value.
114
+ */
115
+ export declare function WEEKNUM(serialNumber: Omittable<Scalar>, returnType?: Omittable<Scalar>): number;
116
+ /**
117
+ * @summary Returns the serial number of the date before or after a specified number of workdays.
118
+ * @param startDate is a serial date number that represents the start date.
119
+ * @param days is the number of nonweekend and non-holiday days before or after startDate.
120
+ * @param holidays is an optional array of one or more serial date numbers to exclude from the working calendar, such as state and federal holidays and floating holidays.
121
+ */
122
+ export declare function WORKDAY(startDate: number, // date
123
+ days: number, holidays?: Omittable<Flatten<Scalar>>): number;
124
+ /**
125
+ * @name WORKDAY.INTL
126
+ * @summary Returns the serial number of the date before or after a specified number of workdays with custom weekend parameters.
127
+ * @param startDate is a serial date number that represents the start date.
128
+ * @param days is the number of nonweekend and non-holiday days before or after startDate.
129
+ * @param weekend is a number or string specifying when weekends occur.
130
+ * @param holidays is an optional array of one or more serial date numbers to exclude from the working calendar, such as state and federal holidays and floating holidays.
131
+ */
132
+ export declare function WORKDAY_INTL(startDate: number, // date
133
+ days: number, weekend?: Omittable<AcceptError<Scalar>>, holidays?: Omittable<Flatten<Scalar>>): number;
134
+ /**
135
+ * @summary Returns the year of a date, an integer in the range 1900 - 9999.
136
+ * @param serialNumber is a number in the date-time code used for date and time calculation.
137
+ */
138
+ export declare function YEAR(serialNumber: number): number;
139
+ //# sourceMappingURL=Date.d.ts.map
@@ -0,0 +1,26 @@
1
+ import { Scalar } from '@sheetxl/primitives';
2
+ /**
3
+ * @summary Returns the modified Bessel function In(x).
4
+ * @param x is the value at which to evaluate the function.
5
+ * @param n is the order of the Bessel function.
6
+ */
7
+ export declare function BESSELI(x: Scalar, n: Scalar): number;
8
+ /**
9
+ * @summary Returns the Bessel function Jn(x).
10
+ * @param x is the value at which to evaluate the function.
11
+ * @param n is the order of the Bessel function.
12
+ */
13
+ export declare function BESSELJ(x: Scalar, n: Scalar): number;
14
+ /**
15
+ * @summary Returns the modified Bessel function Kn(x).
16
+ * @param x is the value at which to evaluate the function.
17
+ * @param n is the order of the function.
18
+ */
19
+ export declare function BESSELK(x: Scalar, n: Scalar): number;
20
+ /**
21
+ * @summary Returns the Bessel function Yn(x).
22
+ * @param x is the value at which to evaluate the function.
23
+ * @param n is the order of the function.
24
+ */
25
+ export declare function BESSELY(x: Scalar, n: Scalar): number;
26
+ //# sourceMappingURL=Bessel.d.ts.map
@@ -0,0 +1,101 @@
1
+ import { AcceptError, Scalar } from '@sheetxl/primitives';
2
+ /**
3
+ * @summary Converts a binary number to decimal.
4
+ * @param number is the binary number you want to convert.
5
+ */
6
+ export declare function BIN2DEC(number: Scalar): number;
7
+ /**
8
+ * @summary Converts a binary number to hexadecimal.
9
+ * @param number is the binary number you want to convert.
10
+ * @param places is the number of characters to use.
11
+ */
12
+ export declare function BIN2HEX(number: AcceptError<Scalar>, places?: AcceptError<Scalar>): string;
13
+ /**
14
+ * @summary Converts a binary number to octal.
15
+ * @param number is the binary number you want to convert.
16
+ * @param places is the number of characters to use.
17
+ */
18
+ export declare function BIN2OCT(number: AcceptError<Scalar>, places?: AcceptError<Scalar>): string;
19
+ /**
20
+ * @summary Returns a bitwise 'And' of two numbers.
21
+ * @param number1 is the decimal representation of the binary number you want to evaluate.
22
+ * @param number2 is the decimal representation of the binary number you want to evaluate.
23
+ */
24
+ export declare function BITAND(number1: Scalar, number2: Scalar): number;
25
+ /**
26
+ * @summary Returns a number shifted left by shiftAmount bits.
27
+ * @param number is the decimal representation of the binary number you want to evaluate.
28
+ * @param shiftAmount is the number of bits that you want to shift Number left by.
29
+ */
30
+ export declare function BITLSHIFT(number: Scalar, shiftAmount: Scalar): number;
31
+ /**
32
+ * @summary Returns a bitwise 'Or' of two numbers.
33
+ * @param number1 is the decimal representation of the binary number you want to evaluate.
34
+ * @param number2 is the decimal representation of the binary number you want to evaluate.
35
+ */
36
+ export declare function BITOR(number1: Scalar, number2: Scalar): number;
37
+ /**
38
+ * @summary Returns a number shifted right by shiftAmount bits.
39
+ * @param number is the decimal representation of the binary number you want to evaluate.
40
+ * @param shiftAmount is the number of bits that you want to shift Number left by.
41
+ */
42
+ export declare function BITRSHIFT(number: Scalar, shiftAmount: Scalar): number;
43
+ /**
44
+ * @summary Returns a bitwise 'Exclusive Or' of two numbers.
45
+ * @param number1 is the decimal representation of the binary number you want to evaluate.
46
+ * @param number2 is the decimal representation of the binary number you want to evaluate.
47
+ */
48
+ export declare function BITXOR(number1: Scalar, number2: Scalar): number;
49
+ /**
50
+ * @summary Converts a decimal number to binary.
51
+ * @param number is the decimal integer you want to convert.
52
+ * @param places is the number of characters to use.
53
+ */
54
+ export declare function DEC2BIN(number: AcceptError<Scalar>, places?: AcceptError<Scalar>): string;
55
+ /**
56
+ * @summary Converts a decimal number to hexadecimal.
57
+ * @param number is the decimal integer you want to convert.
58
+ * @param places is the number of characters to use.
59
+ */
60
+ export declare function DEC2HEX(number: AcceptError<Scalar>, places?: AcceptError<Scalar>): string;
61
+ /**
62
+ * @summary Converts a decimal number to octal.
63
+ * @param number is the decimal integer you want to convert.
64
+ * @param places is the number of characters to use.
65
+ */
66
+ export declare function DEC2OCT(number: AcceptError<Scalar>, places?: AcceptError<Scalar>): string;
67
+ /**
68
+ * @summary Converts a Hexadecimal number to binary.
69
+ * @param number is the hexadecimal number you want to convert.
70
+ * @param places is the number of characters to use.
71
+ */
72
+ export declare function HEX2BIN(number: AcceptError<string>, places?: AcceptError<Scalar>): string | number;
73
+ /**
74
+ * @summary Converts a hexadecimal number to decimal.
75
+ * @param number is the hexadecimal number you want to convert.
76
+ */
77
+ export declare function HEX2DEC(number: string): number;
78
+ /**
79
+ * @summary Converts a hexadecimal number to octal.
80
+ * @param number is the hexadecimal number you want to convert.
81
+ * @param places is the number of characters to use.
82
+ */
83
+ export declare function HEX2OCT(number: AcceptError<string>, places?: AcceptError<Scalar>): string;
84
+ /**
85
+ * @summary Converts an octal number to binary.
86
+ * @param number is the octal number you want to convert.
87
+ * @param places is the number of characters to use.
88
+ */
89
+ export declare function OCT2BIN(number: AcceptError<string>, places?: AcceptError<Scalar>): string;
90
+ /**
91
+ * @summary Converts an octal number to decimal.
92
+ * @param number is the octal number you want to convert.
93
+ */
94
+ export declare function OCT2DEC(number: string): number;
95
+ /**
96
+ * @summary Converts an octal number to hexadecimal.
97
+ * @param number is the octal number you want to convert.
98
+ * @param places is the number of characters to use.
99
+ */
100
+ export declare function OCT2HEX(number: AcceptError<string>, places?: AcceptError<Scalar>): string | number;
101
+ //# sourceMappingURL=Bitwise.d.ts.map
@@ -0,0 +1,9 @@
1
+ import { Scalar } from '@sheetxl/primitives';
2
+ /**
3
+ * @summary Converts a number from one measurement system to another.
4
+ * @param number is the value in fromUnit to convert.
5
+ * @param fromUnit is the units for number.
6
+ * @param toUnit is the units for the result.
7
+ */
8
+ export declare function CONVERT(number: Scalar, fromUnit: string, toUnit: string): number;
9
+ //# sourceMappingURL=Convert.d.ts.map
@@ -0,0 +1,14 @@
1
+ import { AcceptError, Scalar } from '@sheetxl/primitives';
2
+ /**
3
+ * @summary Tests whether two numbers are equal.
4
+ * @param number1 is the first number.
5
+ * @param number2 is the second number.
6
+ */
7
+ export declare function DELTA(number1: AcceptError<Scalar>, number2?: AcceptError<Scalar>): number;
8
+ /**
9
+ * @summary Tests whether a number is greater than a threshold value.
10
+ * @param number is the value to test against step.
11
+ * @param step is the threshold value.
12
+ */
13
+ export declare function GESTEP(number: AcceptError<Scalar>, step?: AcceptError<Scalar>): number;
14
+ //# sourceMappingURL=Engineering.d.ts.map
@@ -0,0 +1,25 @@
1
+ import { Scalar } from '@sheetxl/primitives';
2
+ /**
3
+ * @summary Returns the error function.
4
+ * @param lowerLimit is the lower bound for integrating ERF.
5
+ * @param upperLimit is the upper bound for integrating ERF.
6
+ */
7
+ export declare function ERF(lowerLimit: Scalar, upperLimit?: Scalar): number;
8
+ /**
9
+ * @name ERF.PRECISE
10
+ * @summary Returns the error function.
11
+ * @param x is the lower bound for integrating ERF.PRECISE.
12
+ */
13
+ export declare function ERF_PRECISE(x: Scalar): number;
14
+ /**
15
+ * @summary Returns the complementary error function.
16
+ * @param x is the lower bound for integrating ERF.
17
+ */
18
+ export declare function ERFC(x: Scalar): number;
19
+ /**
20
+ * @name ERFC.PRECISE
21
+ * @summary Returns the complementary error function.
22
+ * @param x is the lower bound for integrating ERF.
23
+ */
24
+ export declare function ERFC_PRECISE(x: Scalar): number;
25
+ //# sourceMappingURL=Error.d.ts.map
@@ -0,0 +1,155 @@
1
+ import { AcceptError, Scalar } from '@sheetxl/primitives';
2
+ /**
3
+ * @summary Converts real and imaginary coefficients into a complex number.
4
+ * @param realNum is the real coefficient of the complex number.
5
+ * @param iNum is the imaginary coefficient of the complex number.
6
+ * @param suffix is the suffix for the imaginary component of the complex number.
7
+ */
8
+ export declare function COMPLEX(realNum: AcceptError<Scalar>, iNum: AcceptError<Scalar>, suffix?: AcceptError<string>): Scalar;
9
+ /**
10
+ * @summary Returns the absolute value (modulus) of a complex number
11
+ * @param inumber is a complex number for which you want the absolute value
12
+ */
13
+ export declare function IMABS(inumber: Scalar): number;
14
+ /**
15
+ * @summary Returns the imaginary coefficient of a complex number
16
+ * @param inumber is a complex number for which you want the imaginary coefficient
17
+ */
18
+ export declare function IMAGINARY(inumber: Scalar): number;
19
+ /**
20
+ * @summary Returns the argument q, an angle expressed in radians
21
+ * @param inumber is a complex number for which you want the argument
22
+ */
23
+ export declare function IMARGUMENT(inumber: Scalar): number;
24
+ /**
25
+ * @summary Returns the complex conjugate of a complex number
26
+ * @param inumber is a complex number for which you want the conjugate
27
+ */
28
+ export declare function IMCONJUGATE(inumber: Scalar): Scalar;
29
+ /**
30
+ * @summary Returns the cosine of a complex number
31
+ * @param inumber is a complex number for which you want the cosine
32
+ */
33
+ export declare function IMCOS(inumber: Scalar): Scalar;
34
+ /**
35
+ * @summary Returns the hyperbolic cosine of a complex number
36
+ * @param inumber is a complex number for which you want the hyperbolic cosine
37
+ */
38
+ export declare function IMCOSH(inumber: Scalar): Scalar;
39
+ /**
40
+ * @summary Returns the cotangent of a complex number
41
+ * @param inumber is a complex number for which you want the cotangent
42
+ */
43
+ export declare function IMCOT(inumber: Scalar): Scalar;
44
+ /**
45
+ * @summary Returns the hyperbolic cotangent of a complex number.
46
+ * @param inumber is a complex number for which you want the hyperbolic cotangent.
47
+ * @category Sheets
48
+ */
49
+ export declare function IMCOTH(inumber: Scalar): Scalar;
50
+ /**
51
+ * @summary Returns the cosecant of a complex number
52
+ * @param inumber is a complex number for which you want the cosecant
53
+ */
54
+ export declare function IMCSC(inumber: Scalar): Scalar;
55
+ /**
56
+ * @summary Returns the hyperbolic cosecant of a complex number
57
+ * @param inumber is a complex number for which you want the hyperbolic cosecant
58
+ */
59
+ export declare function IMCSCH(inumber: Scalar): Scalar;
60
+ /**
61
+ * @summary Returns the quotient of two complex numbers
62
+ * @param inumber1 is the complex numerator or dividend
63
+ * @param inumber2 is the complex denominator or divisor
64
+ */
65
+ export declare function IMDIV(inumber1: Scalar, inumber2: Scalar): Scalar;
66
+ /**
67
+ * @summary Returns the exponential of a complex number
68
+ * @param inumber is a complex number for which you want the exponential
69
+ */
70
+ export declare function IMEXP(inumber: Scalar): Scalar;
71
+ /**
72
+ * @summary Returns the exponential of a complex number
73
+ * @param inumber is a complex number for which you want the exponential
74
+ */
75
+ export declare function IMLN(inumber: Scalar): Scalar;
76
+ /**
77
+ * @summary Returns the logarithm of a complex number to a specified base.
78
+ * @param inumber is a complex number for which you want the logarithm.
79
+ * @param base is the base of the logarithm. Default is 10.
80
+ * @category Sheets
81
+ */
82
+ export declare function IMLOG(inumber: Scalar, base?: number): Scalar;
83
+ /**
84
+ * @summary Returns the base-10 logarithm of a complex number
85
+ * @param inumber is a complex number for which you want the common logarithm
86
+ */
87
+ export declare function IMLOG10(inumber: Scalar): Scalar;
88
+ /**
89
+ * @summary Returns the base-2 logarithm of a complex number
90
+ * @param inumber is a complex number for which you want the base-2 logarithm
91
+ */
92
+ export declare function IMLOG2(inumber: Scalar): Scalar;
93
+ /**
94
+ * @summary Returns the base-2 logarithm of a complex number
95
+ * @param inumber is a complex number for which you want the base-2 logarithm
96
+ */
97
+ export declare function IMPOWER(inumber: Scalar, number: Scalar): Scalar;
98
+ /**
99
+ * @summary Returns the product of 1 to 255 complex numbers
100
+ * @param inumber are from 1 to 255 complex numbers to multiply.
101
+ */
102
+ export declare function IMPRODUCT(inumber: Scalar[]): Scalar;
103
+ /**
104
+ * @summary Returns the real coefficient of a complex number
105
+ * @param inumber is a complex number for which you want the real coefficient
106
+ */
107
+ export declare function IMREAL(inumber: Scalar): number;
108
+ /**
109
+ * @summary Returns the secant of a complex number
110
+ * @param inumber is a complex number for which you want the secant
111
+ */
112
+ export declare function IMSEC(inumber: Scalar): Scalar;
113
+ /**
114
+ * @summary Returns the hyperbolic secant of a complex number
115
+ * @param inumber is a complex number for which you want the hyperbolic secant
116
+ */
117
+ export declare function IMSECH(inumber: Scalar): Scalar;
118
+ /**
119
+ * @summary Returns the sine of a complex number
120
+ * @param inumber is a complex number for which you want the sine
121
+ */
122
+ export declare function IMSIN(inumber: Scalar): Scalar;
123
+ /**
124
+ * @summary Returns the hyperbolic sine of a complex number
125
+ * @param inumber is a complex number for which you want the hyperbolic sine
126
+ */
127
+ export declare function IMSINH(inumber: Scalar): Scalar;
128
+ /**
129
+ * @summary Returns the square root of a complex number
130
+ * @param inumber is a complex number for which you want the square root
131
+ */
132
+ export declare function IMSQRT(inumber: Scalar): Scalar;
133
+ /**
134
+ * @summary Returns the difference of two complex numbers
135
+ * @param inumber1 is the complex number from which to subtract inumber2
136
+ * @param inumber2 is the complex number to subtract from inumber1
137
+ */
138
+ export declare function IMSUB(inumber1: Scalar, inumber2: Scalar): Scalar;
139
+ /**
140
+ * @summary Returns the sum of complex numbers
141
+ * @param inumber are from 1 to 255 complex numbers to add
142
+ */
143
+ export declare function IMSUM(inumber: Scalar[]): Scalar;
144
+ /**
145
+ * @summary Returns the tangent of a complex number
146
+ * @param inumber is a complex number for which you want the tangent
147
+ */
148
+ export declare function IMTAN(inumber: Scalar): Scalar;
149
+ /**
150
+ * @summary Returns the hyperbolic tangent of a complex number.
151
+ * @param inumber is a complex number for which you want the hyperbolic tangent.
152
+ * @category Sheets
153
+ */
154
+ export declare function IMTANH(inumber: Scalar): Scalar;
155
+ //# sourceMappingURL=Imaginary.d.ts.map
@@ -0,0 +1,166 @@
1
+ import { FormulaError, AcceptError, AcceptRefError, Scalar, IReferenceRange, IRange, Flatten } from '@sheetxl/primitives';
2
+ /**
3
+ * @summary Returns information about the cell.
4
+ * @param {'address' | 'col' | 'contents' | 'row' | 'type'} infoType The type of information to return.
5
+ * @param infoType
6
+ * @param reference
7
+ *
8
+ * @remarks
9
+ * This has similar functionality to Excel online but is missing formatting information from Excel desktop.
10
+ * {@link https://support.office.com/client/results?authtype=unknown&lcid=1033&locale=en-us&ns=EXCEL&syslcid=1033&uilcid=1033&version=90&helpid=xlmain11.chm60173}
11
+ */
12
+ export declare function CELL(infoType: string, reference?: AcceptError<IReferenceRange>): Scalar;
13
+ /**
14
+ * @name ERROR.TYPE
15
+ * @summary Returns a number matching an error value.
16
+ * @param errorVal is the error value for which you want the identifying number, and can be an actual error value or a reference to a cell containing an error value.
17
+ */
18
+ export declare function ERROR_TYPE(errorVal: AcceptError<Scalar>): Scalar;
19
+ /**
20
+ * @summary Returns information about the current operating system.
21
+ * @param {'DIRECTORY' | 'NUMFILE' | 'ORIGIN' | 'OSVERSION' | 'RECALC' | 'RELEASE' | 'SYSTEM' | 'USER'} typeText The type of information to return.
22
+ */
23
+ export declare function INFO(typeText: string): string;
24
+ /**
25
+ * @summary Checks whether a reference is to an empty cell, and returns TRUE or FALSE.
26
+ * @param value is the cell or a name that refers to the cell you want to test.
27
+ */
28
+ export declare function ISBLANK(value: AcceptError<Scalar>): boolean;
29
+ /**
30
+ * @summary Returns TRUE if the value is a date.
31
+ * @param value The value to check.
32
+ * @category Sheets
33
+ *
34
+ * @remarks
35
+ * A TEXT predicate, despite the name — it asks whether text spells a date, not whether a value
36
+ * is one. Measured in Sheets 2026-08-19: every number is FALSE at every serial, `0`, `1`,
37
+ * `2958465` and `-1` alike, and so is `DATEVALUE("1/1/2020")`, whose declared return is a
38
+ * number. Booleans and blanks are FALSE; errors propagate with their identity. Text is TRUE
39
+ * when the parser accepts the WHOLE string — a bare `"July"` and `"2/30/2020"` are FALSE.
40
+ *
41
+ * Where Sheets and Excel disagree on a SPELLING, Excel wins here: `ISDATE("July 20 1969")` is
42
+ * FALSE (Excel wants the comma in month-day-year order), `ISDATE("Feb 30")` is TRUE (Excel
43
+ * reads a number that cannot be a day as a 2-digit year — Feb 1930), and `ISDATE("1969-20-07")`
44
+ * is FALSE (year-first is year-month-day with a four-digit year; Sheets takes year-day-month,
45
+ * Excel does not). All measured, all the opposite of Sheets, and all inherited rather than
46
+ * decided here: this shares the `DATEVALUE` parser, and that parser answers to Excel.
47
+ *
48
+ * **`ISDATE(A1)` on a date cell is FALSE here and TRUE in Sheets — deliberately.** Sheets reads
49
+ * the referenced cell's NUMBER FORMAT, and that is the parity we cannot reach: a date here is a
50
+ * number carrying a date format, formats are not exposed to a formula, and the calculation graph
51
+ * does not treat a format edit as a change that dirties anything — so a format-reading `ISDATE`
52
+ * would answer correctly once and then go stale on the next reformat. Reading the value instead
53
+ * (any serial-range number is a date) was the alternative, and it was rejected: it would have
54
+ * contradicted six measured results to buy back one, and called `ISDATE(42)` a date.
55
+ *
56
+ * Sheets also answers TRUE for `ISDATE(TODAY())` and `ISDATE(TIME(13,0,0))` — there the
57
+ * argument's static type is a date, which is why `DATEVALUE` differs from `TODAY` there despite
58
+ * both evaluating to a number. That provenance does not survive to a function here either.
59
+ */
60
+ export declare function ISDATE(value: Scalar): boolean;
61
+ /**
62
+ * @summary Returns TRUE if the value is a valid email address.
63
+ * @param value The value to check.
64
+ * @category Sheets
65
+ */
66
+ export declare function ISEMAIL(value: string): boolean;
67
+ /**
68
+ * @summary Checks whether a value is an error other than #N/A, and returns TRUE or FALSE.
69
+ * @param value is the value you want to test. Value can refer to a cell, a formula, or a name that refers to a cell, formula, or value.
70
+ */
71
+ export declare function ISERR(value: AcceptError<Scalar>): Scalar;
72
+ /**
73
+ * @summary Checks whether a value is an error, and returns TRUE or FALSE
74
+ * @param value is the value you want to test. Value can refer to a cell, a formula, or a name that refers to a cell, formula, or value
75
+ */
76
+ export declare function ISERROR(value: AcceptError<Scalar>): Scalar;
77
+ /**
78
+ * @summary Returns TRUE if the number is even.
79
+ * @param number is the value to test.
80
+ *
81
+ * @remarks
82
+ * We take a range to error if a range.
83
+ */
84
+ export declare function ISEVEN(number: IRange<number>): Scalar;
85
+ /**
86
+ * @summary Checks whether a reference is to a cell containing a formula, and returns TRUE or FALSE.
87
+ * @param reference is a reference to the cell you want to test. Reference can be a cell reference, a formula, or name that refers to a cell.
88
+ */
89
+ export declare function ISFORMULA(reference: AcceptError<IReferenceRange>): boolean;
90
+ /**
91
+ * @summary Checks whether a value is a logical value (TRUE or FALSE), and returns TRUE or FALSE.
92
+ * @param value is the value you want to test. Value can refer to a cell, a formula, or a name that refers to a cell, formula, or value.
93
+ */
94
+ export declare function ISLOGICAL(value: AcceptError<Scalar>): boolean;
95
+ /**
96
+ * @summary Checks whether a value is #N/A, and returns TRUE or FALSE.
97
+ * @param value is the value you want to test. Value can refer to a cell, a formula, or a name that refers to a cell, formula, or value.
98
+ */
99
+ export declare function ISNA(value: AcceptError<Scalar>): boolean;
100
+ /**
101
+ * @summary Checks whether a value is not text (blank cells are not text), and returns TRUE or FALSE.
102
+ * @param value is the value you want tested: a cell; a formula; or a name referring to a cell, formula, or value.
103
+ */
104
+ export declare function ISNONTEXT(value: AcceptError<Scalar>): boolean;
105
+ /**
106
+ * @summary Checks whether a value is not text (blank cells are not text), and returns TRUE or FALSE.
107
+ * @param value is the value you want tested: a cell; a formula; or a name referring to a cell, formula, or value.
108
+ */
109
+ export declare function ISNUMBER(value: AcceptError<Scalar>): boolean;
110
+ /**
111
+ * @summary Returns TRUE if the number is odd.
112
+ * @param number is the value to test.
113
+ *
114
+ * @remarks
115
+ * We take a range to error if a range.
116
+ */
117
+ export declare function ISODD(number: IRange<number>): Scalar;
118
+ /**
119
+ * @summary Checks whether the value is omitted, and returns TRUE or FALSE.
120
+ * @param argument is the value you want to test, such as a LAMBDA parameter.
121
+ */
122
+ export declare function ISOMITTED(argument: AcceptError<Scalar>): boolean;
123
+ /**
124
+ * @summary Returns TRUE if the value is a valid HTTP or HTTPS URL.
125
+ * @param value The value to check.
126
+ * @category Sheets
127
+ */
128
+ export declare function ISURL(value: string): boolean;
129
+ /**
130
+ * @summary Checks whether a value is a reference, and returns TRUE or FALSE.
131
+ * @param value is the value you want to test. Value can refer to a cell, a formula, or a name that refers to a cell, formula, or value.
132
+ */
133
+ export declare function ISREF(value: Flatten<AcceptError<IRange>>): boolean;
134
+ /**
135
+ * @summary Converts a value to text in a specific number format.
136
+ * @param value is a number, a formula that evaluates to a numeric value, or a reference to a cell containing a numeric value.
137
+ */
138
+ export declare function ISTEXT(value: AcceptError<Scalar>): boolean;
139
+ /**
140
+ * @summary Converts non-number value to a number, dates to serial numbers, TRUE to 1, anything else to 0 (zero).
141
+ * @param value is the value to convert.
142
+ */
143
+ export declare function N(value: AcceptError<Scalar>): Scalar;
144
+ /**
145
+ * @summary Returns the #N/A error value
146
+ */
147
+ export declare function NA(): FormulaError.Known;
148
+ /**.
149
+ * @summary Returns the sheet number of the referenced sheet.
150
+ * @param value is the name of a sheet or a reference that you want the sheet number of. If omitted the number of the sheet containing the function is returned.
151
+ */
152
+ export declare function SHEET(value?: AcceptRefError<IRange>): Scalar;
153
+ /**
154
+ * @summary Returns the number of sheets in a reference.
155
+ * @param reference is a reference for which you want to know the number of sheets it contains. If omitted the number of sheets in the workbook containing the function is returned.
156
+ *
157
+ * @remarks
158
+ * A non-reference argument — a number, text, an array, a computed value — returns `#N/A`.
159
+ */
160
+ export declare function SHEETS(reference?: AcceptRefError<IRange>): number | FormulaError.Known;
161
+ /**
162
+ * @summary Returns an integer representing the data type of a value: number = 1; text = 2; logical value = 4; error value = 16; array = 64; compound data = 128.
163
+ * @param value is the value to check.
164
+ */
165
+ export declare function TYPE(value: AcceptError<IRange>): number;
166
+ //# sourceMappingURL=Information.d.ts.map
@@ -0,0 +1,15 @@
1
+ import { Scalar } from '@sheetxl/primitives';
2
+ /**
3
+ * @hidden Unimplemented Japanese.
4
+ * @summary Converts a standard date code into a localized text string.
5
+ * @param number A numeric value representing a date code.
6
+ */
7
+ export declare function DATESTRING(number: number): Scalar;
8
+ /**
9
+ * @hidden Unimplemented Japanese.
10
+ * @summary Converts a number into Japanese Kanji words.
11
+ * @param number A numeric value representing a date code.
12
+ * @param number2 A numeric value representing a date code.
13
+ */
14
+ export declare function NUMBERSTRING(number: number, number2: number): Scalar;
15
+ //# sourceMappingURL=Date.d.ts.map
@@ -0,0 +1,8 @@
1
+ import { Scalar, IReferenceRange } from '@sheetxl/primitives';
2
+ /**
3
+ * @hidden Unimplemented Japanese.
4
+ * @summary Returns the phonetic spelling of a text string.
5
+ * @param reference Text string or a reference to a single cell or a range of cells that contain a furigana text string.
6
+ */
7
+ export declare function PHONETIC(reference: IReferenceRange): Scalar | undefined;
8
+ //# sourceMappingURL=Text.d.ts.map