import { CompositionEventHandler } from 'react'; import { FieldModel } from './models/field'; export declare function multi(...funcs: ((t: T) => R)[]): (t: T) => void; export declare function useMulti(func1: (t: T) => R, func2: (t: T) => R, deps?: any[]): (t: T) => void; export declare function useMulti(func1: (t: T) => R, func2: (t: T) => R, func3: (t: T) => R, deps?: any[]): (t: T) => void; export declare function useMulti(func1: (t: T) => R, func2: (t: T) => R, func3: (t: T) => R, func4: (t: T) => R, deps?: any[]): (t: T) => void; export declare function useMulti(func1: (t: T) => R, func2: (t: T) => R, func3: (t: T) => R, func4: (t: T) => R, func5: (t: T) => R, deps?: any[]): (t: T) => void; export declare function useMulti(func1: (t: T) => R, func2: (t: T) => R, func3: (t: T) => R, func4: (t: T) => R, func5: (t: T) => R, func6: (t: T) => R, deps?: any[]): (t: T) => void; export declare function useMulti(func1: (t: T) => R, func2: (t: T) => R, func3: (t: T) => R, func4: (t: T) => R, func5: (t: T) => R, func6: (t: T) => R, func7: (t: T) => R, deps?: any[]): (t: T) => void; export declare function useMulti(func1: (t: T) => R, func2: (t: T) => R, func3: (t: T) => R, func4: (t: T) => R, func5: (t: T) => R, func6: (t: T) => R, func7: (t: T) => R, func8: (t: T) => R, deps?: any[]): (t: T) => void; export declare type Func = (...args: Args) => R; export declare type Middleware = (next: F) => F; export declare function compose(...middlewares: Middleware[]): (target: Target) => Target; export declare function useMAppend(...fns: ((t: T) => void)[]): (t: T) => void; export declare function usePipe(fn0: (t0: T0) => T1, fn1: (t1: T1) => T2, deps?: any[]): (t0: T0) => T2; export declare function usePipe(fn0: (t0: T0) => T1, fn1: (t1: T1) => T2, fn2: (t2: T2) => T3, deps?: any[]): (t0: T0) => T3; export declare function usePipe(fn0: (t0: T0) => T1, fn1: (t1: T1) => T2, fn2: (t2: T2) => T3, fn3: (t3: T3) => T4, deps?: any[]): (t0: T0) => T4; export declare function usePipe(fn0: (t0: T0) => T1, fn1: (t1: T1) => T2, fn2: (t2: T2) => T3, fn3: (t3: T3) => T4, fn4: (t4: T4) => T5, deps?: any[]): (t0: T0) => T5; export declare function usePipe(fn0: (t0: T0) => T1, fn1: (t1: T1) => T2, fn2: (t2: T2) => T3, fn3: (t3: T3) => T4, fn4: (t4: T4) => T5, fn5: (t5: T5) => T6, deps?: any[]): (t0: T0) => T6; export declare function usePipe(fn0: (t0: T0) => T1, fn1: (t1: T1) => T2, fn2: (t2: T2) => T3, fn3: (t3: T3) => T4, fn4: (t4: T4) => T5, fn5: (t5: T5) => T6, fn6: (t6: T6) => T7, deps?: any[]): (t0: T0) => T7; export declare function usePipe(fn0: (t0: T0) => T1, fn1: (t1: T1) => T2, fn2: (t2: T2) => T3, fn3: (t3: T3) => T4, fn4: (t4: T4) => T5, fn5: (t5: T5) => T6, fn6: (t6: T6) => T7, fn7: (t7: T7) => T8, deps?: any[]): (t0: T0) => T8; export declare function useChangeHandler(model: FieldModel, option?: number, callback?: (value: Value) => void): (value: Value) => void; export declare const makeChangeHandler: typeof useChangeHandler; export interface ICompositionHandlers { onCompositionStart: CompositionEventHandler; onCompositionEnd: CompositionEventHandler; } export declare function useCompositionHandler(model: FieldModel, callbacks?: Partial>): ICompositionHandlers;