import { ProAgent, FingerprintJsProAgentParams, Tags, RequestOptions, VisitorId, VisitorData } from './types.js';
import '@fingerprintjs/fingerprintjs-pro-spa';

/**
 *
 * @group API Client approach
 * @platform web
 */
declare class FingerprintJsProAgent implements ProAgent {
    private readonly requestOptions;
    private readonly extendedResponseFormat;
    private readonly client;
    private readonly agentPromise;
    constructor({ apiKey, region, endpointUrl, fallbackEndpointUrls, extendedResponseFormat, requestOptions, scriptUrlPattern, storageKey, urlHashing, remoteControlDetection, cache, cachePrefix, cacheLocation, cacheTimeInSeconds, }: FingerprintJsProAgentParams);
    /**
     * @inheritDoc
     * */
    getVisitorId(tags?: Tags, linkedId?: string, options?: RequestOptions): Promise<VisitorId>;
    /**
     * @inheritDoc
     * */
    getVisitorData(tags?: Tags, linkedId?: string, options?: RequestOptions): Promise<VisitorData>;
}

export { FingerprintJsProAgent };
