import { HttpClient, HttpResponse } from '@angular/common/http';
import { BehaviorSubject, Observable } from 'rxjs';
export interface AfdLookupResult {
    ErrorText: string;
    Item?: any[];
    Result: string;
}
export declare class AfdPceService {
    private http;
    settings: {
        afdPceUrl: string;
        afdSerial: string;
        afdPassword: string;
        afdId: string;
        afdToken: string;
        defaultCountry: string;
        typeahead: {
            maxItems: string | number;
            pushUp: boolean | string[];
            placeholder: string;
            afterHideTypeahead: boolean;
            searchAgain: boolean;
            afterClearTypeahead: boolean;
            beforeHideResults: boolean;
            notEmptyShowResults: boolean;
            fewResultsManualInput: boolean;
            fewResultsManualInputText: string;
            noResultsManualInputText: string;
            hideEmpties: boolean;
            containers: any[];
            retrieveFields: string;
            availableCountries: any[];
            minLength: number;
            matchPositions: boolean;
            postcodeFirst: boolean;
            hideForCountries: any[];
            showForCountries: any[];
            regionMap: boolean;
            regionAttribute: string;
            manualInputText: string;
            searchAgainText: string;
            addressSearchText: string;
        };
        email: {
            invalidRegex: string;
            invalidPce: any;
            required: string;
        };
        phone: {
            invalidSyntax: string;
            invalidPce: any;
        };
        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;
            };
        };
    };
    typeaheadVisibility: {
        control: boolean;
        searchAgain: boolean;
        manualInput: boolean;
        addressSearch: boolean;
    };
    uniqueId: string;
    typeAheadTimer: any;
    countries: any[];
    resultList: any[];
    selectedCountry: any;
    selectedLanguage: any;
    phoneCountry: any;
    iti: {};
    controls: {
        typeahead: {};
    };
    emailInfoDefaults: {
        pceValid: boolean;
        regexValid: boolean;
        pceValidationMessage: any;
        emailAddress: any;
        acceptsAll: boolean;
        dummy: boolean;
        formatVerified: string;
        generic: boolean;
        localChecked: boolean;
        nonStandard: boolean;
        reachable: boolean;
        status: string;
        suggested: string;
        spelling: boolean;
        throwaway: boolean;
    };
    emailInfoSource: BehaviorSubject<{
        pceValid: boolean;
        regexValid: boolean;
        pceValidationMessage: any;
        emailAddress: any;
        acceptsAll: boolean;
        dummy: boolean;
        formatVerified: string;
        generic: boolean;
        localChecked: boolean;
        nonStandard: boolean;
        reachable: boolean;
        status: string;
        suggested: string;
        spelling: boolean;
        throwaway: boolean;
    }>;
    emailInfo: Observable<{
        pceValid: boolean;
        regexValid: boolean;
        pceValidationMessage: any;
        emailAddress: any;
        acceptsAll: boolean;
        dummy: boolean;
        formatVerified: string;
        generic: boolean;
        localChecked: boolean;
        nonStandard: boolean;
        reachable: boolean;
        status: string;
        suggested: string;
        spelling: boolean;
        throwaway: boolean;
    }>;
    phoneInfoDefaults: {
        pceValid: boolean;
        syntaxValid: boolean;
        regexValid: boolean;
        country: {
            name: any;
            iso2: any;
            iso3: any;
        };
        isMobile: boolean;
        isLandLine: boolean;
        numberType: string;
        phoneNumber: string;
        phoneNumberE164: string;
        phoneNumberInternational: string;
        phoneNumberNational: string;
        phoneNumberRfc3966: string;
    };
    phoneInfoSource: BehaviorSubject<{
        pceValid: boolean;
        syntaxValid: boolean;
        regexValid: boolean;
        country: {
            name: any;
            iso2: any;
            iso3: any;
        };
        isMobile: boolean;
        isLandLine: boolean;
        numberType: string;
        phoneNumber: string;
        phoneNumberE164: string;
        phoneNumberInternational: string;
        phoneNumberNational: string;
        phoneNumberRfc3966: string;
    }>;
    phoneInfo: Observable<{
        pceValid: boolean;
        syntaxValid: boolean;
        regexValid: boolean;
        country: {
            name: any;
            iso2: any;
            iso3: any;
        };
        isMobile: boolean;
        isLandLine: boolean;
        numberType: string;
        phoneNumber: string;
        phoneNumberE164: string;
        phoneNumberInternational: string;
        phoneNumberNational: string;
        phoneNumberRfc3966: string;
    }>;
    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;
    }>;
    typeAheadString: string;
    listResult: any;
    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;
    };
    allResultFieldVisibility: BehaviorSubject<boolean>;
    constructor(http: HttpClient);
    getCountries(defaultCountry?: any): Observable<HttpResponse<Object>>;
    pceLookup(lookup: any, data?: any): Observable<HttpResponse<AfdLookupResult>>;
    pceRetrieve(key: any, data?: any): Observable<HttpResponse<Object>>;
    reverseGeocode(lat: any, lng: any): Observable<string>;
    validateEmail(email: any): Observable<string>;
    validatePhone(phone: any): Observable<HttpResponse<Object>>;
    searchPhone(phone: any): Observable<HttpResponse<Object>>;
    validateCard(cardNumber: any, expiryDate: any): Observable<string>;
    validateAccount(accountNumber: any, sortCode: any): Observable<string>;
    typeAheadSelected(result: any, data?: any): BehaviorSubject<any>;
    refreshUniqueId(): void;
    manageUniqueId(value: any): void;
    phoneMaskFunction(input: any): RegExp[];
    cardMaskFunction(input: any): any[];
    registerControl(type: any, identifier?: any): any;
}
//# sourceMappingURL=afd.pce.service.d.ts.map