import { ChangeDetectorRef, EventEmitter, OnDestroy, OnInit } from '@angular/core';
import { StockStatus } from '@colijnit/transactionapi/build/enum/refcode/stock-status.enum';
import { TransactionTypeCategory } from '../../../enum/transaction-type-category.enum';
import { StatusBarCfgNames } from '../../../interface/status-bar-cfg-names.interface';
import { LineDiscountCfgNames } from '../../../interface/line-discount-cfg-names.interface';
import { TransactionEventService } from '../../../service/transaction-event.service';
import { IconCacheService } from '../../../service/icon-cache.service';
import { TransactionScreenConfigurationService } from '../../../service/transaction-screen-configuration.service';
import { TransactionImageService } from '../../../service/transaction-image.service';
import { DictionaryService } from '../../../service/dictionary.service';
import { TransactionService } from '../../../service/transaction.service';
import { TransactionLineInfo } from '@colijnit/transactionapi/build/model/transaction-line-info.bo';
import { DeliveryPlanningService } from '../../delivery-planning/service/delivery-planning.service';
import { TransactionLineBaseComponent } from '../../core/base/transaction-line-base.component';
import { TransactionHeaderService } from '../../core/base/service/transaction-header.service';
import { TransactionLineService } from '../../core/base/service/transaction-line.service';
import { TransactionDialogService } from '../../../service/transaction-dialog.service';
import { PlannedResourceForTransactionLine } from '@colijnit/transactionapi/build/model/planned-resource-for-transaction-line.bo';
import { PlanOrderLine } from '@colijnit/transactionapi/build/model/plan-order-line.bo';
import { TransactionConnectorService } from '../../../service/transaction-connector.service';
export declare class TransactionPlanningLineComponent extends TransactionLineBaseComponent implements OnInit, OnDestroy {
    transactionHeaderService: TransactionHeaderService;
    transactionLineService: TransactionLineService;
    transactionEventService: TransactionEventService;
    iconCacheService: IconCacheService;
    screenConfigService: TransactionScreenConfigurationService;
    protected imageService: TransactionImageService;
    protected dictionaryService: DictionaryService;
    protected transactionService: TransactionService;
    protected changeDetector: ChangeDetectorRef;
    transactionConnectorService: TransactionConnectorService;
    private _deliveryPlanningService;
    private _dialog;
    private _dictionary;
    readonly category: typeof TransactionTypeCategory;
    checkedAvailibility: boolean;
    plannedResourceForTransactionLine: PlannedResourceForTransactionLine[];
    planOrderLine: PlanOrderLine;
    lineIndex: number;
    descriptionDblClick: EventEmitter<void>;
    showClass(): boolean;
    handleMouseOver(event: MouseEvent): void;
    handleMouseLeave(event: MouseEvent): void;
    stock: StockStatus;
    mouseOver: boolean;
    hasOpenedSidePanel: boolean;
    statusBarConfigNames: StatusBarCfgNames;
    discountConfigNames: LineDiscountCfgNames;
    transactionLineToBePickedCompleted: boolean;
    private _subs;
    constructor(transactionHeaderService: TransactionHeaderService, transactionLineService: TransactionLineService, transactionEventService: TransactionEventService, iconCacheService: IconCacheService, screenConfigService: TransactionScreenConfigurationService, imageService: TransactionImageService, dictionaryService: DictionaryService, transactionService: TransactionService, changeDetector: ChangeDetectorRef, transactionConnectorService: TransactionConnectorService, _deliveryPlanningService: DeliveryPlanningService, _dialog: TransactionDialogService, _dictionary: DictionaryService);
    ngOnInit(): void;
    ngOnDestroy(): void;
    handleCheckBoxValueChanged(value: boolean, line: TransactionLineInfo): Promise<void>;
    handleLineClicked(mouseClick: PointerEvent): void;
    changeLineValue(value: boolean): void;
    dragStarted(ev: DragEvent): Promise<void>;
    dragEnded(ev: DragEvent): void;
    get linePlanned(): boolean;
    get lineFullyPlanned(): boolean;
    handleQuantityToPlanChange(amount: number): void;
    handlePlannedResourceClicked(plannedResource: PlannedResourceForTransactionLine): Promise<void>;
}
