import { Lookup } from "../../Collections";
import { IActivityHandler, IActivityContext } from "../../IActivityHandler";
/** Defines inputs to the ForEach activity. */
export interface ForEachInputs<T> {
    /** A collection of items to iterate over. */
    items: T[] | Lookup<T>;
    /** Whether or not to continue processing items. */
    exit?: boolean;
}
/** Defines outputs to the ForEach activity. */
export interface ForEachOutputs<T> {
    /** The key of the item currently being processed. */
    key?: string;
    /** The pass that the loop is on, if looping. */
    pass?: number;
    /** The count of the items. */
    count?: number;
    /** The current item from the items collection */
    item?: T;
}
export declare class ForEach implements IActivityHandler {
    static action: string;
    static suite: string;
    /** Carries out the functionality for the ForEach activity. */
    execute<T>(inputs: ForEachInputs<T>, context: IActivityContext): ForEachOutputs<T>;
}
