import { OnDestroy, OnInit } from '@angular/core';
import { TaskContentService } from '../services/task-content.service';
import { DatafieldGridLayoutElement } from '../model/datafield-grid-layout-element';
import { TaskContentElementType, TaskElementType } from '../model/task-content-element-type';
import { DataField } from '../../data-fields/models/abstract-data-field';
import { FieldTypeResource } from '../model/field-type-resource';
import * as i0 from "@angular/core";
/**
 * Resolves the correct {@link AbstractDataFieldComponent} implementation for the provided data field object.
 */
export declare abstract class AbstractFieldComponentResolverComponent implements OnInit, OnDestroy {
    protected taskContentService: TaskContentService;
    protected _informAboutInvalidData: boolean | null;
    gridElement: DatafieldGridLayoutElement;
    fieldTypeEnum: typeof FieldTypeResource;
    taskElementEnum: typeof TaskElementType;
    protected constructor(taskContentService: TaskContentService, _informAboutInvalidData: boolean | null);
    ngOnInit(): void;
    ngOnDestroy(): void;
    protected isOffsetPresent(): boolean;
    getFieldOffset(): number;
    getElementType(): TaskContentElementType;
    getDataGroupTitle(): string;
    getDataField(): DataField<unknown>;
    getTaskId(): string;
    isField(): boolean;
    isCustomHeight(): boolean;
    static ɵfac: i0.ɵɵFactoryDeclaration<AbstractFieldComponentResolverComponent, [null, { optional: true; }]>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AbstractFieldComponentResolverComponent, "ncc-abstract-field-component-resolver", never, { "gridElement": { "alias": "gridElement"; "required": false; }; }, {}, never, never, false, never>;
}
