2022-06-05 02:24:14 +02:00
|
|
|
import { Store, UIEventSource } from "../../Logic/UIEventSource"
|
2021-06-10 01:36:20 +02:00
|
|
|
import BaseUIElement from "../BaseUIElement"
|
2020-08-31 02:59:47 +02:00
|
|
|
|
2022-06-05 02:24:14 +02:00
|
|
|
export interface ReadonlyInputElement<T> extends BaseUIElement {
|
|
|
|
GetValue(): Store<T>
|
2022-06-06 19:37:22 +02:00
|
|
|
IsValid(t: T): boolean
|
2022-06-05 02:24:14 +02:00
|
|
|
}
|
2021-09-09 00:05:51 +02:00
|
|
|
|
2022-06-05 02:24:14 +02:00
|
|
|
export abstract class InputElement<T> extends BaseUIElement implements ReadonlyInputElement<any> {
|
2021-09-09 00:05:51 +02:00
|
|
|
abstract GetValue(): UIEventSource<T>
|
|
|
|
abstract IsValid(t: T): boolean
|
2020-07-23 17:32:18 +02:00
|
|
|
}
|