mapcomplete/Customizations/UIElementConstructor.ts

29 lines
699 B
TypeScript
Raw Normal View History

2020-07-12 23:19:05 +02:00
import {UIElement} from "../UI/UIElement";
import {UIEventSource} from "../Logic/UIEventSource";
import Translation from "../UI/i18n/Translation";
2020-07-12 23:19:05 +02:00
export interface Dependencies {
tags: UIEventSource<any>
}
2020-07-12 23:19:05 +02:00
export interface TagDependantUIElementConstructor {
construct(dependencies: Dependencies): TagDependantUIElement;
IsKnown(properties: any): boolean;
IsQuestioning(properties: any): boolean;
Priority(): number;
GetContent(tags: any): Translation;
2020-07-12 23:19:05 +02:00
}
export abstract class TagDependantUIElement extends UIElement {
abstract IsKnown(): boolean;
abstract IsQuestioning(): boolean;
abstract Priority() : number;
2020-07-25 01:07:02 +02:00
abstract IsSkipped() : boolean;
2020-07-12 23:19:05 +02:00
}