import { EventEmitter, OnDestroy, OnInit } from '@angular/core';
import { TransactionKind } from '@colijnit/transactionapi/build/enum/transaction-kind.enum';
import { TransactionHeaderPopupRelationComponent } from "../transaction-header/transaction-header-popup/transaction-header-popup-relation.component";
import { TransactionScreenConfigurationService } from "../../service/transaction-screen-configuration.service";
import { TransactionCreateService } from "../../service/transaction-create.service";
import { ServiceWizardCreateServiceComponent } from "./components/service-wizard-create-service.component";
import { ServiceWizardQuestionsComponent } from "./components/service-wizard-questions.component";
import { ServiceWizardServiceFieldsComponent } from "./components/service-wizard-service-fields.component";
import { StepperStepComponent } from "../stepper-step/stepper-step.component";
import { TransactionInfoResponse } from "@colijnit/transactionapi/build/model/transaction-info-response.bo";
import { TransactionRelationService } from "../../service/transaction-relation.service";
import { SimpleVerticalStepperComponent } from "../simple-vertical-stepper/co-simple-vertical-stepper.component";
import { Icon } from "../../enum/icon.enum";
import { CustomerFullObject } from "@colijnit/relationapi/build/model/customer-full-object.bo";
import { TransactionHeaderService } from "../core/base/service/transaction-header.service";
import { TransactionLineInfo } from "@colijnit/transactionapi/build/model/transaction-line-info.bo";
import { TransactionDialogService } from "../../service/transaction-dialog.service";
import { ContactPerson } from "@colijnit/relationapi/build/model/contact-person.bo";
import { TransactionService } from '../../service/transaction.service';
export declare class TransactionCreateWizardComponent implements OnInit, OnDestroy {
    createService: TransactionCreateService;
    relationService: TransactionRelationService;
    transactionService: TransactionService;
    transactionScreenConfigurationService: TransactionScreenConfigurationService;
    private _dialogService;
    private _headerService;
    readonly transKind: typeof TransactionKind;
    readonly Icon: typeof Icon;
    stepper: SimpleVerticalStepperComponent;
    stepRelationSection: StepperStepComponent;
    relationSection: TransactionHeaderPopupRelationComponent;
    stepTransactionSection: StepperStepComponent;
    transactionSection: ServiceWizardCreateServiceComponent;
    stepWizardSection: StepperStepComponent;
    wizardSection: ServiceWizardQuestionsComponent;
    stepServiceFieldsSection: StepperStepComponent;
    serviceFieldsSection: ServiceWizardServiceFieldsComponent;
    set externallyProvidedTransaction(transaction: TransactionInfoResponse);
    set externallyProvidedLineNr(lineNr: number);
    set externallyProvidedCustomer(customer: CustomerFullObject);
    set externallyProvidedContactPerson(contact: ContactPerson);
    set branch(branch: string);
    customerPortal: boolean;
    transactionFinished: EventEmitter<number>;
    transactionType: TransactionKind;
    showClass(): boolean;
    noLockOnCustomerSet: boolean;
    isReady: boolean;
    existingTransaction: TransactionInfoResponse;
    existingTransactionLine: TransactionLineInfo;
    buttonsVisible: boolean;
    openStep: number;
    slaBtnSelected: boolean;
    private _branch;
    private _externallyProvidedTransaction;
    private _externallyProvidedLineNr;
    private _externallyProvidedCustomer;
    private _externallyProvidedContactPerson;
    private _subs;
    constructor(createService: TransactionCreateService, relationService: TransactionRelationService, transactionService: TransactionService, transactionScreenConfigurationService: TransactionScreenConfigurationService, _dialogService: TransactionDialogService, _headerService: TransactionHeaderService);
    ngOnInit(): Promise<void>;
    ngOnDestroy(): Promise<void>;
    handleRelationValidation(): Promise<boolean>;
    handleTransactionValidation(): Promise<boolean>;
    handleWizardValidation(): Promise<boolean>;
    handleServiceInfoValidation(): Promise<boolean>;
    wizardFinished(): Promise<void>;
    skipWizard(): void;
    resetWizard(): void;
    onSlaButtonChange(selected: boolean): void;
    private _initNewRelation;
    private _validateForArticleTransaction;
    private _processExternalSettings;
}
