import { SmzCalendarControl, SmzCheckBoxControl, SmzCheckBoxGroupControl, SmzColorPickerControl, SmzContentMaskControl, SmzCurrencyControl, SmzDropDownControl, SmzFileControl, SmzLinkedDropDownControl, SmzLinkedMultiSelectControl, SmzListControl, SmzMaskControl, SmzMultiSelectControl, SmzNumberControl, SmzPasswordControl, SmzRadioControl, SmzSwitchControl, SmzTagAreaControl, SmzTextAreaControl, SmzTextControl, SmzTextButtonControl, SmzTreeControl, SmzAutocompleteTagAreaControl } from '../../modules/smz-forms/models/control-types';
import { ParentEntity, SimpleEntity, SimpleParentEntity } from '../../common/models/simple-named-entity';
import { SmzFormBuilder } from './form-builder';
import { SmzFormGroup, SmzFormsResponse } from '../../modules/smz-forms/models/smz-forms';
import { SmzFormsBaseControl } from '../../modules/smz-forms/models/controls';
import { ValidatorFn } from '@angular/forms';
import { SmzTextPattern } from '../../modules/smz-forms/models/text-patterns';
import { SmzFormViewdata } from '../../modules/smz-forms/models/form-viewdata';
import { Observable } from 'rxjs';
import { SmzBuilderUtilities } from '../common/smz-builder-utilities';
import { SmzDataSourceTreeBuilder } from '../smz-trees/data-source-tree-builder';
import { SmzTreeNodeUtilityBuilder } from '../smz-trees/tree-nodes-utility-builder';
import { SmzTreeNode } from '../../modules/smz-trees/models/tree-node';
import { SmzSmartTagData } from '../../modules/smz-forms/directives/smart-tag.directive';
export declare class SmzFormGroupBuilder<TResponse> extends SmzBuilderUtilities<SmzFormGroupBuilder<TResponse>> {
    _formBuilder: SmzFormBuilder<TResponse>;
    group: SmzFormGroup;
    protected that: this;
    private defaultConfig;
    constructor(_formBuilder: SmzFormBuilder<TResponse>, group: SmzFormGroup);
    setLayout(breakpoint: 'EXTRA_SMALL' | 'SMALL' | 'MEDIUM' | 'LARGE' | 'EXTRA_LARGE', colType?: 'col-1' | 'col-2' | 'col-3' | 'col-4' | 'col-5' | 'col-6' | 'col-7' | 'col-8' | 'col-9' | 'col-10' | 'col-11' | 'col-12'): SmzFormGroupBuilder<TResponse>;
    customizeStyles(styleClass: string): SmzFormGroupBuilder<TResponse>;
    customizeInputStyles(styleClass: string): SmzFormGroupBuilder<TResponse>;
    hide(): SmzFormGroupBuilder<TResponse>;
    reorder(...properties: string[]): SmzFormGroupBuilder<TResponse>;
    calendar(property: string, label?: string, defaultValue?: Date): SmzFormCalendarBuilder<TResponse>;
    checkbox(property: string, label?: string, defaultValue?: boolean): SmzFormCheckboxBuilder<TResponse>;
    checkboxGroup<T>(property: string, label: string, options: SimpleEntity<T>[], defaultValue?: T[]): SmzFormCheckboxGroupBuilder<T, TResponse>;
    dropdown<T>(property: string, label?: string, options?: SimpleEntity<T>[], defaultValue?: T): SmzFormDropdownBuilder<T, TResponse>;
    linkedDropdown<T>(property: string, dependsOn: string, label?: string, options?: SimpleParentEntity<T>[], defaultValue?: T): SmzFormLinkedDropdownBuilder<T, TResponse>;
    multiselect<T>(property: string, label?: string, options?: SimpleEntity<T>[], defaultValue?: T[]): SmzFormMultiselectBuilder<T, TResponse>;
    linkedMultiselect<T>(property: string, dependsOn: string, label?: string, options?: SimpleParentEntity<T>[], defaultValue?: T[]): SmzFormLinkedMultiselectBuilder<T, TResponse>;
    colorPicker(property: string, label?: string, defaultValue?: string): SmzFormColorPickerBuilder<TResponse>;
    currency(property: string, label?: string, defaultValue?: string): SmzFormCurrencyBuilder<TResponse>;
    number(property: string, label?: string, defaultValue?: number): SmzFormNumberBuilder<TResponse>;
    radioGroup<T>(property: string, label?: string, options?: SimpleEntity<T>[], defaultValue?: T): SmzFormRadioGroupBuilder<T, TResponse>;
    switch(property: string, label?: string, defaultValue?: boolean): SmzFormSwitchBuilder<TResponse>;
    textArea(property: string, label?: string, defaultValue?: string): SmzFormTextAreaBuilder<TResponse>;
    contentMask(property: string, label?: string, defaultValue?: string): SmzFormContentMaskBuilder<TResponse>;
    tagArea(property: string, label: string, defaultValue?: string): SmzFormTagAreaBuilder<TResponse>;
    autocompleteTagArea(property: string, label: string, defaultValue?: string): SmzFormAutocompleteTagAreaBuilder<TResponse>;
    text(property: string, label?: string, defaultValue?: string): SmzFormTextBuilder<TResponse>;
    textButton(property: string, label?: string, defaultValue?: string, callback?: (data: SmzFormsResponse<unknown>, utils: SmzFormViewdata) => Observable<{
        isValid: boolean;
        messages?: string[];
    }>): SmzFormTextButtonBuilder<TResponse>;
    file(property: string, label?: string): SmzFormFileBuilder<TResponse>;
    list(property: string, label?: string, defaultValue?: string[] | number[]): SmzFormListBuilder<TResponse>;
    mask(property: string, label?: string, defaultValue?: string): SmzFormMaskBuilder<TResponse>;
    password(property: string, label?: string, defaultValue?: string): SmzFormPasswordBuilder<TResponse>;
    addPasswordConfirmation(property: string, label?: string): SmzFormPasswordBuilder<TResponse>;
    tree<T>(property: string, label?: string): SmzFormTreeBuilder<T, TResponse>;
    get form(): SmzFormBuilder<TResponse>;
}
export declare class SmzFormInputBuilder<TInput, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _input;
    protected that: TInput;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _input: SmzFormsBaseControl);
    setLayout(breakpoint: 'EXTRA_SMALL' | 'SMALL' | 'MEDIUM' | 'LARGE' | 'EXTRA_LARGE', colType?: 'col-1' | 'col-2' | 'col-3' | 'col-4' | 'col-5' | 'col-6' | 'col-7' | 'col-8' | 'col-9' | 'col-10' | 'col-11' | 'col-12'): TInput;
    customizeStyles(styleClass: string): TInput;
    hide(condition?: boolean): TInput;
    hideLabel(): TInput;
    disable(condition?: boolean): TInput;
    excludeFromResponse(): TInput;
    overrideResponseFormat(format: 'AppendIdSuffix' | 'IdOnly' | 'Raw'): TInput;
    setVisibilityCondition(inputDependencyName: string, reversed: boolean, conditions?: any[]): TInput;
    setVisibilityFunction(callback: (formValues: TResponse) => boolean): TInput;
    addDataDependency(inputDependencyName: string, condition: 'some' | 'none', matchValues: any[], callback: (control: SmzFormsBaseControl) => void): TInput;
    validators(): SmzFormInputValidatorBuilder<TInput, TResponse>;
    placeAt(position: 'after' | 'before', propertyName: string): TInput;
    get group(): SmzFormGroupBuilder<TResponse>;
}
export declare class SmzFormCalendarBuilder<TResponse> extends SmzFormInputBuilder<SmzFormCalendarBuilder<TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _calendarInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _calendarInput: SmzCalendarControl);
    enableTouchUI(): SmzFormCalendarBuilder<TResponse>;
    setDateFormat(format: string): SmzFormCalendarBuilder<TResponse>;
    useTodayAsDefaultValue(): SmzFormCalendarBuilder<TResponse>;
    useTimeOnly(): SmzFormCalendarBuilder<TResponse>;
    useDateAndTime(): SmzFormCalendarBuilder<TResponse>;
}
export declare class SmzFormCheckboxBuilder<TResponse> extends SmzFormInputBuilder<SmzFormCheckboxBuilder<TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _checkboxInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _checkboxInput: SmzCheckBoxControl);
    useLabel(label: string): SmzFormCheckboxBuilder<TResponse>;
    get group(): SmzFormGroupBuilder<TResponse>;
}
export declare class SmzFormColorPickerBuilder<TResponse> extends SmzFormInputBuilder<SmzFormColorPickerBuilder<TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _colorPickerInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _colorPickerInput: SmzColorPickerControl);
}
export declare class SmzFormCurrencyBuilder<TResponse> extends SmzFormInputBuilder<SmzFormCurrencyBuilder<TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _currencyInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _currencyInput: SmzCurrencyControl);
}
export declare class SmzFormSwitchBuilder<TResponse> extends SmzFormInputBuilder<SmzFormSwitchBuilder<TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _switchInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _switchInput: SmzSwitchControl);
}
export declare class SmzFormCheckboxGroupBuilder<T, TResponse> extends SmzFormInputBuilder<SmzFormCheckboxGroupBuilder<T, TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _checkboxGroupInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _checkboxGroupInput: SmzCheckBoxGroupControl<T>);
    addOption(option: SimpleEntity<T>): SmzFormCheckboxGroupBuilder<T, TResponse>;
}
export declare class SmzFormDropdownBuilder<T, TResponse> extends SmzFormInputBuilder<SmzFormDropdownBuilder<T, TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _dropdownInput;
    protected that: this;
    private _groupReactions;
    private _valueReactions;
    private _statusReactions;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _dropdownInput: SmzDropDownControl<T>);
    addOption(option: SimpleEntity<T>): SmzFormDropdownBuilder<T, TResponse>;
    showFilter(): SmzFormDropdownBuilder<T, TResponse>;
    autofocusFilter(): SmzFormDropdownBuilder<T, TResponse>;
    showClear(): SmzFormDropdownBuilder<T, TResponse>;
    addValueReaction<TOption>(propertyName: string, newValue: (option: TOption) => string): SmzFormDropdownBuilder<T, TResponse>;
    addStatusReaction<TOption>(propertyName: string, condition: (option: TOption) => boolean): SmzFormDropdownBuilder<T, TResponse>;
    addGroupReaction<TOption>(groupKey: string, visibility: (option: TOption) => boolean): SmzFormDropdownBuilder<T, TResponse>;
    get group(): SmzFormGroupBuilder<TResponse>;
}
export declare class SmzFormLinkedDropdownBuilder<T, TResponse> extends SmzFormInputBuilder<SmzFormLinkedDropdownBuilder<T, TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _linkedDropdownInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _linkedDropdownInput: SmzLinkedDropDownControl<T>);
    addOption(option: SimpleParentEntity<T>): SmzFormLinkedDropdownBuilder<T, TResponse>;
    showFilter(): SmzFormLinkedDropdownBuilder<T, TResponse>;
    autofocusFilter(): SmzFormLinkedDropdownBuilder<T, TResponse>;
    showClear(): SmzFormLinkedDropdownBuilder<T, TResponse>;
}
export declare class SmzFormLinkedMultiselectBuilder<T, TResponse> extends SmzFormInputBuilder<SmzFormLinkedMultiselectBuilder<T, TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _linkedMultiselectInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _linkedMultiselectInput: SmzLinkedMultiSelectControl<T>);
    addOption(option: SimpleParentEntity<T>): SmzFormLinkedMultiselectBuilder<T, TResponse>;
    showFilter(): SmzFormLinkedMultiselectBuilder<T, TResponse>;
    autofocusFilter(): SmzFormLinkedMultiselectBuilder<T, TResponse>;
    showClear(): SmzFormLinkedMultiselectBuilder<T, TResponse>;
}
export declare class SmzFormMultiselectBuilder<T, TResponse> extends SmzFormInputBuilder<SmzFormMultiselectBuilder<T, TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _multiselectInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _multiselectInput: SmzMultiSelectControl<T>);
    addOption(option: SimpleEntity<T>): SmzFormMultiselectBuilder<T, TResponse>;
    showFilter(): SmzFormMultiselectBuilder<T, TResponse>;
    autofocusFilter(): SmzFormMultiselectBuilder<T, TResponse>;
    showClear(): SmzFormMultiselectBuilder<T, TResponse>;
}
export declare class SmzFormRadioGroupBuilder<T, TResponse> extends SmzFormInputBuilder<SmzFormRadioGroupBuilder<T, TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _radioGroupInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _radioGroupInput: SmzRadioControl<T>);
    addOption(option: SimpleEntity<T>): SmzFormRadioGroupBuilder<T, TResponse>;
}
export declare class SmzFormNumberBuilder<TResponse> extends SmzFormInputBuilder<SmzFormNumberBuilder<TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _numberInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _numberInput: SmzNumberControl);
    setFraction(minFractionDigits: number, maxFractionDigits: number): SmzFormNumberBuilder<TResponse>;
    useGrouping(): SmzFormNumberBuilder<TResponse>;
    setLocale(locale: 'pt-BR'): SmzFormNumberBuilder<TResponse>;
}
export declare class SmzFormTextAreaBuilder<TResponse> extends SmzFormInputBuilder<SmzFormTextAreaBuilder<TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _textAreaInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _textAreaInput: SmzTextAreaControl);
    setRows(rows: number): SmzFormTextAreaBuilder<TResponse>;
    setSaveFormat(format: SmzTextPattern): SmzFormTextAreaBuilder<TResponse>;
}
export declare class SmzFormContentMaskBuilder<TResponse> extends SmzFormInputBuilder<SmzFormContentMaskBuilder<TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _contentMaskInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _contentMaskInput: SmzContentMaskControl);
    setRows(rows: number): SmzFormContentMaskBuilder<TResponse>;
    setQuickAction(triggerKeyCode: number, callback: () => {}): SmzFormContentMaskBuilder<TResponse>;
    setInputClass(classStyle: string): SmzFormContentMaskBuilder<TResponse>;
    setTagClass(classStyle: string): SmzFormContentMaskBuilder<TResponse>;
    setVariable(begin: string, end: string): SmzFormContentMaskBuilder<TResponse>;
    exportHtmlNewLine(): SmzFormContentMaskBuilder<TResponse>;
}
export declare class SmzFormTextBuilder<TResponse> extends SmzFormInputBuilder<SmzFormTextBuilder<TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _textInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _textInput: SmzTextControl);
    hideLabel(): SmzFormTextBuilder<TResponse>;
    setSaveFormat(format: SmzTextPattern): SmzFormTextBuilder<TResponse>;
    autoFocus(): SmzFormTextBuilder<TResponse>;
}
export declare class SmzFormTextButtonBuilder<TResponse> extends SmzFormInputBuilder<SmzFormTextButtonBuilder<TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _textButtonInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _textButtonInput: SmzTextButtonControl);
    hideLabel(): SmzFormTextButtonBuilder<TResponse>;
    useLabel(label: string): SmzFormTextButtonBuilder<TResponse>;
    useIcon(icon: string): SmzFormTextButtonBuilder<TResponse>;
    setPlaceholder(placeholder: string): SmzFormTextButtonBuilder<TResponse>;
    setStyle(styleClass: string): SmzFormTextButtonBuilder<TResponse>;
}
export declare class SmzFormFileBuilder<TResponse> extends SmzFormInputBuilder<SmzFormFileBuilder<TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _fileInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _fileInput: SmzFileControl);
    setDefaultFile(base64: string, filename: string, mimetype: string): SmzFormFileBuilder<TResponse>;
    acceptImages(): SmzFormFileBuilder<TResponse>;
    acceptPdf(): SmzFormFileBuilder<TResponse>;
    acceptXlsx(): SmzFormFileBuilder<TResponse>;
    acceptCsv(): SmzFormFileBuilder<TResponse>;
    accept(formats: string): SmzFormFileBuilder<TResponse>;
    useBinaryFormat(): SmzFormFileBuilder<TResponse>;
    maxSize(size: number): SmzFormFileBuilder<TResponse>;
    thumbnailSize(size: string): SmzFormFileBuilder<TResponse>;
    disableZoom(): SmzFormFileBuilder<TResponse>;
    hideFileSize(): SmzFormFileBuilder<TResponse>;
    dragIconClass(className: string): SmzFormFileBuilder<TResponse>;
    inputMessage(message: string): SmzFormFileBuilder<TResponse>;
    maxDisplayName(length: number, separator?: string): SmzFormFileBuilder<TResponse>;
    useGlobalLoader(): SmzFormFileBuilder<TResponse>;
    get group(): SmzFormGroupBuilder<TResponse>;
}
export declare class SmzFormListBuilder<TResponse> extends SmzFormInputBuilder<SmzFormListBuilder<TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _listInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _listInput: SmzListControl);
    addOption(option: string): SmzFormListBuilder<TResponse>;
    showFilter(): SmzFormListBuilder<TResponse>;
    allowBatchCreation(): SmzFormListBuilder<TResponse>;
    height(height: string): SmzFormListBuilder<TResponse>;
    useDialogEditMode(): SmzFormListBuilder<TResponse>;
    hideLabel(): SmzFormListBuilder<TResponse>;
    confirmBeforeRemoveItem(): SmzFormListBuilder<TResponse>;
    setEmptyMessage(message: string): SmzFormListBuilder<TResponse>;
    allowOnlyUniqueData(): SmzFormListBuilder<TResponse>;
    setLimitCount(max: number): SmzFormListBuilder<TResponse>;
    appendNewItemToEnd(): SmzFormListBuilder<TResponse>;
    useFractionNumberInput(label?: string, digits?: number): SmzFormListBuilder<TResponse>;
    useNumberInput(label?: string): SmzFormListBuilder<TResponse>;
    buttons(): SmzFormListButtonsBuilder<TResponse>;
    get group(): SmzFormGroupBuilder<TResponse>;
}
export declare class SmzFormListButtonsBuilder<TResponse> {
    _listBuilder: SmzFormListBuilder<TResponse>;
    private _listInput;
    private _allEnabled;
    constructor(_listBuilder: SmzFormListBuilder<TResponse>, _listInput: SmzListControl);
    add(): SmzFormListButtonsBuilder<TResponse>;
    remove(): SmzFormListButtonsBuilder<TResponse>;
    edit(): SmzFormListButtonsBuilder<TResponse>;
    sort(): SmzFormListButtonsBuilder<TResponse>;
    move(): SmzFormListButtonsBuilder<TResponse>;
    clear(): SmzFormListButtonsBuilder<TResponse>;
    all(): SmzFormListButtonsBuilder<TResponse>;
    get list(): SmzFormListBuilder<TResponse>;
}
export declare class SmzFormMaskBuilder<TResponse> extends SmzFormInputBuilder<SmzFormMaskBuilder<TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _maskInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _maskInput: SmzMaskControl);
    mask(mask: string): SmzFormMaskBuilder<TResponse>;
    characterPattern(pattern: string): SmzFormMaskBuilder<TResponse>;
    exportPattern(pattern: SmzTextPattern): SmzFormMaskBuilder<TResponse>;
    unmask(): SmzFormMaskBuilder<TResponse>;
}
export declare class SmzFormPasswordBuilder<TResponse> extends SmzFormInputBuilder<SmzFormPasswordBuilder<TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _passwordInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _passwordInput: SmzPasswordControl);
    setFeedback(): SmzFormPasswordBuilder<TResponse>;
    enableToggleMask(): SmzFormPasswordBuilder<TResponse>;
    setStrengthRegex(medium: string, strong: string): SmzFormPasswordBuilder<TResponse>;
}
export declare class SmzFormInputValidatorBuilder<TInput, TResponse> {
    _inputBuilder: TInput;
    private _input;
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    constructor(_inputBuilder: TInput, _input: SmzFormsBaseControl, _groupBuilder: SmzFormGroupBuilder<TResponse>);
    required(): SmzFormInputValidatorBuilder<TInput, TResponse>;
    length(min: number, max: number): SmzFormInputValidatorBuilder<TInput, TResponse>;
    range(min: number, max: number): SmzFormInputValidatorBuilder<TInput, TResponse>;
    custom(validator: ValidatorFn, name?: string, message?: string): SmzFormInputValidatorBuilder<TInput, TResponse>;
    email(): SmzFormInputValidatorBuilder<TInput, TResponse>;
    get input(): TInput;
}
export declare function getSmzTemplate(breakpoint: 'EXTRA_SMALL' | 'SMALL' | 'MEDIUM' | 'LARGE' | 'EXTRA_LARGE', colType: 'col-1' | 'col-2' | 'col-3' | 'col-4' | 'col-5' | 'col-6' | 'col-7' | 'col-8' | 'col-9' | 'col-10' | 'col-11' | 'col-12'): {
    extraSmall: {
        row: string;
    };
    small?: undefined;
    medium?: undefined;
    large?: undefined;
    extraLarge?: undefined;
} | {
    small: {
        row: string;
    };
    extraSmall?: undefined;
    medium?: undefined;
    large?: undefined;
    extraLarge?: undefined;
} | {
    medium: {
        row: string;
    };
    extraSmall?: undefined;
    small?: undefined;
    large?: undefined;
    extraLarge?: undefined;
} | {
    large: {
        row: string;
    };
    extraSmall?: undefined;
    small?: undefined;
    medium?: undefined;
    extraLarge?: undefined;
} | {
    extraLarge: {
        row: string;
    };
    extraSmall?: undefined;
    small?: undefined;
    medium?: undefined;
    large?: undefined;
} | {
    extraSmall?: undefined;
    small?: undefined;
    medium?: undefined;
    large?: undefined;
    extraLarge?: undefined;
};
export declare class SmzFormTagAreaBuilder<TResponse> extends SmzFormInputBuilder<SmzFormTagAreaBuilder<TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _tagAreaInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _tagAreaInput: SmzTagAreaControl);
    setRows(rows: number): SmzFormTagAreaBuilder<TResponse>;
    setSaveFormat(format: SmzTextPattern): SmzFormTagAreaBuilder<TResponse>;
    setTagCharacters(open: string, close: string): SmzFormTagAreaBuilder<TResponse>;
    addOption(key: string, data: SmzSmartTagData[]): SmzFormTagAreaBuilder<TResponse>;
}
export declare class SmzFormAutocompleteTagAreaBuilder<TResponse> extends SmzFormInputBuilder<SmzFormAutocompleteTagAreaBuilder<TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _tagAreaInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _tagAreaInput: SmzAutocompleteTagAreaControl);
    setRows(rows: number): SmzFormAutocompleteTagAreaBuilder<TResponse>;
    allowCustomValues(): SmzFormAutocompleteTagAreaBuilder<TResponse>;
    setSaveFormat(format: SmzTextPattern): SmzFormAutocompleteTagAreaBuilder<TResponse>;
    setTagCharacters(open: string, close: string): SmzFormAutocompleteTagAreaBuilder<TResponse>;
    addOption(key: string): SmzFormAutocompleteTagAreaOptionBuilder<TResponse>;
    get group(): SmzFormGroupBuilder<TResponse>;
}
export declare class SmzFormAutocompleteTagAreaOptionBuilder<TResponse> extends SmzBuilderUtilities<SmzFormAutocompleteTagAreaOptionBuilder<TResponse>> {
    protected _parent: SmzFormAutocompleteTagAreaBuilder<TResponse>;
    private _tagAreaInput;
    private key;
    protected that: this;
    private _option;
    constructor(_parent: SmzFormAutocompleteTagAreaBuilder<TResponse>, _tagAreaInput: SmzAutocompleteTagAreaControl, key: string);
    setSearchTriggerLength(charactersCount: number): SmzFormAutocompleteTagAreaOptionBuilder<TResponse>;
    setEmptyMessage(emptyMessage: string): SmzFormAutocompleteTagAreaOptionBuilder<TResponse>;
    setLabel(text: string): SmzFormAutocompleteTagAreaOptionBuilder<TResponse>;
    setSearchTrigger(callback: (query: string) => any): SmzFormAutocompleteTagAreaOptionBuilder<TResponse>;
    setSearchResults(selector$: Observable<string[]>): SmzFormAutocompleteTagAreaOptionBuilder<TResponse>;
    get input(): SmzFormAutocompleteTagAreaBuilder<TResponse>;
}
export declare class SmzFormTreeBuilder<T, TResponse> extends SmzFormInputBuilder<SmzFormTreeBuilder<T, TResponse>, TResponse> {
    _groupBuilder: SmzFormGroupBuilder<TResponse>;
    private _treeInput;
    protected that: this;
    constructor(_groupBuilder: SmzFormGroupBuilder<TResponse>, _treeInput: SmzTreeControl<T>);
    addTreeNode(node: SmzTreeNode<T>): SmzFormTreeBuilder<T, TResponse>;
    addParentTreeNodes(parents: ParentEntity<string, SmzTreeNode<T>>[]): SmzFormTreeBuilder<T, TResponse>;
    setTreeDependency(dependencyPropertyName: string): SmzFormTreeBuilder<T, TResponse>;
    initializeDataTransformation(): SmzDataSourceTreeBuilder<SmzFormTreeBuilder<T, TResponse>>;
    addRawData(data: T[]): SmzFormTreeBuilder<T, TResponse>;
    addParentRawData(parents: ParentEntity<string, T>[]): SmzFormTreeBuilder<T, TResponse>;
    showFilter(): SmzFormTreeBuilder<T, TResponse>;
    setHeightInPixel(height: number): SmzFormTreeBuilder<T, TResponse>;
    useChipSeparator(): SmzFormTreeBuilder<T, TResponse>;
    allowMultiple(): SmzFormTreeBuilder<T, TResponse>;
    allowCheckbox(): SmzFormTreeBuilder<T, TResponse>;
    setDefaultValue(value: T | SimpleEntity<T>): SmzFormTreeBuilder<T, TResponse>;
    setDefaultValues(values: T[] | SimpleEntity<T>[]): SmzFormTreeBuilder<T, TResponse>;
    autofocusFilter(): SmzFormTreeBuilder<T, TResponse>;
    showClear(): SmzFormTreeBuilder<T, TResponse>;
    utilities(): SmzTreeNodeUtilityBuilder<SmzFormTreeBuilder<T, TResponse>>;
    get group(): SmzFormGroupBuilder<TResponse>;
}
