scriptable-testlab
Version:
A lightweight, efficient tool designed to manage and update scripts for Scriptable.
67 lines (64 loc) • 1.92 kB
text/typescript
import { AbsWidgetText } from 'scriptable-abstract';
/**
* Represents the text alignment options.
*/
type TextAlignment = 'left' | 'center' | 'right' | 'default';
/**
* Represents the state of a widget text element.
*/
interface WidgetTextMockState {
readonly text: string;
readonly textColor: Color;
readonly font: Font;
readonly textOpacity: number;
readonly lineLimit: number;
readonly minimumScaleFactor: number;
readonly shadowColor: Color;
readonly shadowRadius: number;
readonly shadowOffset: Readonly<Point>;
readonly url: string;
readonly alignment: TextAlignment;
}
/**
* Mock implementation of Scriptable's WidgetText.
* Provides a text element for displaying text in widgets.
*/
declare class MockWidgetText extends AbsWidgetText<WidgetTextMockState> {
/**
* Creates a new widget text element with the specified text.
*/
constructor(text: string);
/**
* Creates a new widget text instance.
*/
static create(text: string): WidgetText;
get text(): string;
set text(value: string);
get textColor(): Color;
set textColor(value: Color);
get font(): Font;
set font(value: Font);
get textOpacity(): number;
set textOpacity(value: number);
get lineLimit(): number;
set lineLimit(value: number);
get minimumScaleFactor(): number;
set minimumScaleFactor(value: number);
get shadowColor(): Color;
set shadowColor(value: Color);
get shadowRadius(): number;
set shadowRadius(value: number);
get shadowOffset(): Point;
set shadowOffset(value: Point);
get url(): string;
set url(value: string);
leftAlignText(): void;
centerAlignText(): void;
rightAlignText(): void;
/**
* Gets the current text alignment.
* @returns The current text alignment value.
*/
getAlignment(): TextAlignment;
}
export { MockWidgetText };