ui
This commit is contained in:
+51
@@ -0,0 +1,51 @@
|
||||
export interface MathExpression {
|
||||
type: 'MathExpression';
|
||||
right: CalcNode;
|
||||
left: CalcNode;
|
||||
operator: '*' | '+' | '-' | '/';
|
||||
}
|
||||
|
||||
export interface ParenthesizedExpression {
|
||||
type: 'ParenthesizedExpression';
|
||||
content: CalcNode;
|
||||
}
|
||||
|
||||
export interface DimensionExpression {
|
||||
type:
|
||||
| 'LengthValue'
|
||||
| 'AngleValue'
|
||||
| 'TimeValue'
|
||||
| 'FrequencyValue'
|
||||
| 'PercentageValue'
|
||||
| 'ResolutionValue'
|
||||
| 'EmValue'
|
||||
| 'ExValue'
|
||||
| 'ChValue'
|
||||
| 'RemValue'
|
||||
| 'VhValue'
|
||||
| 'VwValue'
|
||||
| 'VminValue'
|
||||
| 'VmaxValue';
|
||||
value: number;
|
||||
unit: string;
|
||||
}
|
||||
|
||||
export interface NumberExpression {
|
||||
type: 'Number';
|
||||
value: number;
|
||||
}
|
||||
|
||||
export interface FunctionExpression {
|
||||
type: 'Function';
|
||||
value: string;
|
||||
}
|
||||
|
||||
export type ValueExpression = DimensionExpression | NumberExpression;
|
||||
|
||||
export type CalcNode = MathExpression | ValueExpression | FunctionExpression | ParenthesizedExpression;
|
||||
|
||||
export interface Parser {
|
||||
parse: (arg: string) => CalcNode;
|
||||
}
|
||||
|
||||
export const parser: Parser;
|
||||
Reference in New Issue
Block a user