import { OnDestroy, ChangeDetectorRef, OnInit } from '@angular/core'; import { SqueezedValueAccessor } from '../../../shared/interfaces/squeeze-value-accessor.inteface'; import { ControlValueAccessor, FormGroup, FormBuilder } from '@angular/forms'; import { TargetingSpec } from '../../interfaces/targeting-spec.interface'; import { Subject, BehaviorSubject } from 'rxjs'; import { DetailedTargetingSpec } from '../../interfaces/targeting-spec-detailed.interface'; export declare class DetailedTargetingComponent implements ControlValueAccessor, SqueezedValueAccessor, OnInit, OnDestroy { private formBuilder; private changeDetectorRef; destroy$: Subject<{}>; squeezedValue$: BehaviorSubject; adaccountId: string; detailedComponents: any; detailedTargetingForm: FormGroup; _value: TargetingSpec; value: any; /** * Will be replaced when implementing registerOnChange * @param _ {TargetingSpec} */ propagateChange(_: TargetingSpec): TargetingSpec; writeValue(value: TargetingSpec): void; registerOnChange(fn: any): void; registerOnTouched(): void; updateSqueezedValue(): void; getSqueezedValue(): string; focus(): void; updateForm(formValue?: any): void; /** * Set model driven form using passed form value or initial form value * @param formValue */ getForm(formValue?: DetailedTargetingSpec): FormGroup; /** * Narrow audience by adding another control */ addControl(name: string): void; /** * Remove control from by index * @param name * @param i */ removeControl({ name, i }: { name: string; i?: number; }): void; /** * Subscribe to form value changes and update component's value when it is changed */ watchFormValueChanges(): void; ngOnDestroy(): void; ngOnInit(): void; constructor(formBuilder: FormBuilder, changeDetectorRef: ChangeDetectorRef); }