import { FormMetadata } from "../../../utils/form/FormMetadata";
import { AnyAction } from "redux";
import { Tab } from "../../ez-tabselector/ez-tabselector";
import { IFormSheetMetadata } from "../../../utils/form/interfaces";
export declare function formReducer(state: FormState, action: AnyAction): any;
export declare function loadMetadata(formMetadata: FormMetadata): AnyAction;
export declare function changeTab(currentSheet: Tab | string): {
  type: FormActions;
  payload: string;
};
export declare function selectFormMetadata(state: FormState): FormMetadata;
export declare function selectCurrentSheetId(state: FormState): string;
export declare function selectCurrentSheet(state: FormState): IFormSheetMetadata;
declare enum FormActions {
  METADATA_LOADED = "FORM/METADATA_LOADED",
  CHANGE_TAB = "FORM/CHANGE_TAB"
}
interface FormState {
  formMetadata?: FormMetadata;
  currentSheet?: string;
  collapsedGroups?: Map<string, Array<string>>;
  invalidFields?: Map<string, ValidationInfo>;
}
interface ValidationInfo {
  message: string;
}
export {};
