import { ALL_VNODES, COMPONENTS_AND_ELEMENTS, IterationOptions, IterationOptions as IterationOptions$1, SKIP_COMMENTS, countChildren, extractSingleChild, getText, getType, isComment, isComponent, isElement, isEmpty, isFragment, isFunctionalComponent, isStatefulComponent, isStatic, isText } from "@skirtle/vue-vnode-utils";
import { VNode, VNodeArrayChildren } from "vue";

//#region src/with-meta/iterators.d.ts
type IterationMeta = {
  readonly index: number;
  readonly length: number;
};
declare const addProps: (children: VNodeArrayChildren, callback: (vnode: VNode, meta: IterationMeta) => (Record<string, unknown> | null | void), options?: IterationOptions$1) => VNodeArrayChildren;
declare const replaceChildren: (children: VNodeArrayChildren, callback: (vnode: VNode, meta: IterationMeta) => (VNode | VNodeArrayChildren | string | number | void), options?: IterationOptions$1) => VNodeArrayChildren;
declare const betweenChildren: (children: VNodeArrayChildren, callback: (previousVNode: VNode, nextVNode: VNode, meta: IterationMeta) => (VNode | VNodeArrayChildren | string | number | void), options?: IterationOptions$1) => VNodeArrayChildren;
declare const someChild: (children: VNodeArrayChildren, callback: (vnode: VNode, meta: IterationMeta) => unknown, options?: IterationOptions$1) => boolean;
declare const everyChild: (children: VNodeArrayChildren, callback: (vnode: VNode, meta: IterationMeta) => unknown, options?: IterationOptions$1) => boolean;
declare const eachChild: (children: VNodeArrayChildren, callback: (vnode: VNode, meta: IterationMeta) => void, options?: IterationOptions$1) => void;
declare const findChild: (children: VNodeArrayChildren, callback: (vnode: VNode, meta: IterationMeta) => unknown, options?: IterationOptions$1) => (VNode | undefined);
declare const reduceChildren: <R>(children: VNodeArrayChildren, callback: (previousValue: R, vnode: VNode, meta: IterationMeta) => R, initialValue: R, options?: IterationOptions$1) => R;
//#endregion
export { ALL_VNODES, COMPONENTS_AND_ELEMENTS, type IterationMeta, type IterationOptions, SKIP_COMMENTS, addProps, betweenChildren, countChildren, eachChild, everyChild, extractSingleChild, findChild, getText, getType, isComment, isComponent, isElement, isEmpty, isFragment, isFunctionalComponent, isStatefulComponent, isStatic, isText, reduceChildren, replaceChildren, someChild };