jspreadsheet 12.7.0 → 12.8.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.
@@ -0,0 +1 @@
1
+ [{"name":"RSQ","description":"Returns the square of the Pearson product moment correlation coefficient through data points in known_y's and known_x's.","syntax":"RSQ(known_y's, known_x's)","params":[{"type":"known_y's","comment":"An array or range of dependent data points."},{"type":"known_x's","comment":"An array or range of independent data points."}],"examples":"RSQ([2,3,9,1,8], [6,5,11,7,5])","pro":true,"basic":true,"category":"Statistical"},{"name":"DVARP","description":"The DVARP function calculates the variance of a population.","syntax":"DVARP(database, field, criteria)","params":[{"type":"database","comment":"The range of cells that makes up the database."},{"type":"field","comment":"The column label that contains the numbers for which you want the variance."},{"type":"criteria","comment":"The range of cells that contains the conditions you specify. You can use any range for the criteria argument, as long as it includes at least one column label and at least one cell below the column label in which you specify a condition for the column."}],"examples":"DVARP(A2:C10, 'Sales', A1:C1)","pro":true,"basic":true,"category":"Database"},{"name":"QUARTILE.INC","description":"Calculates the inclusive quartile of a dataset, which is a value that separates the lowest 25% from the highest 75% of values. This function uses a slightly different calculation than the QUARTILE function.","syntax":"QUARTILE.INC(array, quart)","params":[{"type":"array","comment":"The array or range of data for which to determine the quartile."},{"type":"quart","comment":"The quartile to return. 1 returns the minimum value, 2 returns the value at the first quartile, 3 returns the value at the median (second quartile), and 4 returns the value at the third quartile."}],"examples":"QUARTILE.INC(A1:A10,2) returns the value at the first quartile (the value separating the lowest 25% of values from the highest 75%) for the range A1:A10 using the inclusive method\nQUARTILE.INC(B2:B20,3) returns the value at the median (the second quartile) for the range B2:B20 using the inclusive method","pro":true,"basic":true,"category":"Statistical"},{"name":"DAYS360","description":"Calculates the number of days between two dates using a 360-day year.","syntax":"DAYS360(start_date, end_date, [method])","params":[{"type":"start_date","comment":"The start date of the time period."},{"type":"end_date","comment":"The end date of the time period."},{"type":"[method]","comment":"Optional. A flag that specifies the method to use for calculating the number of days. If omitted or zero, the US method is used. If non-zero, the European method is used."}],"examples":"DAYS360(\"2012-02-02\",\"2012-03-30\") returns 58","pro":true,"basic":true,"category":"Date and time"},{"name":"OR","description":"Returns true if any argument is true, and false otherwise.","syntax":"OR(logical1, [logical2], ...)","params":[{"type":"logical","comment":"The first condition to be evaluated."},{"type":"logicalN","comment":"Optional. An optional condition to be evaluated."}],"examples":"OR(1=1,2=3) returns true\nOR(1=2,2=3,3=4) returns false\nOR(A1=\"Yes\",A2=\"Yes\",A3=\"Yes\") returns true if at least one of the specified cells contains the value \"Yes\"","pro":true,"basic":true,"category":"Logical"},{"name":"COVARIANCE.S","description":"Calculates the sample covariance, which is an estimate of how much two random variables change together, between two specified sets of data.","syntax":"COVARIANCE.S(array1, array2)","params":[{"type":"array1","comment":"The first array or range of data."},{"type":"array2","comment":"The second array or range of data. Must be equal in length to array1."}],"examples":"COVARIANCE.S([1,2,3,4],[5,6,7,8])","pro":true,"basic":false,"category":"Statistical"},{"name":"ARRAYTOTEXT","description":"Converts an array into a delimited text string.","syntax":"ARRAYTOTEXT(array, [format])","params":[{"type":"array","comment":"The array to convert to text."},{"type":"[format]","comment":"Optional. The delimiter to use between values. Defaults to ',' if not specified."}],"examples":"ARRAYTOTEXT([1, 2, 3, 4], 0) returns '1,2,3,4'\nARRAYTOTEXT([\"apples\",\"oranges\",\"bananas\"], \"1 \") returns '[\"apples\", \"oranges\", \"bananas\"]'","pro":true,"basic":false,"category":"Text"},{"name":"SORT","description":"Returns a sorted range or array.","syntax":"SORT(array, [sort_index], [sort_order], [by_col])","params":[{"type":"array","comment":"The range or array of values to sort."},{"type":"[sort_index]","comment":"Optional. The index of the column or row by which to sort. Default is 1."},{"type":"[sort_order]","comment":"Optional. The order in which to sort. 1 for ascending order, -1 for descending order. Default is 1."},{"type":"[by_col]","comment":"Optional. TRUE to sort by column, FALSE to sort by row. Default is TRUE."}],"examples":"SORT(A1:A10) returns the values in range A1:A10 sorted in ascending order\nSORT(B2:E6, 3, -1, TRUE) sorts the range B2:E6 by the values in the third column, in descending order, and by column\nSORT([5,4,3,2,1]) returns [1,2,3,4,5]","pro":true,"basic":false,"category":"Lookup and reference"},{"name":"DDB","description":"Calculates the depreciation of an asset for a specified period using the double-declining balance method.","syntax":"DDB(cost, salvage, life, period, [factor])","params":[{"type":"cost","comment":"The initial cost of the asset."},{"type":"salvage","comment":"The value of the asset at the end of its useful life."},{"type":"life","comment":"The number of periods over which the asset will be depreciated."},{"type":"period","comment":"The period for which you want to calculate the depreciation. Must be greater than or equal to 1 and less than or equal to the life of the asset."},{"type":"[factor]","comment":"Optional. The rate at which the balance declines during the first year of depreciation. If omitted or zero, defaults to 2 (double-declining balance)."}],"examples":"DDB(10000, 2000, 10, 2) returns $1600 (depreciation for second year)\nDDB(50000, 5000, 5, 3, 1.5) returns $7350 (depreciation for third year with factor of 1.5)","pro":true,"basic":true,"category":"Financial"},{"name":"LOGNORM.DIST","description":"Returns the cumulative log-normal distribution for a specified value, mean, and standard deviation.","syntax":"LOGNORM.DIST(x, mean, standard_dev, [cumulative])","params":[{"type":"x","comment":"The value for which you want to find the log-normal distribution."},{"type":"mean","comment":"The mean of ln(x), where x is normally distributed. Must be positive."},{"type":"standard_dev","comment":"The standard deviation of ln(x), where x is normally distributed. Must be positive."},{"type":"cumulative","comment":"Optional. A logical value that specifies the type of distribution to return. If TRUE, returns the cumulative distribution function; if FALSE or omitted, returns the probability mass function."}],"examples":"LOGNORM.DIST(4, 3.5, 1.2) returns approximately 0.0176176\nLOGNORM.DIST(4, 3.5, 1.2) returns approximately 0.0390836","pro":true,"basic":false,"category":"Statistical"},{"name":"BETA.DIST","description":"Returns the cumulative beta probability density function.","syntax":"BETA.DIST(x, alpha, beta, [cumulative], [A], [B])","params":[{"type":"x","comment":"The value at which to evaluate the function."},{"type":"alpha","comment":"The first parameter of the beta distribution. Must be greater than 0."},{"type":"beta","comment":"The second parameter of the beta distribution. Must be greater than 0."},{"type":"[cumulative]","comment":"Optional. A logical value that specifies whether to return the cumulative distribution or the probability density function. If omitted, cumulative defaults to FALSE (cumulative distribution)."},{"type":"[A]","comment":"Optional. The lower bound of the interval of x. If omitted, A defaults to 0."},{"type":"[B]","comment":"Optional. The upper bound of the interval of x. If omitted, B defaults to 1."}],"examples":"BETA.DIST(4, 3.5, 1.2, true) returns 0.0390836\nBETA.DIST(4, 3.5, 1.2, false) returns 0.0176176","pro":true,"basic":false,"category":"Compatibility"},{"name":"COTH","description":"Returns the hyperbolic cotangent of a number.","syntax":"COTH(x)","params":[{"type":"x","comment":"The number for which you want to calculate the hyperbolic cotangent."}],"examples":"COTH(0) returns #DIV\/0!\nCOTH(1) returns 1.313\nCOTH(-1) returns -1.313","pro":true,"basic":true,"category":"Math and trigonometry"},{"name":"HEX2DEC","description":"Converts a hexadecimal number to decimal.","syntax":"HEX2DEC(x)","params":[{"type":"x","comment":"The hexadecimal number you want to convert to decimal."}],"examples":"HEX2DEC(\"A\") returns 10\nHEX2DEC(\"1D\") returns 29\nHEX2DEC(\"FFFF\") returns 65535","pro":true,"basic":true,"category":"Engineering"},{"name":"RIGHT","description":"Returns a specified number of characters from the end of a text string.","syntax":"RIGHT(text, number_of_characters)","params":[{"type":"text","comment":"The text string containing the characters to return."},{"type":"number_of_characters","comment":"The number of characters to return from the end of the text string."}],"examples":"RIGHT(\"Hello World\", 5) returns \"World\"\nRIGHT(\"Excel Functions\", 9) returns \"Functions\"\nRIGHT(\"12345\", 2) returns \"45\"","pro":true,"basic":true,"category":"Text"},{"name":"PV","description":"Calculates the present value of an investment or loan based on a constant interest rate and future payments or receipts.","syntax":"PV(rate, nper, pmt, [fv], [type])","params":[{"type":"rate","comment":"The interest rate per period."},{"type":"nper","comment":"The total number of payment periods in the investment or loan."},{"type":"pmt","comment":"The payment made each period; it cannot change over the life of the investment or loan."},{"type":"[fv]","comment":"Optional. The future value of the investment or loan, payable after the final payment is made. If omitted, defaults to 0."},{"type":"[type]","comment":"Optional. The timing of the payment. If omitted, defaults to 0 (payments due at the end of the period). Use 1 for payments due at the beginning of the period."}],"examples":"PV(0.1\/12, 24, 1000, 10000, 0) returns approximately -29864.950264779152","pro":true,"basic":true,"category":"Financial"},{"name":"COLUMN","description":"Returns the column number of a reference.","syntax":"COLUMN([reference])","params":[{"type":"[reference]","comment":"Optional. The cell or range of cells for which you want to return the column number. If omitted, returns the column number of the cell in which the formula appears."}],"examples":"COLUMN(A1) returns 1\nCOLUMN(B4:C7) returns [[2, 3]]\nCOLUMN() returns the column number of the cell containing this formula","pro":true,"basic":true,"category":"Lookup and reference"},{"name":"MDETERM","description":"Returns the matrix determinant of a square matrix.","syntax":"MDETERM(matrix)","params":[{"type":"matrix","comment":"The array or range containing the square matrix for which you want to calculate the determinant. The matrix must have the same number of rows and columns."}],"examples":"MDETERM(A1:C3) returns the determinant of the 3x3 matrix located in the range A1:C3\nMDETERM(A1:D4) returns the determinant of the 4x4 matrix located in the range A1:D4.","pro":true,"basic":false,"category":"Math and trigonometry"},{"name":"IRR","description":"Calculates the internal rate of return for a series of cash flows that occur at regular intervals.","syntax":"IRR(values, [guess])","params":[{"type":"values","comment":"An array or range of cash flows for which you want to calculate the internal rate of return."},{"type":"[guess]","comment":"Optional. An initial estimate of the internal rate of return. If omitted, it defaults to 0.1 (10%)."}],"examples":"IRR([-75000, 12000, 15000, 18000, 21000, 24000]) returns 0.05715142887178467\nIRR([-75000, 12000, 15000, 18000, 21000, 24000], 0.075) returns 0.05715142887178447","pro":true,"basic":true,"category":"Financial"},{"name":"FIXED","description":"Rounds a number to the specified number of digits and formats the result with a fixed number of decimal places.","syntax":"FIXED(number, [decimals], [no_commas])","params":[{"type":"number","comment":"The number to be rounded and formatted."},{"type":"[decimals]","comment":"Optional. The number of digits to the right of the decimal point. Default is 2."},{"type":"[no_commas]","comment":"Optional. A logical value that specifies whether to use a comma as the thousands separator. Default is FALSE (comma is displayed)."}],"examples":"FIXED(1234.5678) returns 1234.57\nFIXED(9876.54321, 3) returns 9876.543\nFIXED(12345.6789, 1, TRUE) returns 12,345.7","pro":true,"basic":false,"category":"Text"},{"name":"STEYX","description":"Calculates the standard error of the predicted y-value for each x in a regression.","syntax":"STEYX(known_y's, known_x's)","params":[{"type":"known_y's","comment":"An array or range of y-values that correspond to the x-values."},{"type":"known_x's","comment":"An array or range of x-values that correspond to the y-values."}],"examples":"STEYX(B2:B6, A2:A6) returns the standard error of the predicted y-value for each x in a linear regression of the values in cells A2 through A6 and B2 through B6\nSTEYX(C2:C7, A2:A7) returns the standard error of the predicted y-value for each x in a linear regression of the values in cells A2 through A7 and C2 through C7\nSTEYX(E2:E9, D2:D9) returns the standard error of the predicted y-value for each x in a linear regression of the values in cells D2 through D9 and E2 through E9","pro":true,"basic":false,"category":"Statistical"},{"name":"FORECAST.ETS.STAT","description":"Calculates statistical values for the Exponential Smoothing (ETS) algorithm applied to a time series data set.","syntax":"FORECAST.ETS.STAT(values, timeline, statistic_type, [seasonality], [data_completion], [aggregation])","params":[{"type":"values","comment":"An array of numerical values representing the historical data points."},{"type":"timeline","comment":"An array of dates or numerical values representing the timeline corresponding to the historical data points. It should have the same number of elements as the 'values' parameter."},{"type":"statistic_type","comment":"A string specifying the desired statistical measure. Available options include 'alpha', 'beta', 'gamma', 'phi', and 'sigma'."},{"type":"[seasonality]","comment":"An optional parameter that specifies the number of data points per season for seasonal data."},{"type":"[data_completion]","comment":"An optional parameter that indicates whether the data should be considered complete (TRUE) or incomplete (FALSE)."},{"type":"[aggregation]","comment":"An optional parameter that specifies the aggregation type to use for the data. Default is 'AVERAGE'."}],"examples":"FORECAST.ETS.STAT(B2:B8, A2:A8, \"alpha\") returns the \"alpha\" smoothing parameter for the given data.","pro":false,"basic":false,"category":"Statistical"},{"name":"FORECAST.ETS.CONFINT","description":"Calculates the lower and upper bounds of the confidence interval for a predicted value by using the Exponential Smoothing (ETS) algorithm.","syntax":"FORECAST.ETS.CONFINT(target_date, values, timeline, [confidence_level], [seasonality], [data_completion], [aggregation])","params":[{"type":"target_date","comment":"The date for which you want to predict a value."},{"type":"values","comment":"An array of numbers representing the historical data."},{"type":"timeline","comment":"An array of dates or numbers representing the timeline of the historical data. Should have the same number of elements as the 'values' parameter."},{"type":"[confidence_level]","comment":"Optional. The confidence level as a decimal value between 0 and 1. Default is 0.95, which corresponds to a 95% confidence level."},{"type":"[seasonality]","comment":"Optional. An integer specifying the number of periods in a complete season. Default is automatically detected."},{"type":"[data_completion]","comment":"Optional. A logical value that specifies whether to fill in missing data points. Default is FALSE (missing data points are not filled)."},{"type":"[aggregation]","comment":"Optional. A string that specifies how to aggregate data for each period. Default is \"AVERAGE\". Other options include \"SUM\", \"COUNT\", and \"MIN\"."}],"examples":"FORECAST.ETS.CONFINT(B2:B6, A2:A6, \"6\/1\/2019\", 0.95) returns a confidence interval for the predicted sales value for June 1, 2019","pro":false,"basic":false,"category":"Statistical"},{"name":"PRICEDISC","description":"Returns the price per $100 face value of a discounted security.","syntax":"PRICEDISC(settlement, maturity, discount, redemption, [basis])","params":[{"type":"settlement","comment":"The settlement date of the security."},{"type":"maturity","comment":"The maturity date of the security."},{"type":"discount","comment":"The discount rate of the security."},{"type":"redemption","comment":"The redemption value per $100 face value of the security."},{"type":"[basis]","comment":"Optional. The day count basis to use for calculating bond interest. If omitted, defaults to 0 (US (NASD) 30\/360)."}],"examples":"PRICEDISC(\"2023-01-05\",\"2023-01-31\", 0.038, 100, 0) returns 99.72555556","pro":true,"basic":false,"category":"Financial"},{"name":"CHISQ.TEST","description":"Returns the test for independence.","syntax":"CHISQ.TEST(actual_range, expected_range)","params":[{"type":"actual_range","comment":"A range of cells containing the observed frequency counts. Each cell must contain a non-negative number."},{"type":"expected_range","comment":"A range of cells containing the expected frequency counts. Each cell must contain a non-negative number."}],"examples":"CHISQ.TEST(A2:B4, C2:D4)","pro":true,"basic":false,"category":"Statistical"},{"name":"LOWER","description":"Converts all uppercase letters in a text string to lowercase.","syntax":"LOWER(text)","params":[{"type":"text","comment":"The text string that you want to convert to lowercase. You can enter the text string directly into the function or reference a cell that contains the text string."}],"examples":"LOWER(\"HELLO\") returns the text string \"hello\"\nLOWER(A1) returns the text string in cell A1 with all uppercase letters converted to lowercase\nLOWER(\"Hello World\") returns the text string \"hello world\".","pro":true,"basic":true,"category":"Text"},{"name":"PRICE","description":"Returns the price per $100 face value of a security with an annual coupon rate.","syntax":"PRICE(settlement, maturity, rate, yld, redemption, [frequency], [basis])","params":[{"type":"settlement","comment":"The settlement date of the security."},{"type":"maturity","comment":"The maturity date of the security."},{"type":"rate","comment":"The annual coupon rate of the security."},{"type":"yld","comment":"The annual yield of the security."},{"type":"redemption","comment":"The redemption value per $100 face value of the security."},{"type":"[frequency]","comment":"Optional. The number of coupon payments per year. If omitted, defaults to 2 (semi-annual)."},{"type":"[basis]","comment":"Optional. The day count basis to use for calculating bond interest. If omitted, defaults to 0 (US (NASD) 30\/360)."}],"examples":"PRICE(\"1\/1\/2023\",\"1\/1\/2043\",6%,8%,100)","pro":true,"basic":false,"category":"Financial"},{"name":"NOT","description":"Returns the opposite of a logical value, i.e., returns true if the value is false, and false if the value is true.","syntax":"NOT(logical)","params":[{"type":"logical","comment":"The logical value to negate."}],"examples":"NOT(true) returns false\nNOT(false) returns true\nNOT(5>10) returns true","pro":true,"basic":true,"category":"Logical"},{"name":"COUNTBLANK","description":"Counts the number of empty cells in a range.","syntax":"COUNTBLANK(range)","params":[{"type":"range","comment":"The range of cells to count the empty cells."}],"examples":"COUNTBLANK(A1:A10) returns the number of empty cells in A1 through A10","pro":true,"basic":true,"category":"Statistical"},{"name":"NORMDIST","description":"Returns the normal distribution for the specified mean and standard deviation.","syntax":"NORMDIST(x, mean, standard_dev, cumulative)","params":[{"type":"x","comment":"The value at which to evaluate the function."},{"type":"mean","comment":"The arithmetic mean of the distribution."},{"type":"standard_dev","comment":"The standard deviation of the distribution."},{"type":"cumulative","comment":"Logical value that specifies the form of the function. If cumulative is true, NORMDIST returns the cumulative distribution function; if false, it returns the probability density function. If omitted, cumulative defaults to true."}],"examples":"NORMDIST(1.96,0,1,FALSE)","pro":true,"basic":false,"category":"Statistical"},{"name":"OFFSET","description":"Returns a reference to a range that is offset from a starting cell or range.","syntax":"OFFSET(reference, rows, cols, [height], [width])","params":[{"type":"reference","comment":"The starting point from which you want to base the offset."},{"type":"rows","comment":"The number of rows, up (negative value) or down (positive value), by which the resulting range should be offset."},{"type":"cols","comment":"The number of columns, to the left (negative value) or right (positive value), by which the resulting range should be offset."},{"type":"[height]","comment":"Optional. Argument that specifies the height, in number of rows, that you want the resulting range to be."},{"type":"[width]","comment":"Optional. Argument that specifies the width, in number of columns, that you want the resulting range to be."}],"examples":"OFFSET(A1,2,2) returns a reference to the cell in the second row and second column relative to cell A1\nOFFSET(A1:B5,1,1,1,1) returns a reference to the cell in the second row and second column of the range A2:B3\nOFFSET(A1,0,0,3,3) returns a reference to a 3x3 range starting with cell A1","pro":true,"basic":false,"category":"Lookup and reference"},{"name":"POWER","description":"Returns the result of a number raised to a power.","syntax":"POWER(number, power)","params":[{"type":"number","comment":"The base number."},{"type":"power","comment":"The exponent by which to raise the base."}],"examples":"POWER(2,3) returns 8, which is 2 raised to the power of 3\nPOWER(A1,B1) returns the value of cell A1 raised to the power of the value in cell B1\nPOWER(10,-2) returns 0.01, which is 10 raised to the power of -2","pro":true,"basic":true,"category":"Math and trigonometry"},{"name":"IMCONJUGATE","description":"The IMCONJUGATE function is used to return the complex conjugate of a complex number.","syntax":"IMCONJUGATE(inumber)","params":[{"type":"inumber","comment":"The complex number for which to find the complex conjugate."}],"examples":"IMCONJUGATE(\"3+4i\") returns 3-4i\nIMCONJUGATE(\"-2-5i\") returns -2+5i\nIMCONJUGATE(\"0+8i\") returns 0-8i","pro":true,"basic":true,"category":"Engineering"},{"name":"COUNTA","description":"Counts the number of cells in a range that are not empty.","syntax":"COUNTA(value1, [value2], ...)","params":[{"type":"value","comment":"The first value or range of cells to count."},{"type":"valueN","comment":"Optional. Additional values or ranges of cells to count. You can enter up to 255 arguments."}],"examples":"COUNTA(A1:A10) returns the number of non-empty cells in A1 through A10\nCOUNTA(A1, B1, C1, D1) returns the number of non-empty cells in cells A1, B1, C1, and D1\nCOUNTA(1, \"text\", TRUE, \"\", 5) returns 4","pro":true,"basic":true,"category":"Statistical"},{"name":"F.INV","description":"Returns the inverse of the F probability distribution.","syntax":"F.INV(probability, degrees_freedom1, degrees_freedom2)","params":[{"type":"probability","comment":"A probability value between 0 and 1."},{"type":"degrees_freedom1","comment":"The numerator degrees of freedom for the distribution."},{"type":"degrees_freedom2","comment":"The denominator degrees of freedom for the distribution."}],"examples":"F.INV(0.05, 3, 5)","pro":true,"basic":false,"category":"Statistical"},{"name":"BITOR","description":"Returns a bitwise 'OR' of two numbers.","syntax":"BITOR(number1, number2)","params":[{"type":"number1","comment":"The first number to be used in the bitwise operation."},{"type":"number2","comment":"The second number to be used in the bitwise operation."}],"examples":"BITOR(5, 3) returns 7\nBITOR(12, 8) returns 12\nBITOR(25, 18) returns 27","pro":true,"basic":true,"category":"Engineering"},{"name":"TRUNC","description":"Truncates a number to a specified number of decimal places by removing the fractional part of the number.","syntax":"TRUNC(number, [num_digits])","params":[{"type":"number","comment":"The number you want to truncate."},{"type":"[num_digits]","comment":"Optional. The number of digits to which you want to round. If omitted, the function returns the integer portion of the number."}],"examples":"TRUNC(10.12345) returns 10\nTRUNC(10.12345, 2) returns 10.12\nTRUNC(-10.12345, 3) returns -10.123","pro":true,"basic":true,"category":"Math and trigonometry"},{"name":"DEC2OCT","description":"Converts a decimal number to octal format.","syntax":"DEC2OCT(number, [places])","params":[{"type":"number","comment":"The decimal number you want to convert to octal."},{"type":"[places]","comment":"Optional. The minimum number of characters to use for the octal number. If omitted or zero, the function will use as many characters as necessary."}],"examples":"DEC2OCT(255) returns 377\nDEC2OCT(42,4) returns 0052\nDEC2OCT(1000) returns 1750","pro":true,"basic":true,"category":"Engineering"},{"name":"LOGEST","description":"Calculates an exponential curve that fits a set of data and returns an array of values that describes the curve.","syntax":"LOGEST(known_y's, [known_x's], [const], [stats])","params":[{"type":"known_y's","comment":"The array or range containing the dependent variable values."},{"type":"[known_x's]","comment":"Optional. The array or range containing the independent variable values. If omitted, Excel uses [1,2,3,...] as the default independent variable array."},{"type":"[const]","comment":"Optional. A logical value that specifies whether to force the exponential curve to pass through the origin (0,0). If TRUE, the y-intercept is set to 0 and the curve is forced to pass through the origin. If FALSE or omitted, the y-intercept is calculated normally."},{"type":"[stats]","comment":"Optional. A logical value that specifies whether to return additional regression statistics. If TRUE, LOGEST returns an array of additional statistics, including the standard error and R-squared value. If FALSE or omitted, LOGEST returns only the coefficients of the exponential curve."}],"examples":"LOGEST(A1:A10, B1:B10) returns an array of coefficients for the exponential curve that best fits the points (A1,B1), (A2,B2), ... , (A10,B10)\nLOGEST(A1:A10, B1:B10, TRUE) returns an array of coefficients for the exponential curve that passes through the origin and best fits the same points\nLOGEST(A1:A10, B1:B10, FALSE, TRUE) returns an array of regression statistics alongside the coefficients for the exponential curve that best fits the same points.","pro":true,"basic":false,"category":"Statistical"},{"name":"SUM","description":"Returns the sum of a range of numbers or cells.","syntax":"SUM(number1, [number2], ...)","params":[{"type":"number1","comment":"The first number or range to add."},{"type":"number2","comment":"Optional. Additional numbers or ranges to add."}],"examples":"SUM(5, 10, 15) returns 30\nSUM(A2:A6) returns the sum of the values in cells A2 through A6\nSUM(B2:B6, D2:D6) returns the sum of the values in both ranges B2 through B6 and D2 through D6","pro":true,"basic":true,"category":"Math and trigonometry"},{"name":"FALSE","description":"Returns the logical value 'FALSE'.","syntax":"FALSE()","params":[],"examples":"FALSE()","pro":true,"basic":true,"category":"Logical"},{"name":"DISC","description":"Calculates the discount rate for a security based on its price, face value, and coupon rate.","syntax":"DISC(settlement, maturity, price, redemption, [basis])","params":[{"type":"settlement","comment":"The settlement date of the security."},{"type":"maturity","comment":"The maturity date of the security."},{"type":"price","comment":"The price per $100 face value of the security."},{"type":"redemption","comment":"The redemption value per $100 face value of the security at maturity."},{"type":"[basis]","comment":"Optional. The day count basis to use for calculating fractional periods. If omitted, assumes a default of US (NASD) 30\/360."}],"examples":"DISC(\"2023-01-04\", \"2023-01-31\", 99.5, 100)","pro":true,"basic":false,"category":"Financial"},{"name":"CALL","description":"Calls a macro from a module or run a function.","syntax":"CALL(macro_name, param1, param2,...)","params":[{"type":"macro_name","comment":"The name of the macro to be called."},{"type":"paramN","comment":"Optional. One or more parameters to be passed to the macro."}],"examples":"CALL(\"MyMacro\", A1:B3)\nCALL(\"MyFunction\", 10, \"test\")\nCALL(\"AnotherMacro\")","pro":false,"basic":false,"category":"Add-in and Automation"},{"name":"BETADIST","description":"Returns the cumulative beta probability density function.","syntax":"BETADIST(x, alpha, beta, [A], [B])","params":[{"type":"x","comment":"The value at which to evaluate the function."},{"type":"alpha","comment":"The first parameter of the beta distribution. Must be greater than 0."},{"type":"beta","comment":"The second parameter of the beta distribution. Must be greater than 0."},{"type":"[A]","comment":"Optional. The lower bound of the interval of x. If omitted, A defaults to 0."},{"type":"[B]","comment":"Optional. The upper bound of the interval of x. If omitted, B defaults to 1."}],"examples":"BETADIST(0.2, 2, 3)\nBETADIST(0.8, 4, 2, 0.5, 1)\nBETADIST(0.5, 1, 1)","pro":true,"basic":false,"category":"Compatibility"},{"name":"IMSECH","description":"Returns the hyperbolic secant of a complex number.","syntax":"IMSECH(inumber)","params":[{"type":"inumber","comment":"The complex number for which you want to calculate the hyperbolic secant."}],"examples":"IMSECH(\"1+i\")","pro":true,"basic":true,"category":"Engineering"},{"name":"TEXTAFTER","description":"Returns the substring of text after a specified character or string.","syntax":"TEXTAFTER(text, delimiter, [instance_num], [match_mode], [match_end], [if_not_found])","params":[{"type":"text","comment":"The text from which to extract the substring."},{"type":"delimiter","comment":"The character or string after which to start extracting the substring."},{"type":"[instance_num]","comment":"Optional. The instance number of the delimiter to use if there are multiple occurrences. Default is 1."},{"type":"[match_mode]","comment":"Optional. Specifies the match mode. Options include 'exact' (default) or 'approximate'."},{"type":"[match_end]","comment":"Optional. Specifies whether to match at the end of the text. Options include 'start' (default) or 'end'."},{"type":"[if_not_found]","comment":"Optional. The value to return if the delimiter is not found in the text. Default is an empty string."}],"examples":"TEXTAFTER(\"apple,banana,cherry\", \",\") returns \"banana,cherry\"\nTEXTAFTER(\"Hello World\", \"World\") returns \"\"\nTEXTAFTER(\"John Smith\", \" \") = \"Smith\"","pro":true,"basic":false,"category":"Text"},{"name":"TAN","description":"Returns the tangent of an angle specified in radians.","syntax":"TAN(x)","params":[{"type":"x","comment":"The angle in radians for which you want the tangent. The angle can be expressed in radians or degrees. Excel treats angles in radians as if they were measured in radians; angles in degrees are converted to radians (pi\/180) before being evaluated."}],"examples":"TAN(0.7854)\nTAN(1.0472)\nTAN(-1.5708)","pro":true,"basic":true,"category":"Math and trigonometry"},{"name":"TANH","description":"Returns the hyperbolic tangent of a number.","syntax":"TANH(x)","params":[{"type":"x","comment":"The real number for which you want the hyperbolic tangent."}],"examples":"TANH(0)\nTANH(1)\nTANH(-1)","pro":true,"basic":true,"category":"Math and trigonometry"},{"name":"DPRODUCT","description":"Returns the product of values selected from a database table-like array based on specified criteria.","syntax":"DPRODUCT(database, field, criteria)","params":[{"type":"database","comment":"The database range to use for the lookup. Should include headers for each column."},{"type":"field","comment":"The column header of the field you want to multiply."},{"type":"criteria","comment":"Criteria range or array to search for records that meet all of the specified conditions."}],"examples":"DPRODUCT(A1:C10,\"Price\",[A1:A10,\"Oranges\",C1:C10,\">=5\"]) returns the product of all prices for oranges sold in quantities of 5 or more\nDPRODUCT(A1:C10,\"Sales\",[B1:B10,\"Apples\",C1:C10,\"2018\"]) returns the product of all sales for apples in the year 2018\nDPRODUCT(A1:E10,\"Units\",[A1:A10,\"Bananas\",B1:B10,\"North\",E1:E10,\"Yes\"]) returns the product of all units sold for bananas in the North region with a 'Yes' value in the 'Discount' column","pro":true,"basic":true,"category":"Database"},{"name":"MULTINOMIAL","description":"Returns the multivariate factorial, which is the product of factorials of a series of numbers.","syntax":"MULTINOMIAL(number1, [number2],...)","params":[{"type":"number1","comment":"The first number."},{"type":"numberN","comment":"The nth number."}],"examples":"MULTINOMIAL(3,4,5)\nMULTINOMIAL(A2:A6)","pro":true,"basic":true,"category":"Math and trigonometry"},{"name":"FTEST","description":"Returns the result of an F-test, which returns the two-tailed probability that the variances in two data sets are equal.","syntax":"FTEST(array1, array2)","params":[{"type":"array1","comment":"The first array or range of data."},{"type":"array2","comment":"The second array or range of data."}],"examples":"FTEST(A2:A10,B2:B10)","pro":true,"basic":false,"category":"Statistical"},{"name":"QUOTIENT","description":"Returns the integer portion of a division operation. It discards the remainder and returns only the whole number that divides evenly into the dividend.","syntax":"QUOTIENT(numerator, denominator)","params":[{"type":"numerator","comment":"The number to be divided."},{"type":"denominator","comment":"The number by which to divide the numerator."}],"examples":"QUOTIENT(10,3) returns 3 because 3 is the largest whole number that divides evenly into 10 when divided by 3\nQUOTIENT(1000,7) returns 142 because 7 goes into 1000 142 times with a remainder of 6\nQUOTIENT(A1,B1) returns the integer portion of the result of dividing the value in cell A1 by the value in cell B1","pro":true,"basic":true,"category":"Math and trigonometry"},{"name":"ADDRESS","description":"Returns a cell reference as a string, given row and column numbers, and an optional flag indicating whether the reference should be absolute or relative.","syntax":"ADDRESS(row_num, col_num, [abs_num], [a1], [sheet_text])","params":[{"type":"row_num","comment":"The row number for the cell reference."},{"type":"col_num","comment":"The column number for the cell reference."},{"type":"[abs_num]","comment":"Optional. A number specifying the type of reference to return. May be one of: 1 (default), 2, 3, or 4."},{"type":"[a1]","comment":"Optional. A value indicating whether the returned reference should use the A1-style or R1C1-style notation. Defaults to FALSE if not specified."},{"type":"[sheet_text]","comment":"Optional. The name of the worksheet to which the cell reference belongs."}],"examples":"ADDRESS(1, 1)\nADDRESS(2, 3, 4)\nADDRESS(4, 4, 2, TRUE)","pro":true,"basic":false,"category":"Lookup and reference"},{"name":"LEFTB","description":"Returns a specified number of bytes from the beginning (left side) of a text string.","syntax":"LEFTB(text, num_bytes)","params":[{"type":"text","comment":"The text string that contains the characters you want to extract."},{"type":"num_bytes","comment":"Specifies how many bytes you want LEFTB to return."}],"examples":"LEFTB('apple', 3) returns 'app'\nLEFTB('banana', 2) returns 'ba'\nLEFTB('cherry', 5) returns 'cher'","pro":false,"basic":false,"category":"Text"},{"name":"AVERAGEIFS","description":"Returns the average (arithmetic mean) of all cells in a range that meet multiple specified criteria.","syntax":"AVERAGEIFS(average_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...)","params":[{"type":"average_range","comment":"The range of cells to be averaged."},{"type":"criteria_range1","comment":"The first range of cells to be evaluated by the first criteria."},{"type":"criteria1","comment":"The criteria used to determine which cells to include in the average for the first criteria range. Can be a number, expression, cell reference, or text string."},{"type":"criteria_rangeN","comment":"Optional. The nth range of cells to be evaluated by the second criteria."},{"type":"criteriaN","comment":"Optional. The nth criteria used to determine which cells to include in the average for the nth criteria range. Can be a number, expression, cell reference, or text string."}],"examples":"AVERAGEIFS(A1:A5, B1:B5, '>3', C1:C5, '<10')\nAVERAGEIFS(D2:D7, E2:E7, 'red', F2:F7, '>10')\nAVERAGEIFS(H2:H9, I2:I9, '>=3', J2:J9, '<=12', K2:K9, '<>5')","pro":true,"basic":false,"category":"Statistical"},{"name":"ISOMITTED","description":"Checks if a parameter in a formula is omitted and returns TRUE if the parameter is omitted, and FALSE otherwise.","syntax":"ISOMITTED(reference)","params":[{"type":"reference","comment":"The reference to the parameter that you want to test."}],"examples":"ISOMITTED(A1) returns TRUE if the parameter is omitted from the formula\nISOMITTED(B2) returns FALSE if the parameter is not omitted from the formula\nISOMITTED(C3:D4) returns an array of TRUE or FALSE values indicating whether each corresponding parameter in the formula is omitted.","pro":true,"basic":false,"category":"Information"},{"name":"IMABS","description":"The IMABS function is used to return the absolute value (magnitude) of a complex number.","syntax":"IMABS(inumber)","params":[{"type":"inumber","comment":"The complex number for which to find the absolute value."}],"examples":"IMABS(\"2+3i\") returns approximately 3.6056\nIMABS(\"-4-3i\") returns approximately 5\nIMABS(\"0+10i\") returns exactly 10","pro":true,"basic":true,"category":"Engineering"},{"name":"MAXIFS","description":"Returns the largest number in a range of cells that meets multiple criteria.","syntax":"MAXIFS(range, criteria_range1, criteria1, [criteria_range2, criteria2], ...)","params":[{"type":"range","comment":"The range of cells from which you want to find the largest value that meets the specified criteria."},{"type":"criteria_range1","comment":"The first range of cells that you want to apply a criterion to. This can be the same as the 'range' argument."},{"type":"criteria1","comment":"The criterion that you want to apply to the 'criteria_range1'."},{"type":"criteria_rangeN","comment":"Optional. Additional ranges of cells that you want to apply criteria to."},{"type":"criteriaN","comment":"Optional. The criterion that you want to apply to the nth. You can specify up to 127 pairs of criteria_range and criteria arguments."}],"examples":"MAXIFS(A1:A10, B1:B10, \">5\") returns the largest number in the range A1:A10 that is greater than 5 in the corresponding cell in the range B1:B10\nMAXIFS(B1:B10, A1:A10, \"apples\", B1:B10, \">5\") returns the largest number in the range B1:B10 that corresponds to cells in the range A1:A10 containing the text string \"apples\" and the corresponding cell in the range B1:B10 being greater than 5\nMAXIFS(A1:A10, A1:A10, \"<>\", B1:B10, \"red\") returns the largest number in the range A1:A10 that corresponds to cells in the range A1:A10 that are not blank and the corresponding cell in the range B1:B10 containing the text string \"red\".","pro":true,"basic":false,"category":"Statistical"},{"name":"GAMMA.DIST","description":"Calculates the gamma distribution, which is a continuous probability distribution that describes the shape of data that has positive skewness and a long right tail.","syntax":"GAMMA.DIST(x, alpha, beta, cumulative)","params":[{"type":"x","comment":"The value at which you want to evaluate the distribution."},{"type":"alpha","comment":"A parameter that specifies the shape of the distribution. Alpha must be greater than 0."},{"type":"beta","comment":"A parameter that specifies the scale of the distribution. Beta must be greater than 0."},{"type":"cumulative","comment":"A parameter that specifies whether to return the cumulative distribution function (CDF) or the probability density function (PDF). Enter TRUE to return the CDF, or FALSE to return the PDF."}],"examples":"GAMMA.DIST(2,3,2,FALSE)\nGAMMA.DIST(10,5,1.5,TRUE)\nGAMMA.DIST(20,7,4,FALSE)","pro":true,"basic":false,"category":"Statistical"},{"name":"EXP","description":"The EXP function returns the value of e raised to a given power.","syntax":"EXP(number)","params":[{"type":"number","comment":"The exponent to raise e to."}],"examples":"EXP(2) returns approximately 7.389056\nEXP(0.5) returns approximately 1.648721\nEXP(A2) returns e raised to the power of the value in cell A2.","pro":true,"basic":true,"category":"Math and trigonometry"},{"name":"IFS","description":"The IFS function is used to evaluate multiple conditions and return a value that corresponds to the first true condition.","syntax":"IFS(logical_test1, value_if_true1, [logical_test2, value_if_true2], ...)","params":[{"type":"logical_test1","comment":"The first logical test to perform."},{"type":"value_if_true1","comment":"The value to return if the first logical_test evaluates to TRUE."},{"type":"logical_testN","comment":"Optional. The nth logical test to perform."},{"type":"value_if_trueN","comment":"Optional. The value to return if the nth logical_test evaluates to TRUE."}],"examples":"IFS(A1 > 10, \"Greater than 10\", A1 > 5, \"Between 6 and 10\", A1 > 0, \"Between 1 and 5\") returns 'Greater than 10' if the value in cell A1 is greater than 10, 'Between 6 and 10' if it is between 6 and 10, and 'Between 1 and 5' if it is between 1 and 5.\nIFS(B2 = \"Yes\", C2*0.1, B2 = \"No\", C2*0.05) returns 10% of the value in cell C2 if the value in cell B2 is 'Yes', and 5% if it is 'No'.\nIFS(D4 = \"\", \"Blank\", D4 < 0, \"Negative\", D4 > 0, \"Positive\") returns 'Blank' if cell D4 is empty, 'Negative' if it is negative, and 'Positive' if it is positive.","pro":true,"basic":false,"category":"Logical"},{"name":"LOGINV","description":"Returns the inverse of the lognormal cumulative distribution function with a specified mean and standard deviation.","syntax":"LOGINV(probability, mean, standard_dev)","params":[{"type":"probability","comment":"The probability for which you want to find the corresponding inverse of the lognormal cumulative distribution function."},{"type":"mean","comment":"The mean of ln(x), where x is normally distributed. Must be positive."},{"type":"standard_dev","comment":"The standard deviation of ln(x), where x is normally distributed. Must be positive."}],"examples":"LOGINV(0.5, 1, 1)","pro":true,"basic":false,"category":"Compatibility"},{"name":"SECH","description":"Returns the hyperbolic secant of a number.","syntax":"SECH(number)","params":[{"type":"number","comment":"The numeric value for which to calculate the hyperbolic secant."}],"examples":"SECH(0.5) returns 0.886818883970074\nSECH(1) returns 0.648054273663885\n","pro":true,"basic":true,"category":"Math and trigonometry"},{"name":"AMORDEGRC","description":"Returns the depreciation for an accounting period, based on the fixed-rate declining balance method.","syntax":"AMORDEGRC(cost, date_purchased, first_period, salvage, period, rate, [basis])","params":[{"type":"cost","comment":"The initial cost of the asset."},{"type":"date_purchased","comment":"The date the asset was purchased."},{"type":"first_period","comment":"The date of the end of the first period."},{"type":"salvage","comment":"The value of the asset at the end of its useful life."},{"type":"period","comment":"The period for which to calculate depreciation."},{"type":"rate","comment":"The rate at which the asset is to be depreciated per period."},{"type":"[basis]]","comment":"Optional. The day count basis to use. Defaults to 0 if not specified."}],"examples":"AMORDEGRC(10000, '2023-01-15', '2023-05-01', 2000, 6, 0.2)\nAMORDEGRC(100000, '2000-01-01', '2000-06-30', 20000, 2, 0.25, 1)","pro":true,"basic":false,"category":"Financial"},{"name":"PPMT","description":"Calculates the payment on the principal for a given investment based on constant-amount periodic payments and a constant interest rate.","syntax":"PPMT(rate, per, nper, pv, [fv], [type])","params":[{"type":"rate","comment":"The interest rate for the loan."},{"type":"per","comment":"The payment period in the range from 1 to nper."},{"type":"nper","comment":"The total number of payments (the loan term) for the loan."},{"type":"pv","comment":"The present value or principal of the loan."},{"type":"[fv]","comment":"Optional. The future value or cash balance you want to attain after the last payment is made. If omitted, defaults to 0."},{"type":"[type]","comment":"Optional. When payments are due. 0 or omitted means at the end of the period, 1 means at the beginning of the period."}],"examples":"PPMT(0.05\/12, 1, 12*30, -100000,0)","pro":true,"basic":true,"category":"Financial"},{"name":"CUBESETCOUNT","description":"Returns the number of items in a set.","syntax":"CUBESETCOUNT(connection, set_expression)","params":[{"type":"connection","comment":"Required. A text string of a Microsoft Excel expression that evaluates to a set defined by the CUBESET function. Set can also be the CUBESET function, or a reference to a cell that contains the CUBESET function."},{"type":"set_expression","comment":"Required. Expression."}],"examples":"=CUBESETCOUNT(CUBESET(\"Sales\",\"[Product].[All Products].Children\",\"Products\",1,\"[Measures].[Sales Amount]\"))","pro":false,"basic":false,"category":"Cube"},{"name":"PMT","description":"Calculates the payment for a loan based on constant payments and a constant interest rate.","syntax":"PMT(rate, nper, pv, [fv], [type])","params":[{"type":"rate","comment":"The interest rate for the loan."},{"type":"nper","comment":"The total number of payments (the loan term) for the loan."},{"type":"pv","comment":"The present value or principal of the loan."},{"type":"[fv]","comment":"Optional. The future value or cash balance you want to attain after the last payment is made. If omitted, defaults to 0."},{"type":"[type]","comment":"Optional. When payments are due. 0 or omitted means at the end of the period, 1 means at the beginning of the period."}],"examples":"PMT(0.05\/12,12*30,-100000)\nPMT(0.1\/12,24,5000,1000,1)","pro":true,"basic":true,"category":"Financial"},{"name":"IMSUB","description":"Returns the difference between two complex numbers.","syntax":"IMSUB(inumber1, inumber2)","params":[{"type":"inumber1","comment":"The complex number from which you want to subtract another complex number."},{"type":"inumber2","comment":"The complex number that you want to subtract from the first complex number."}],"examples":"IMSUB(\"1+i\", \"2+3i\") returns \"-1-2i\"\nIMSUB(\"3+4i\", \"-1+2i\") returns \"4+2i\"","pro":true,"basic":true,"category":"Engineering"},{"name":"T.DIST.2T","description":"Returns the two-tailed Student's t-distribution.","syntax":"T.DIST.2T(x, degrees_freedom)","params":[{"type":"x","comment":"The numeric value at which to evaluate the distribution."},{"type":"degrees_freedom","comment":"The number of degrees of freedom."}],"examples":"T.DIST.2T(1.5, 10)\nT.DIST.2T(2, 8)\nT.DIST.2T(1, 5)","pro":true,"basic":false,"category":"Statistical"},{"name":"AVEDEV","description":"Returns the average of the absolute deviations of data points from their mean.","syntax":"AVEDEV(number1, [number2], ...)","params":[{"type":"number1","comment":"The first number or range of numbers for which to calculate the average of the absolute deviations."},{"type":"numberN","comment":"Optional. Additional numbers or ranges of numbers for which to calculate the average of the absolute deviations."}],"examples":"AVEDEV(1, 2, 3, 4, 5) returns 1.2\nAVEDEV([2,4,6,8], [1,3,5,7])\nAVEDEV(-2, -1, 0, 1, 2)","pro":true,"basic":false,"category":"Statistical"},{"name":"WEEKNUM","description":"Returns the week number of a given date.","syntax":"WEEKNUM(serial_number, [return_type])","params":[{"type":"serial_number","comment":"The serial number that represents the date whose week number you want to find."},{"type":"[return_type]","comment":"Optional. A number that determines the type of return value:\n1 (or omitted): Week starts on Sunday and week 1 is the week that includes January 1\n2: Week starts on Monday and week 1 is the week that includes January 4 (the week that includes January 1 is the previous year's last week)\n11: Week starts on Monday and week 1 is the week that includes January 1\n12: Week starts on Tuesday and week 1 is the week that includes January 1\n13: Week starts on Wednesday and week 1 is the week that includes January 1\n14: Week starts on Thursday and week 1 is the week that includes January 1\n15: Week starts on Friday and week 1 is the week that includes January 1\n16: Week starts on Saturday and week 1 is the week that includes January 1"}],"examples":"WEEKNUM(\"2015-01-04\") returns: 11\nWEEKNUM(\"1900-01-02\") returns 1\nWEEKNUM(42008) returns 2","pro":true,"basic":true,"category":"Date and time"},{"name":"FILTERXML","description":"Returns specific data from XML content by using an XPath string.","syntax":"FILTERXML(xml, xpath)","params":[{"type":"xml","comment":"A string containing the XML content to filter."},{"type":"xpath","comment":"A string containing the XPath expression used to extract the data."}],"examples":"FILTERXML(\"John Doe<\/name>
package/dist/index.d.ts CHANGED
@@ -951,6 +951,73 @@ declare namespace jspreadsheet {
951
951
  f: string;
952
952
  }
953
953
 
954
+ type PivotTableAggregation = 'SUM' | 'COUNTA' | 'COUNT' | 'COUNTUNIQUE' | 'AVERAGE' | 'MAX' | 'MIN' | 'MEDIAN' | 'PRODUCT' | 'STDEV' | 'STDEVP' | 'VAR.S' | 'VAR.P';
955
+
956
+ interface PivotTableField {
957
+ /** Index of the source column used for grouping. */
958
+ columnIndex: number;
959
+ /** Sort key: 'name' or a value-cell id for value-based sorting. */
960
+ sortBy: string;
961
+ /** True for ascending order, false for descending. */
962
+ ascendingOrder: boolean;
963
+ /** Values that should be displayed collapsed by default. */
964
+ collapsed?: any[];
965
+ }
966
+
967
+ interface PivotTableCell {
968
+ /** Unique identifier (guid). */
969
+ id: string;
970
+ /** Source column containing the values to aggregate. */
971
+ columnIndex: number;
972
+ /** Aggregation method. */
973
+ method: PivotTableAggregation;
974
+ }
975
+
976
+ interface PivotTableFilterValidation {
977
+ /** Validation type. The 'list' and 'formula' types are not supported for pivot filters. */
978
+ type: Exclude<Validation['type'], 'list' | 'formula' | Function>;
979
+ /** Comparison operator. */
980
+ criteria?: Validation['criteria'];
981
+ /** Values used by the criteria. */
982
+ value?: Validation['value'];
983
+ }
984
+
985
+ interface PivotTableFilter {
986
+ /** Source column to filter. */
987
+ columnIndex: number;
988
+ /** Specific values to include. */
989
+ filter?: any[];
990
+ /** Conditional filtering rule. The 'list' and 'formula' validation types are not supported for pivot filters. */
991
+ validation?: PivotTableFilterValidation;
992
+ }
993
+
994
+ interface PivotTable {
995
+ /** Unique identifier (guid). */
996
+ id: string;
997
+ /** Source range (e.g. 'Sheet1!A1:D10'). */
998
+ source: string;
999
+ /** Anchor cell reference (e.g. 'A1'). */
1000
+ anchor: string;
1001
+ /** Row fields. */
1002
+ rows?: PivotTableField[];
1003
+ /** Column fields. */
1004
+ columns?: PivotTableField[];
1005
+ /** Value cells. */
1006
+ cells?: PivotTableCell[];
1007
+ /** Filters. */
1008
+ filters?: PivotTableFilter[];
1009
+ }
1010
+
1011
+ interface Suggestions {
1012
+ name?: string,
1013
+ description?: string,
1014
+ syntax?: string,
1015
+ params? : object[],
1016
+ examples?: string,
1017
+ pro?: boolean,
1018
+ basic?: boolean,
1019
+ }
1020
+
954
1021
  interface Spreadsheet {
955
1022
  /** Your application name */
956
1023
  application?: string;
@@ -974,6 +1041,8 @@ declare namespace jspreadsheet {
974
1041
  forceUpdateOnPaste?: boolean;
975
1042
  /** Render jspreadsheet spreadsheet on full screen mode. Default: false */
976
1043
  fullscreen?: boolean;
1044
+ /** Suggest formulas. Default: false */
1045
+ suggestions?: Suggestions[],
977
1046
  /** Make sure the formulas are capital letter. Default: true */
978
1047
  secureFormulas?: boolean;
979
1048
  /** Enable formula debug. Default: false */
@@ -1199,6 +1268,12 @@ declare namespace jspreadsheet {
1199
1268
  onfreezecolumns?: (worksheet: worksheetInstance, columns: number[]) => void;
1200
1269
  /** Freeze columns */
1201
1270
  onfreezerows?: (worksheet: worksheetInstance, rows: number[]) => void;
1271
+ /** When a new pivot table is created. */
1272
+ oncreatepivot?: (worksheet: worksheetInstance, config: PivotTable) => void;
1273
+ /** When a pivot table configuration is changed. */
1274
+ onchangepivot?: (worksheet: worksheetInstance, newConfig: PivotTable, oldConfig: PivotTable) => void;
1275
+ /** When a pivot table is deleted. */
1276
+ ondeletepivot?: (worksheet: worksheetInstance, removedPivot: PivotTable) => void;
1202
1277
  /** Return false to cancel the contextMenu event, or return custom elements for the contextmenu. */
1203
1278
  contextMenu?: Contextmenu | null;
1204
1279
  /** About information */