import { AfterViewInit, ChangeDetectorRef, OnDestroy, OnInit } from '@angular/core';
import { FormGroup } from '@angular/forms';
import { MagicProperties } from "@magic-xpa/utils";
import { TaskMagicService } from "../services/task.magics.service";
import { SubformMagicService } from "../services/subform.magic.service";
import { TableMagicService } from "../services/table.magic.service";
import { MagicServices } from "../services/magic.services";
import { AccessorMagicService } from "../services/accessor.magic.service";
/**
 * Base component representing a Magic task
 */
export declare class TaskBaseMagicComponent implements OnInit, OnDestroy, AfterViewInit {
    protected ref: ChangeDetectorRef;
    magicServices: MagicServices;
    /**
     * Id of task, used for initializing the task service
     */
    taskIdParam: string;
    /**
     * @ignore
     */
    taskDescription: string;
    /**
     * @ignore
     */
    magicProperties: typeof MagicProperties;
    /**
     *
     * @param ref changes-detector object
     * @param magicServices Access point for all Magic services
     */
    constructor(ref: ChangeDetectorRef, magicServices: MagicServices);
    /**
     * Returns the Magic task service
     * @returns
     */
    readonly task: TaskMagicService;
    /**
     * Returns the Magic subform service
     * @returns
     */
    readonly mgSub: SubformMagicService;
    /**
     * Returns the Magic table service
     * @returns
     */
    readonly tableService: TableMagicService;
    /**
     * Returns the Magic accessor service
     * @returns
     */
    readonly mg: AccessorMagicService;
    /**
     * Returns the task Id
     * @returns
     */
    readonly taskId: string;
    /**
     * Returns the FormGroup for screen-mode forms
     * @returns
     */
    readonly screenFormGroup: FormGroup;
    /**
     * Interface implementation
     */
    ngOnInit(): void;
    /**
     * @ignore
     */
    createFormControlsAccessor(formGroup: FormGroup): void;
    /**
     * Interface implementation
     */
    ngAfterViewInit(): void;
    ngAfterContentChecked(): void;
    /**
     * Interface implementation
     */
    ngOnDestroy(): void;
}
