import { ShuttleState } from "../hooks/useShuttleState";
export type MOVE_SELECTION_REDUCER_ACTION = {
  type?: "MOVE_ALL",
  from?: "source" | "target",
  to?: "source" | "target",
  ...
};
/**
 * Compact an array safely and in-place. This function works
 * in conjunction with `shuttleAll`.
 */
declare export var compact: (list: number[], source: any[]) => any[];
/**
 * Shuttle all items from one array to another array. Specify blacklisted item indexes
 * to prevent those from being moved.
 */
declare export var shuttleAll: (
  from: any[],
  to: any[],
  disabled: Set<any>
) => any[];
declare export var moveAll: (
  state: ShuttleState,
  action?: MOVE_SELECTION_REDUCER_ACTION
) => ShuttleState;
