import { ArrayMapper, MapValueMapper, NodeListElementMapper, ObjectMapper, SetMapper } from './map';
export declare type ArrayConsumer = ArrayMapper;
export declare type ObjectConsumer = ObjectMapper;
export declare type SetConsumer = SetMapper;
export declare type MapValueConsumer = MapValueMapper;
export declare type NodeListElementConsumer = NodeListElementMapper;
export declare namespace foreachs {
function array(xs: A[], f: ArrayConsumer): void;
function object(x: A, f: ObjectConsumer): void;
function set(xs: Set, f: SetConsumer): void;
function map(xs: Map, f: MapValueConsumer): void;
function nodeList(xs: NodeListOf | HTMLCollectionOf, f: NodeListElementConsumer): void;
function any(o: any, f: (a: any) => void): void;
}
export declare const foreach_array: typeof foreachs.array;
export declare const foreach_object: typeof foreachs.object;
export declare const foreach_set: typeof foreachs.set;
export declare const foreach_map: typeof foreachs.map;
export declare const foreach_nodeList: typeof foreachs.nodeList;
export declare const foreach_any: typeof foreachs.any;