import { AfterViewInit, ChangeDetectorRef, EventEmitter, OnDestroy, OnInit } from '@angular/core';
import { FormGroup } from '@angular/forms';
import { Observable, Subscription } from 'rxjs';
import { DatiDepositoGiudiziarioDTO } from '../../models/dati-deposito-giudiziario-dto';
import { RtsDTO } from '../../models/rts-dto';
import { DelegheService } from '../../services/deleghe-services/deleghe.service';
import { MessageService } from '../../services/message.service';
declare type DatiDepositoGeneric = keyof DatiDepositoGiudiziarioDTO;
export declare type DatiDepositoVisibilityMask = {
    [k in DatiDepositoGeneric]: boolean;
};
export declare class DatiDeposito<T extends DatiDepositoGiudiziarioDTO | null> implements OnInit, OnDestroy, AfterViewInit {
    private msg;
    private _ref;
    private delegheService;
    datiDeposito: T;
    visibilityMask: DatiDepositoVisibilityMask;
    listaRts$: Observable<Array<string>>;
    nextStep: EventEmitter<DatiDepositoGiudiziarioDTO>;
    previousStep: EventEmitter<DatiDepositoGiudiziarioDTO>;
    salvaBozza: EventEmitter<DatiDepositoGiudiziarioDTO>;
    form: FormGroup;
    direction: string;
    isFinal: boolean;
    subscription: Subscription;
    rts$: Observable<Array<RtsDTO>>;
    _rts: Array<RtsDTO>;
    isImportoFormatoValidoOLD(valoreImporto: any): boolean;
    private currencyToNumber;
    isImportoFormatoValido(valoreImporto: any): boolean;
    constructor(msg: MessageService, _ref: ChangeDetectorRef, delegheService: DelegheService);
    ngAfterViewInit(): void;
    ngOnInit(): void;
    forward($event: any): void;
    backward($event: any): void;
    onSalvaBozza($event: any): void;
    complete($event: any): void;
    isFormValid(): boolean;
    initDatiDeposito(): void;
    ngOnDestroy(): void;
}
export {};
