import { Action } from '../actions'; import { AbstractControlState } from '../state'; export declare type ProjectFn = (t: T) => T; export declare type ProjectFn2 = (t: T, k: K) => T; export declare function abstractControlReducer(state: AbstractControlState, action: Action): AbstractControlState; export declare function compose(...fns: ((t: T) => T)[]): (t: T) => T; export declare function ensureState(state: TState | undefined): TState;