FIX: Fixes types for TypeScript manually (#32)
This commit is contained in:
committed by
GitHub
parent
196e074ef5
commit
b3b7dea930
194
bindings/wasm/types.ts
Normal file
194
bindings/wasm/types.ts
Normal file
@@ -0,0 +1,194 @@
|
||||
export interface Area {
|
||||
sheet: number;
|
||||
row: number;
|
||||
column: number;
|
||||
width: number;
|
||||
height: number;
|
||||
}
|
||||
|
||||
type ErrorType =
|
||||
| "REF"
|
||||
| "NAME"
|
||||
| "VALUE"
|
||||
| "DIV"
|
||||
| "NA"
|
||||
| "NUM"
|
||||
| "ERROR"
|
||||
| "NIMPL"
|
||||
| "SPILL"
|
||||
| "CALC"
|
||||
| "CIRC";
|
||||
|
||||
type OpCompareType =
|
||||
| "LessThan"
|
||||
| "GreaterThan"
|
||||
| "Equal"
|
||||
| "LessOrEqualThan"
|
||||
| "GreaterOrEqualThan"
|
||||
| "NonEqual";
|
||||
|
||||
type OpSumType = "Add" | "Minus";
|
||||
|
||||
type OpProductType = "Times" | "Divide";
|
||||
|
||||
interface ReferenceType {
|
||||
sheet: string | null;
|
||||
row: number;
|
||||
column: number;
|
||||
absolute_column: boolean;
|
||||
absolute_row: boolean;
|
||||
}
|
||||
|
||||
interface ParsedReferenceType {
|
||||
column: number;
|
||||
row: number;
|
||||
absolute_column: boolean;
|
||||
absolute_row: boolean;
|
||||
}
|
||||
|
||||
interface Reference {
|
||||
Reference: ReferenceType;
|
||||
}
|
||||
|
||||
interface Range {
|
||||
Range: {
|
||||
sheet: string | null;
|
||||
left: ParsedReferenceType;
|
||||
right: ParsedReferenceType;
|
||||
};
|
||||
}
|
||||
|
||||
export type TokenType =
|
||||
| "Illegal"
|
||||
| "Eof"
|
||||
| { Ident: string }
|
||||
| { String: string }
|
||||
| { Boolean: boolean }
|
||||
| { Number: number }
|
||||
| { ERROR: ErrorType }
|
||||
| { COMPARE: OpCompareType }
|
||||
| { SUM: OpSumType }
|
||||
| { PRODUCT: OpProductType }
|
||||
| "POWER"
|
||||
| "LPAREN"
|
||||
| "RPAREN"
|
||||
| "COLON"
|
||||
| "SEMICOLON"
|
||||
| "LBRACKET"
|
||||
| "RBRACKET"
|
||||
| "LBRACE"
|
||||
| "RBRACE"
|
||||
| "COMMA"
|
||||
| "BANG"
|
||||
| "PERCENT"
|
||||
| "AND"
|
||||
| Reference
|
||||
| Range;
|
||||
|
||||
export interface MarkedToken {
|
||||
token: TokenType;
|
||||
start: number;
|
||||
end: number;
|
||||
}
|
||||
|
||||
export interface WorksheetProperties {
|
||||
name: string;
|
||||
color: string;
|
||||
sheet_id: number;
|
||||
}
|
||||
|
||||
interface CellStyleFill {
|
||||
pattern_type: string;
|
||||
fg_color?: string;
|
||||
bg_color?: string;
|
||||
}
|
||||
|
||||
interface CellStyleFont {
|
||||
u: boolean;
|
||||
b: boolean;
|
||||
i: boolean;
|
||||
strike: boolean;
|
||||
sz: number;
|
||||
color: string;
|
||||
name: string;
|
||||
family: number;
|
||||
scheme: string;
|
||||
}
|
||||
|
||||
export enum BorderType {
|
||||
BorderAll,
|
||||
BorderInner,
|
||||
BorderCenterH,
|
||||
BorderCenterV,
|
||||
BorderOuter,
|
||||
BorderNone,
|
||||
BorderTop,
|
||||
BorderRight,
|
||||
BorderBottom,
|
||||
BorderLeft,
|
||||
None,
|
||||
}
|
||||
|
||||
export interface BorderOptions {
|
||||
color: string;
|
||||
style: BorderStyle;
|
||||
border: BorderType;
|
||||
}
|
||||
|
||||
export enum BorderStyle {
|
||||
Thin = "thin",
|
||||
Medium = "medium",
|
||||
Thick = "thick",
|
||||
Dashed = "dashed",
|
||||
Dotted = "dotted",
|
||||
Double = "double",
|
||||
None = "none",
|
||||
}
|
||||
|
||||
interface BorderItem {
|
||||
style: string;
|
||||
color: string;
|
||||
}
|
||||
|
||||
interface CellStyleBorder {
|
||||
diagonal_up?: boolean;
|
||||
diagonal_down?: boolean;
|
||||
left: BorderItem;
|
||||
right: BorderItem;
|
||||
top: BorderItem;
|
||||
bottom: BorderItem;
|
||||
diagonal: BorderItem;
|
||||
}
|
||||
|
||||
export type VerticalAlignment =
|
||||
| "bottom"
|
||||
| "center"
|
||||
| "distributed"
|
||||
| "justify"
|
||||
| "top";
|
||||
|
||||
export type HorizontalAlignment =
|
||||
| "left"
|
||||
| "center"
|
||||
| "right"
|
||||
| "general"
|
||||
| "centerContinuous"
|
||||
| "distributed"
|
||||
| "fill"
|
||||
| "justify";
|
||||
|
||||
interface Alignment {
|
||||
horizontal: HorizontalAlignment;
|
||||
vertical: VerticalAlignment;
|
||||
wrap_text: boolean;
|
||||
}
|
||||
|
||||
export interface CellStyle {
|
||||
read_only: boolean;
|
||||
quote_prefix: boolean;
|
||||
fill: CellStyleFill;
|
||||
font: CellStyleFont;
|
||||
border: CellStyleBorder;
|
||||
num_fmt: string;
|
||||
alignment?: Alignment;
|
||||
}
|
||||
Reference in New Issue
Block a user