/// <reference types="node" resolution-mode="require"/>
import EventEmitter from "node:events";
import { PublicIpEventEmitter } from "../types/public-ip-events.mjs";
export declare class PublicIpClient extends EventEmitter implements PublicIpEventEmitter {
    readonly updateIntervalMs: number;
    readonly ipRetrieveTimeout: number;
    readonly isIpV6Enabled: boolean;
    private readonly logger;
    constructor(updateIntervalMs: number, ipRetrieveTimeout: number, isIpV6Enabled: boolean);
    start: () => Promise<void>;
    private updatePublicIpState;
    private getPublicIpV4;
    private getPublicIpV6;
    private logIpError;
}
