/** The core value converter */ export interface IValueConverter { /** convert TFrom to TTo */ convert?: IOneWayValueConverter; /** convert TTo to TFrom */ convertBack?: IOneWayValueConverter; } /** The core one way value converter */ export declare type IOneWayValueConverter = (from: TFrom) => TTo; /** The core 'text' input value converter (always requires a string ) */ export interface IInputValueConverter extends IValueConverter { } /** The core 'checkbox' input value converter (always requires a boolean) */ export declare class CheckboxValueConverter implements IValueConverter { private trueValue; private falseValue; constructor(trueValue: TDataPropValue, falseValue: TDataPropValue); convert(data: TDataPropValue): boolean; convertBack(value: boolean): TDataPropValue; } /** The Default pass-through Value converter */ export declare class DefaultValueConverter implements IInputValueConverter { convert(data: string): string; convertBack(value: string): string; static instance: DefaultValueConverter; } export interface INumericOptions { /** allow negative values? */ allowNegative?: boolean; /** number of decimals */ decimals?: number; /** min value */ min?: number; /** max value */ max?: number; /** range step */ step?: number; } /** A Numeric Value converter to handle converting typed text to a number */ export declare class NumericValueConverter implements IInputValueConverter { private options?; constructor(options?: INumericOptions); convert(data: number): string; convertBack(value: string): number; static instance: NumericValueConverter; } export declare class MultipleNumericValueConverter implements IValueConverter { private static converter; convert(data: number[]): string[]; convertBack(value: string[]): number[]; static instance: MultipleNumericValueConverter; }