import { OnDestroy, OnInit } from '@angular/core';
import { AbstractControl, FormGroup } from '@angular/forms';
import { ActivatedRoute } from '@angular/router';
import { Subscription } from 'rxjs';
import { CaseEventTrigger, CaseField, Profile } from '../../../domain';
import { Task } from '../../../domain/work-allocation/Task';
import { CaseFieldService, FieldsUtils, MultipageComponentStateService, FormValidatorsService, OrderService, ProfileNotifier } from '../../../services';
import { CallbackErrorsContext } from '../../error';
import { PaletteContext } from '../../palette';
import { CaseEditComponent } from '../case-edit/case-edit.component';
import { Wizard, WizardPage } from '../domain';
import { CaseFlagStateService } from '../services/case-flag-state.service';
import { LinkedCasesService } from '../../palette/linked-cases/services/linked-cases.service';
import * as i0 from "@angular/core";
export declare class CaseEditSubmitComponent implements OnInit, OnDestroy {
    readonly caseEdit: CaseEditComponent;
    private readonly fieldsUtils;
    private readonly caseFieldService;
    private readonly route;
    private readonly orderService;
    private readonly profileNotifier;
    private readonly multipageComponentStateService;
    private readonly formValidatorsService;
    private readonly caseFlagStateService;
    private readonly linkedCasesService;
    eventTrigger: CaseEventTrigger;
    editForm: FormGroup;
    triggerText: string;
    wizard: Wizard;
    profile: Profile;
    showSummaryFields: CaseField[];
    paletteContext: PaletteContext;
    profileSubscription: Subscription;
    contextFields: CaseField[];
    task: Task;
    pageTitle: string;
    metadataFieldsObject: object;
    allFieldsValues: any;
    summary: AbstractControl;
    description: AbstractControl;
    eventSummaryLabel: string;
    eventDescriptionLabel: string;
    static readonly SHOW_SUMMARY_CONTENT_COMPARE_FUNCTION: (a: CaseField, b: CaseField) => number;
    get isDisabled(): boolean;
    constructor(caseEdit: CaseEditComponent, fieldsUtils: FieldsUtils, caseFieldService: CaseFieldService, route: ActivatedRoute, orderService: OrderService, profileNotifier: ProfileNotifier, multipageComponentStateService: MultipageComponentStateService, formValidatorsService: FormValidatorsService, caseFlagStateService: CaseFlagStateService, linkedCasesService: LinkedCasesService);
    ngOnInit(): void;
    ngOnDestroy(): void;
    submit(): void;
    onEventCanBeCompleted(eventCanBeCompleted: boolean): void;
    checkExistingDataInSubmission(): void;
    private getPageTitle;
    private get hasErrors();
    navigateToPage(pageId: string): void;
    callbackErrorsNotify(errorContext: CallbackErrorsContext): void;
    summaryCaseField(field: CaseField): CaseField;
    cancel(): void;
    private handleLinkedCasesSubmission;
    private getLinkedCasesTab;
    private emitCancelEvent;
    isLabel(field: CaseField): boolean;
    isChangeAllowed(field: CaseField): boolean;
    checkYourAnswerFieldsToDisplayExists(): boolean;
    readOnlySummaryFieldsToDisplayExists(): boolean;
    showEventNotes(): boolean;
    private getLastPageShown;
    previous(): void;
    hasPrevious(): boolean;
    isShown(page: WizardPage): boolean;
    canShowFieldInCYA(field: CaseField): boolean;
    private sortFieldsByShowSummaryContent;
    private getCaseFields;
    getCaseId(): string;
    getCaseTitle(): string;
    getCancelText(): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<CaseEditSubmitComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<CaseEditSubmitComponent, "ccd-case-edit-submit", never, {}, {}, never, never, false, never>;
}
//# sourceMappingURL=case-edit-submit.component.d.ts.map