import { ChangeDetectorRef, OnDestroy, OnInit } from '@angular/core'; import { FormControl, FormGroup, UntypedFormArray, UntypedFormGroup } from '@angular/forms'; import { CustomFieldConfig, DataService, DraftOrderEligibleShippingMethodsQuery, GetAvailableCountriesQuery, LanguageCode, ModalService, NotificationService, OrderDetailFragment, OrderDetailQueryDocument, SurchargeInput, TypedBaseDetailComponent } from '@vendure/admin-ui/core'; import { Observable } from 'rxjs'; import { AddedLine, ModifyOrderData, OrderSnapshot, ProductSelectorItem } from '../../common/modify-order-types'; import { OrderTransitionService } from '../../providers/order-transition.service'; import * as i0 from "@angular/core"; export declare class OrderEditorComponent extends TypedBaseDetailComponent implements OnInit, OnDestroy { protected dataService: DataService; private notificationService; private modalService; private orderTransitionService; private changeDetectorRef; availableCountries$: Observable; addressCustomFields: CustomFieldConfig[]; uiLanguage$: Observable; detailForm: UntypedFormGroup; couponCodesControl: FormControl; orderLineCustomFieldsFormArray: UntypedFormArray; addItemCustomFieldsFormArray: UntypedFormArray; addItemCustomFieldsForm: UntypedFormGroup; addItemSelectedVariant: ProductSelectorItem | undefined; orderLineCustomFields: CustomFieldConfig[]; orderSnapshot: OrderSnapshot; modifyOrderInput: ModifyOrderData; surchargeForm: FormGroup<{ description: FormControl; sku: FormControl; price: FormControl; priceIncludesTax: FormControl; taxRate: FormControl; taxDescription: FormControl; }>; shippingAddressForm: FormGroup<{ fullName: FormControl; company: FormControl; streetLine1: FormControl; streetLine2: FormControl; city: FormControl; province: FormControl; postalCode: FormControl; countryCode: FormControl; phoneNumber: FormControl; }>; billingAddressForm: FormGroup<{ fullName: FormControl; company: FormControl; streetLine1: FormControl; streetLine2: FormControl; city: FormControl; province: FormControl; postalCode: FormControl; countryCode: FormControl; phoneNumber: FormControl; }>; note: string; recalculateShipping: boolean; previousState: string; editingShippingAddress: boolean; editingBillingAddress: boolean; updatedShippingMethods: { [shippingLineId: string]: DraftOrderEligibleShippingMethodsQuery['eligibleShippingMethodsForDraftOrder'][number]; }; private addedVariants; constructor(dataService: DataService, notificationService: NotificationService, modalService: ModalService, orderTransitionService: OrderTransitionService, changeDetectorRef: ChangeDetectorRef); ngOnInit(): void; ngOnDestroy(): void; get addedLines(): AddedLine[]; private getIdForAddedItem; transitionToPriorState(order: OrderDetailFragment): void; hasModifications(): boolean; isLineModified(line: OrderDetailFragment['lines'][number]): boolean; getInitialLineQuantity(lineId: string): number; updateLineQuantity(line: OrderDetailFragment['lines'][number] | AddedLine, quantity: string): void; isAddedLine(line: OrderDetailFragment['lines'][number] | AddedLine): line is AddedLine; updateAddedItemQuantity(item: AddedLine, quantity: string): void; trackByProductVariantId(index: number, item: AddedLine): string; getSelectedItemPrice(result: ProductSelectorItem | undefined): number; addItemToOrder(result: ProductSelectorItem | undefined): void; getShippingLineDetails(shippingLine: OrderDetailFragment['shippingLines'][number]): { name: string; price: number; }; setShippingMethod(shippingLineId: string): void; private isMatchingAddItemRow; removeAddedItem(id: string): void; getSurchargePrices(surcharge: SurchargeInput): { price: number; priceWithTax: number; }; addSurcharge(value: any): void; removeSurcharge(index: number): void; previewAndModify(order: OrderDetailFragment): void; private addAddressCustomFieldsFormGroup; private createOrderSnapshot; protected setFormValues(entity: OrderDetailFragment, languageCode: LanguageCode): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }