import { ChangeDetectorRef, OnDestroy, OnInit } from '@angular/core'; import { FormBuilder, UntypedFormArray } from '@angular/forms'; import { ConfigurableOperation, ConfigurableOperationDefinition, DataService, GetPromotionDetailDocument, LanguageCode, NotificationService, PromotionFragment, TypedBaseDetailComponent } from '@vendure/admin-ui/core'; import * as i0 from "@angular/core"; export declare const GET_PROMOTION_DETAIL: import("apollo-angular").TypedDocumentNode; export declare class PromotionDetailComponent extends TypedBaseDetailComponent implements OnInit, OnDestroy { private changeDetector; protected dataService: DataService; private formBuilder; private notificationService; customFields: import("@vendure/admin-ui/core").CustomFieldConfig[]; detailForm: import("@angular/forms").FormGroup<{ name: import("@angular/forms").FormControl; description: import("@angular/forms").FormControl; enabled: import("@angular/forms").FormControl; couponCode: import("@angular/forms").FormControl; perCustomerUsageLimit: import("@angular/forms").FormControl; usageLimit: import("@angular/forms").FormControl; startsAt: import("@angular/forms").FormControl; endsAt: import("@angular/forms").FormControl; conditions: import("@angular/forms").FormArray>; actions: import("@angular/forms").FormArray>; customFields: import("@angular/forms").FormGroup<{ [x: string]: import("@angular/forms").FormControl<{} | null>; }>; }>; conditions: ConfigurableOperation[]; actions: ConfigurableOperation[]; private allConditions; private allActions; constructor(changeDetector: ChangeDetectorRef, dataService: DataService, formBuilder: FormBuilder, notificationService: NotificationService); ngOnInit(): void; ngOnDestroy(): void; getAvailableConditions(): ConfigurableOperationDefinition[]; getConditionDefinition(condition: ConfigurableOperation): ConfigurableOperationDefinition | undefined; getAvailableActions(): ConfigurableOperationDefinition[]; getActionDefinition(action: ConfigurableOperation): ConfigurableOperationDefinition | undefined; saveButtonEnabled(): boolean; addCondition(condition: ConfigurableOperation): void; addAction(action: ConfigurableOperation): void; removeCondition(condition: ConfigurableOperation): void; removeAction(action: ConfigurableOperation): void; formArrayOf(key: 'conditions' | 'actions'): UntypedFormArray; create(): void; save(): void; /** * Given a PaymentMethod and the value of the detailForm, this method creates an updated copy of it which * can then be persisted to the API. */ private getUpdatedPromotion; /** * Update the form values when the entity changes. */ protected setFormValues(entity: PromotionFragment, languageCode: LanguageCode): void; /** * Maps an array of conditions or actions to the input format expected by the GraphQL API. */ private mapOperationsToInputs; /** * Adds a new condition or action to the promotion. */ private addOperation; private getDefaultArgValue; /** * Removes a condition or action from the promotion. */ private removeOperation; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }