import { AnyTransformerDefinition, BooleanTransformerDefinition, ClampTransformerDefinition, FormulaTransformerDefinition, ITransformer, InlineTransform, MapTransformerDefinition, RoundTransformerDefinition, ScaleTransformerDefinition, TransformContext, TransformDirection } from './transformer.types'; declare abstract class BaseTransformer implements ITransformer { protected direction: TransformDirection; constructor(direction?: TransformDirection); abstract read(value: unknown, context?: TransformContext): unknown; abstract write(value: unknown, context?: TransformContext): unknown; canRead(): boolean; canWrite(): boolean; protected toNumber(value: unknown, fallback?: number): number; protected toStringKey(value: unknown): string; } export declare class ScaleTransformer extends BaseTransformer { private inputMin; private inputMax; private outputMin; private outputMax; constructor(definition: ScaleTransformerDefinition); read(value: unknown, _context?: TransformContext): number; write(value: unknown, _context?: TransformContext): number; private scale; } export declare class MapTransformer extends BaseTransformer { private readMap; private writeMap; private writeFormulaFn; private static readonly ALLOWED_MATH_FUNCTIONS; constructor(definition: MapTransformerDefinition); read(value: unknown, _context?: TransformContext): unknown; write(value: unknown, _context?: TransformContext): unknown; private compileWriteFormula; } export declare class FormulaTransformer extends BaseTransformer { private readFormula; private writeFormula; private static readonly ALLOWED_MATH_FUNCTIONS; private static readonly FORBIDDEN_PATTERNS; constructor(definition: FormulaTransformerDefinition); read(value: unknown, _context?: TransformContext): unknown; write(value: unknown, _context?: TransformContext): unknown; private validateFormula; private compileFormula; } export declare class BooleanTransformer extends BaseTransformer { private trueValue; private falseValue; private invert; constructor(definition: BooleanTransformerDefinition); read(value: unknown, _context?: TransformContext): boolean; write(value: unknown, _context?: TransformContext): unknown; private coerceBoolean; } export declare class ClampTransformer extends BaseTransformer { private min; private max; constructor(definition: ClampTransformerDefinition); read(value: unknown, _context?: TransformContext): number; write(value: unknown, _context?: TransformContext): number; private clamp; } export declare class RoundTransformer extends BaseTransformer { private precision; private multiplier; constructor(definition: RoundTransformerDefinition); read(value: unknown, _context?: TransformContext): number; write(value: unknown, _context?: TransformContext): number; private round; } export declare class PassthroughTransformer extends BaseTransformer { constructor(direction?: TransformDirection); read(value: unknown, _context?: TransformContext): unknown; write(value: unknown, _context?: TransformContext): unknown; } export declare class CompositeTransformer extends BaseTransformer { private transformers; constructor(transformers: ITransformer[], direction?: TransformDirection); read(value: unknown, context?: TransformContext): unknown; write(value: unknown, context?: TransformContext): unknown; } export declare function createTransformer(definition: AnyTransformerDefinition): ITransformer; export declare function createInlineTransformer(transform: InlineTransform): ITransformer; export {};