import { OnInit } from '@angular/core';
import { FormBuilder, FormGroup } from '@angular/forms';
import { ActivatedRoute, Router } from '@angular/router';
import { ComponentModel, ComponentService, ErrorHandlerService, ErrorRecord, NavigationService, OnTaurusModelChange, OnTaurusModelError, OnTaurusModelInit, OnTaurusModelLoad, RouterService, TaurusBaseComponent, ToastService, UrlOpenerService, VdkFormState } from '@versatiledatakit/shared';
import { ModalOptions } from '../../../../shared/model';
import { DataJob, DataJobDetails, DataJobExecutions, DataJobStatus, DataPipelinesConfig } from '../../../../model';
import { DataJobsApiService, DataJobsService } from '../../../../services';
import * as i0 from "@angular/core";
export declare class DataJobDetailsPageComponent extends TaurusBaseComponent implements OnInit, OnTaurusModelInit, OnTaurusModelLoad, OnTaurusModelChange, OnTaurusModelError {
    private readonly router;
    private readonly routerService;
    private readonly dataJobsService;
    private readonly dataJobsApiService;
    private readonly formBuilder;
    private readonly toastService;
    private readonly errorHandlerService;
    private readonly urlOpenerService;
    readonly dataPipelinesModuleConfig: DataPipelinesConfig;
    readonly uuid = "DataJobDetailsPageComponent";
    dataJobStatusEnum: typeof DataJobStatus;
    jobName: string;
    teamName: string;
    jobState: DataJob;
    jobDetails: DataJobDetails;
    jobExecutions: DataJobExecutions;
    isJobEditable: boolean;
    /**
     * ** Flag instruct whether template to show team section.
     */
    shouldShowTeamsSection: boolean;
    /**
     * ** Flag instruct whether template to show change history section.
     */
    shouldShowChangeHistorySection: boolean;
    cronError: string;
    next: Date;
    loadingExecutions: boolean;
    loadingInProgress: boolean;
    allowExecutionsByDeployment: boolean;
    tmForm: FormGroup;
    formState: VdkFormState;
    readFormState: VdkFormState;
    editableFormState: VdkFormState;
    canEditSection: boolean;
    collectorOptions: ModalOptions;
    confirmationOptions: ModalOptions;
    deleteOptions: ModalOptions;
    executeNowOptions: ModalOptions;
    showFullDescription: boolean;
    descriptionWordsBeforeTruncate: number;
    get name(): import("@angular/forms").AbstractControl;
    get team(): import("@angular/forms").AbstractControl;
    get status(): import("@angular/forms").AbstractControl;
    get description(): import("@angular/forms").AbstractControl;
    get jobPythonVersion(): import("@angular/forms").AbstractControl;
    /**
     * ** Array of error code patterns that component should listen for in errors store.
     */
    listenForErrorPatterns: string[];
    /**
     * ** Flag that indicates there is jobs executions load error.
     */
    isComponentInErrorState: boolean;
    /**
     * ** Data Job Change history configuration.
     */
    changeHistoryConfig: DataPipelinesConfig['changeHistory'];
    constructor(componentService: ComponentService, navigationService: NavigationService, activatedRoute: ActivatedRoute, router: Router, routerService: RouterService, dataJobsService: DataJobsService, dataJobsApiService: DataJobsApiService, formBuilder: FormBuilder, toastService: ToastService, errorHandlerService: ErrorHandlerService, urlOpenerService: UrlOpenerService, dataPipelinesModuleConfig: DataPipelinesConfig);
    isDescriptionSubmitEnabled(): boolean;
    isStatusSubmitEnabled(): boolean;
    isJobRunning(): boolean;
    showNoNotificationsLabel(notifications: string[]): boolean;
    sectionStateChange(sectionState: VdkFormState): void;
    submitForm(event: VdkFormState): void;
    editOperationEnded(): void;
    loadJobExecutions(): void;
    redirectToHealthStatus(): void;
    /**
     * ** Intercepts click on change history link and show confirmation.
     */
    navigateToJobChangeHistory($event: MouseEvent): void;
    /**
     * @inheritDoc
     */
    onModelInit(): void;
    /**
     * @inheritDoc
     */
    onModelLoad(model: ComponentModel, task: string): void;
    /**
     * @inheritDoc
     */
    onModelChange(model: ComponentModel, task: string): void;
    /**
     * @inheritDoc
     */
    onModelError(model: ComponentModel, task: string, newErrorRecords: ErrorRecord[]): void;
    /**
     * @inheritDoc
     */
    ngOnInit(): void;
    private _initialize;
    private _subscribeForImplicitTeam;
    private _extractJobDeployment;
    private _isFormSubmitEnabled;
    private _initForm;
    private _updateForm;
    private _doSubmitDescriptionUpdate;
    private _doSubmitStatusUpdate;
    private _initializeNextRunDate;
    private _initializePageFeatureFlags;
    private _initializeChangeHistoryConfig;
    private _subscribeForExecutions;
    private _resetJobDetails;
    static ɵfac: i0.ɵɵFactoryDeclaration<DataJobDetailsPageComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DataJobDetailsPageComponent, "lib-data-job-details-page", never, {}, {}, never, never>;
}
