hyperformula-dc
Version:
HyperFormula is a JavaScript engine for efficient processing of spreadsheet-like data and formulas
131 lines (130 loc) • 4.38 kB
TypeScript
/**
* @license
* Copyright (c) 2021 Handsoncode. All rights reserved.
*/
import { ProcedureAst } from '../../parser';
import { InterpreterState } from '../InterpreterState';
import { InterpreterValue } from '../InterpreterValue';
import { ArgumentTypes, FunctionPlugin, FunctionPluginTypecheck } from './FunctionPlugin';
export declare function findNextOddNumber(arg: number): number;
export declare function findNextEvenNumber(arg: number): number;
export declare class RoundingPlugin extends FunctionPlugin implements FunctionPluginTypecheck<RoundingPlugin> {
static implementedFunctions: {
ROUNDUP: {
method: string;
parameters: ({
argumentType: ArgumentTypes;
defaultValue?: undefined;
} | {
argumentType: ArgumentTypes;
defaultValue: number;
})[];
};
ROUNDDOWN: {
method: string;
parameters: ({
argumentType: ArgumentTypes;
defaultValue?: undefined;
} | {
argumentType: ArgumentTypes;
defaultValue: number;
})[];
};
ROUND: {
method: string;
parameters: ({
argumentType: ArgumentTypes;
defaultValue?: undefined;
} | {
argumentType: ArgumentTypes;
defaultValue: number;
})[];
};
INT: {
method: string;
parameters: {
argumentType: ArgumentTypes;
}[];
};
EVEN: {
method: string;
parameters: {
argumentType: ArgumentTypes;
}[];
};
ODD: {
method: string;
parameters: {
argumentType: ArgumentTypes;
}[];
};
'CEILING.MATH': {
method: string;
parameters: ({
argumentType: ArgumentTypes;
defaultValue?: undefined;
} | {
argumentType: ArgumentTypes;
defaultValue: number;
})[];
};
CEILING: {
method: string;
parameters: {
argumentType: ArgumentTypes;
}[];
};
'CEILING.PRECISE': {
method: string;
parameters: ({
argumentType: ArgumentTypes;
defaultValue?: undefined;
} | {
argumentType: ArgumentTypes;
defaultValue: number;
})[];
};
'FLOOR.MATH': {
method: string;
parameters: ({
argumentType: ArgumentTypes;
defaultValue?: undefined;
} | {
argumentType: ArgumentTypes;
defaultValue: number;
})[];
};
FLOOR: {
method: string;
parameters: {
argumentType: ArgumentTypes;
}[];
};
'FLOOR.PRECISE': {
method: string;
parameters: ({
argumentType: ArgumentTypes;
defaultValue?: undefined;
} | {
argumentType: ArgumentTypes;
defaultValue: number;
})[];
};
};
static aliases: {
'ISO.CEILING': string;
TRUNC: string;
};
roundup(ast: ProcedureAst, state: InterpreterState): InterpreterValue;
rounddown(ast: ProcedureAst, state: InterpreterState): InterpreterValue;
round(ast: ProcedureAst, state: InterpreterState): InterpreterValue;
intFunc(ast: ProcedureAst, state: InterpreterState): InterpreterValue;
even(ast: ProcedureAst, state: InterpreterState): InterpreterValue;
odd(ast: ProcedureAst, state: InterpreterState): InterpreterValue;
ceilingmath(ast: ProcedureAst, state: InterpreterState): InterpreterValue;
ceiling(ast: ProcedureAst, state: InterpreterState): InterpreterValue;
ceilingprecise(ast: ProcedureAst, state: InterpreterState): InterpreterValue;
floormath(ast: ProcedureAst, state: InterpreterState): InterpreterValue;
floor(ast: ProcedureAst, state: InterpreterState): InterpreterValue;
floorprecise(ast: ProcedureAst, state: InterpreterState): InterpreterValue;
}