import { Rule } from '../interfaces/rule';
import { FormRulesSettings } from './form-rules-settings';
export declare class FormRulesExecutor {
    formContainerSelector: string | null;
    formContainer: HTMLElement | null;
    ruleSettings: FormRulesSettings;
    hiddenFields: string[];
    skipFields: string[];
    formRules: Rule[];
    pages: any[];
    fieldsContainer: HTMLElement | Element | null;
    formContainerMap: Map<any, any>;
    private iterationsMaxCount;
    private updateFields;
    private fieldContainerSelector;
    private separatorSelector;
    private skipFieldsSelector;
    private hiddenFieldsSelector;
    constructor(container: HTMLDivElement, updateFields: (args: {
        show?: string;
        hide?: string;
        skip?: string;
        unSkip?: string;
    }) => void);
    process(): void;
    getFormContainerSelector(): string | null;
    private _init;
    private _hasRules;
    private _evaluateFormRules;
    private _updateContext;
    private _getRulesActionsState;
    private _applyActionsState;
    private _evaluateConditions;
    private _initializeFormRules;
    private _filterConflictingRuleActions;
    private _contextInitialization;
    private _fieldsInitialization;
    private _getFormRulesFields;
    private _updateSkipPages;
    private _skipField;
    private _unskipField;
    private _actionItemIndexOf;
    private _getContextField;
    private _getFieldElement;
    private _showField;
    private _hideField;
    private _getFieldType;
    private _getFieldValues;
    private _getFieldContainer;
    private _getFieldPageContainer;
    private _getFieldPageContainerIndex;
    private _fieldIndexOf;
    private _getExecutedActions;
    private _setExecutedActions;
    private _getHiddenFields;
    private _setHiddenFields;
    private _getSkipFields;
    private _setSkipFields;
    private _createArrayFromCsvValue;
    private _arrayIndexOf;
    private _compareArrays;
    private _getFieldStartSelector;
    private _getFieldEndSelector;
}
