Tighten TypeScript definitions for shape configs

This commit is contained in:
Jason O'Neill 2021-06-01 00:48:02 -07:00
parent 501c73bf57
commit 87c4f1f332
6 changed files with 12 additions and 12 deletions

View File

@ -6,7 +6,7 @@ import { _registerNode } from '../Global';
import { Path } from './Path'; import { Path } from './Path';
export interface ArrowConfig extends LineConfig { export interface ArrowConfig extends LineConfig {
points: number[]; points: [number, number, number, number, number, number];
tension?: number; tension?: number;
closed?: boolean; closed?: boolean;
pointerLength?: number; pointerLength?: number;

View File

@ -176,10 +176,10 @@ Label.prototype.className = 'Label';
_registerNode(Label); _registerNode(Label);
export interface TagConfig extends ShapeConfig { export interface TagConfig extends ShapeConfig {
pointerDirection?: string; pointerDirection?: "up" | "right" | "left" | "down" | "none";
pointerWidth?: number; pointerWidth?: number;
pointerHeight?: number; pointerHeight?: number;
cornerRadius?: number | Array<number>; cornerRadius?: number | [number] | [number, number] | [number, number, number] | [number, number, number, number];
} }
/** /**

View File

@ -51,7 +51,7 @@ function expandPoints(p, tension) {
} }
export interface LineConfig extends ShapeConfig { export interface LineConfig extends ShapeConfig {
points?: number[]; points?: [number, number, number, number, number, number];
tension?: number; tension?: number;
closed?: boolean; closed?: boolean;
bezier?: boolean; bezier?: boolean;

View File

@ -5,7 +5,7 @@ import { _registerNode } from '../Global';
import { GetSet } from '../types'; import { GetSet } from '../types';
import { getNumberOrArrayOfNumbersValidator } from '../Validators'; import { getNumberOrArrayOfNumbersValidator } from '../Validators';
export interface RectConfig extends ShapeConfig { export interface RectConfig extends ShapeConfig {
cornerRadius?: number | number[]; cornerRadius?: number | [number] | [number, number] | [number, number, number] | [number, number, number, number];
} }
/** /**

View File

@ -24,15 +24,15 @@ export interface TextConfig extends ShapeConfig {
text?: string; text?: string;
fontFamily?: string; fontFamily?: string;
fontSize?: number; fontSize?: number;
fontStyle?: string; fontStyle?: "normal" | "bold" | "italic" | "italic bold" | "bold italic";
fontVariant?: string; fontVariant?: "normal" | "small-caps";
textDecoration?: string; textDecoration?: "line-through" | "underline" | "line-through underline" | "underline line-through";
align?: string; align?: "left" | "center" | "right";
verticalAlign?: string; verticalAlign?: "top" | "middle" | "bottom";
padding?: number; padding?: number;
lineHeight?: number; lineHeight?: number;
letterSpacing?: number; letterSpacing?: number;
wrap?: string; wrap?: "word" | "char" | "none";
ellipsis?: boolean; ellipsis?: boolean;
} }

View File

@ -13,7 +13,7 @@ export interface TextPathConfig extends ShapeConfig {
data?: string; data?: string;
fontFamily?: string; fontFamily?: string;
fontSize?: number; fontSize?: number;
fontStyle?: string; fontStyle?: "normal" | "bold" | "italic" | "italic bold" | "bold italic";
letterSpacing?: number; letterSpacing?: number;
} }