import { Subject } from 'rxjs';
import { FormPiecePropagate } from './piece-propagate';
import { FormAction } from './action';
import { RecordFormSubSection } from './subsection';
export declare class RecordFormSection extends FormPiecePropagate {
    private readonly _activation;
    private readonly _inactivation;
    private _active;
    private _sectionId;
    private _sectionCode;
    private _sectionTitle;
    private _subSections;
    private _subSectionsObj;
    private _exclusiveSubSectionsByAttr;
    constructor(sectionReceived: any, formObject: any, formConfig: any);
    get code(): string;
    get activation(): Subject<string>;
    get inactivation(): Subject<string>;
    get active(): boolean;
    get sectionId(): string;
    get sectionCode(): string;
    get sectionTitle(): string;
    get subSections(): RecordFormSubSection[];
    get subSectionsObj(): any;
    set active(active: boolean);
    set sectionId(sectionId: string);
    set sectionCode(sectionCode: string);
    set sectionTitle(sectionTitle: string);
    set subSections(subSections: RecordFormSubSection[]);
    set subSectionsObj(subSectionsObj: any);
    activate(): void;
    inactivate(): void;
    get title(): string;
    set title(title: string);
    getVisibleSubsections(state: any): RecordFormSubSection[];
    getSubsection(subSectionCode: any): any;
    activateSubSection(subSectionCode: any): void;
    getFields(): any[];
    getActions(): FormAction[];
    getActionNames(): string[];
    getFieldNames(): string[];
    getField(name: any): any;
    formStateChangeCustomSubscribe(form: any, formChangeSubject: any): void;
}
