///
import LightqueryCollection from "../LightqueryCollection";
export type DomElementType = Element|DocumentFragment|Document|Window;
export type DomElements = DomElementType|NodeList|HTMLCollection|Iterable;
export type ElementOrLightquery = DomElementType|LightqueryCollection;
export type ElementsOrLightquery = DomElements|LightqueryCollection;
export type Callback = () => R;
export type GenericCallback = (arg: T) => R;
export type GenericReducer = (acc: Acc, el: El) => Acc;
// export type EventListener = GenericCallback;
export type ElementCallback = GenericCallback;
export type ElementsCallback = GenericCallback, R>;
export type LightqueryCollectionCallback = GenericCallback;
export type MapperFunction = GenericCallback;
export type Predicate = GenericCallback;
export type ElementMapper = MapperFunction;
export type ElementReducer = GenericReducer;
export type Selector = string|DomElements|Callback;
export type PluginType = "global"|"instance";