import { Type } from '@angular/core'; import { Jsonified } from '@tangential/core'; import { StampedMediaType, StampedMediaTypeJson } from '@tangential/media-types'; import { ConfigurableInputIval } from './configurable-input-ival'; export interface ConfigurableInputTypeJson extends StampedMediaTypeJson { _inputTypeKey?: string; defaultValue?: any; } export declare abstract class ConfigurableInputType extends StampedMediaType implements Jsonified, ConfigurableInputTypeJson { static $model: ConfigurableInputTypeJson; static TYPE_NAME: string; defaultValue?: any; _inputTypeKey?: string; constructor(config: any, key?: string); abstract getInputTypeKey(): string; abstract isNumeric(): boolean; abstract createValue(valueConfig?: any, key?: string): ConfigurableInputIval; static register(inputTypeCtor: Type): void; static create(typeConfig: ConfigurableInputTypeJson, key?: string, inputTypeKey?: string): any; }