import { HttpClient } from '@angular/common/http';
import { BehaviorSubject } from 'rxjs';
import { Observable } from 'rxjs';
export declare class AfdPceService {
    private http;
    settings: {
        afdPceUrl: string;
        fieldSets: string;
        afdSerial: string;
        afdPassword: string;
        lookupType: string;
        maxResults: string;
        messages: {
            phone: {
                invalidRegex: string;
                invalidPce: any;
                required: string;
            };
            card: {
                invalidCardRegex: string;
                invalidExpiryRegex: string;
                invalidPce: string;
                required: string;
                expiryRequired: string;
            };
            account: {
                invalidAccountRegex: string;
                invalidSortRegex: string;
                invalidPce: any;
                required: string;
                sortRequired: string;
            };
            email: {
                invalidRegex: string;
                invalidPce: any;
                required: string;
            };
        };
    };
    uniqueId: string;
    countries: ({
        dial: number;
        iso3: string;
        iso2: string;
        name: string;
    } | {
        dial: string;
        iso3: string;
        iso2: string;
        name: string;
    })[];
    selectedCountry: any;
    phoneCountry: any;
    emailInfoDefaults: {
        pceValid: boolean;
        regexValid: boolean;
        pceValidationMessage: any;
        emailAddress: any;
    };
    emailInfoSource: BehaviorSubject<{
        pceValid: boolean;
        regexValid: boolean;
        pceValidationMessage: any;
        emailAddress: any;
    }>;
    emailInfo: Observable<{
        pceValid: boolean;
        regexValid: boolean;
        pceValidationMessage: any;
        emailAddress: any;
    }>;
    phoneInfoDefaults: {
        pceValid: boolean;
        regexValid: boolean;
        country: {
            name: any;
            iso2: any;
            iso3: any;
        };
        isMobile: boolean;
        isLandLine: boolean;
    };
    phoneInfoSource: BehaviorSubject<{
        pceValid: boolean;
        regexValid: boolean;
        country: {
            name: any;
            iso2: any;
            iso3: any;
        };
        isMobile: boolean;
        isLandLine: boolean;
    }>;
    phoneInfo: Observable<{
        pceValid: boolean;
        regexValid: boolean;
        country: {
            name: any;
            iso2: any;
            iso3: any;
        };
        isMobile: boolean;
        isLandLine: boolean;
    }>;
    cardInfoDefaults: {
        pceValid: boolean;
        cardRegexValid: boolean;
        expiryRegexValid: boolean;
        cardTypeNice: any;
        cardType: any;
        cardNumber: string;
        expiryDate: string;
    };
    cardInfoSource: BehaviorSubject<{
        pceValid: boolean;
        cardRegexValid: boolean;
        expiryRegexValid: boolean;
        cardTypeNice: any;
        cardType: any;
        cardNumber: string;
        expiryDate: string;
    }>;
    cardInfo: Observable<{
        pceValid: boolean;
        cardRegexValid: boolean;
        expiryRegexValid: boolean;
        cardTypeNice: any;
        cardType: any;
        cardNumber: string;
        expiryDate: string;
    }>;
    accountInfoDefaults: {
        pceValid: boolean;
        accountRegexValid: boolean;
        sortRegexValid: boolean;
        iban: any;
        clearingSystem: any;
        rollNumber: any;
        accountType: any;
        accountNumber: string;
        sortCode: string;
    };
    accountInfoSource: BehaviorSubject<{
        pceValid: boolean;
        accountRegexValid: boolean;
        sortRegexValid: boolean;
        iban: any;
        clearingSystem: any;
        rollNumber: any;
        accountType: any;
        accountNumber: string;
        sortCode: string;
    }>;
    accountInfo: Observable<{
        pceValid: boolean;
        accountRegexValid: boolean;
        sortRegexValid: boolean;
        iban: any;
        clearingSystem: any;
        rollNumber: any;
        accountType: any;
        accountNumber: string;
        sortCode: string;
    }>;
    lookupResults: {};
    typeAheadResults: any[];
    retrieveResult: {};
    selectedResult: string;
    phoneMask: {
        mask: (input: any) => RegExp[];
        guide: boolean;
    };
    cardMask: {
        mask: (input: any) => any[];
        guide: boolean;
    };
    autoCorrectedDatePipe: any;
    expiryMask: {
        mask: (string | RegExp)[];
        keepCharPositions: boolean;
        pipe: any;
        guide: boolean;
    };
    accountMask: {
        mask: RegExp[];
        guide: boolean;
    };
    sortMask: {
        mask: (string | RegExp)[];
        guide: boolean;
    };
    constructor(http: HttpClient);
    resultList: any[];
    pceLookup(lookup: any, data?: any): Observable<string>;
    pceRetrieve(key: any, data?: any): Observable<string>;
    validateEmail(email: any): Observable<string>;
    validatePhone(phone: any): Observable<string>;
    validateCard(cardNumber: any, expiryDate: any): Observable<string>;
    validateAccount(accountNumber: any, sortCode: any): Observable<string>;
    typeAheadSelected(result: any, data?: any): void;
    refreshUniqueId(): void;
    phoneMaskFunction(input: any): RegExp[];
    cardMaskFunction(input: any): any[];
}
