/*! Copyright 2023-2025 the gnablib contributors MPL-1.1 */
import { Cidr } from './Cidr.js';
import { ICidrValue } from '../interfaces/ICidrValue.js';
import { IValueMerge } from '../interfaces/IValueMerge.js';
import { IpV4 } from './Ip.js';
declare const consoleDebugSymbol: unique symbol;
export declare class IpTree<T> {
    private _root;
    private _merge;
    constructor(merge?: IValueMerge<T>);
    addIp(ipv4: IpV4, value: T): void;
    addRange(start: IpV4, end: IpV4, value: T): void;
    addCidr(cidr: Cidr, value: T): void;
    contains(ipv4: IpV4): boolean;
    listCidr(): ICidrValue<T>[];
    get [Symbol.toStringTag](): string;
    [consoleDebugSymbol](): string;
}
export {};
