Spaces:
Sleeping
Sleeping
import type { FunctionNode, WordNode, Node } from 'postcss-value-parser'; | |
export declare function turnToRad(turn: number): number; | |
export declare function degToRad(deg: number): number; | |
export declare function gradToRad(grad: number): number; | |
export declare function radToDeg(rad: number): number; | |
export declare function gradToDeg(grad: number): number; | |
export declare function turnToDeg(turn: number): number; | |
declare const toRad: { | |
turn: typeof turnToRad; | |
deg: typeof degToRad; | |
grad: typeof gradToRad; | |
}; | |
declare const toDeg: { | |
grad: typeof gradToDeg; | |
turn: typeof turnToDeg; | |
rad: typeof radToDeg; | |
}; | |
export declare function filterOnlyWords(node: Node): boolean; | |
/** | |
* Try to compute a calculation from a Node. | |
* | |
* This validates that the calculation has a valid order which is: | |
* - `{Number} {Operation} {Number} ...` | |
* | |
* Only basic arithmetic operations are allowed, and it has to be separate words | |
* similarly to how CSS calc works: | |
* | |
* - `sin(3.14159 * 2)` -> is valid | |
* - `sin(3.14159*2)` -> is not valid | |
* | |
* | |
* @param {FunctionNode} nodes Nodes to be parsed | |
* @param {Boolean} ignoreUnit Whether units are ignored or converted to radians | |
* @return {FunctionNode} Returns the node, if it managed to calculate, it will | |
* simplify inner nodes. | |
* @see https://www.w3.org/TR/css-values-4/#trig-funcs | |
*/ | |
export declare function computeCalculation(nodes: Node[], ignoreUnit?: boolean): Node[]; | |
export declare function functionNodeToWordNode(fn: FunctionNode): WordNode; | |
/** | |
* Formats a number that's intended to be put into CSS. | |
* | |
* Due to processing of Number(number.toFixed(decimals)) this will get | |
* rid of ending zeroes, usually helping with the rounding which is the | |
* intended effect. | |
* | |
* For example, converting 4.71238898038469 radians into deg leads to | |
* 270.000000000669786 which is going to result as 270 unless a | |
* precision of 10 is chosen. | |
* | |
* @param {Number} number Number to be formatted | |
* @param {Number} decimals Precision of decimals, CSS doesn't usually handle further than 5. | |
*/ | |
export declare function formatResultingNumber(number: number, decimals: number): string; | |
export declare function parseNumber(value: string): false | { | |
number: any; | |
unit: string; | |
}; | |
declare type validateNodeReturn = [WordNode, number] | undefined; | |
export declare function validateNode(node: FunctionNode, parseUnit?: boolean): validateNodeReturn; | |
export { toRad, toDeg }; | |