import { type SourceArrayLocation } from "./utils/toArrayLocation.ts"; export type Type = "url" | "hostname" | "ip" | "email" | "dependency" | (string & {}); export type Location> = { file: string | null; location: SourceArrayLocation[]; metadata?: T; }; export type CollectableInfos> = { file?: string | null; metadata?: T; location: SourceArrayLocation; }; export type CollectableSetData> = { type: Type; entries: Array<{ value: string; locations: Location[]; }>; }; export interface CollectableSet> { add(value: string, infos: CollectableInfos): void; toJSON(): CollectableSetData; type: Type; values(): Iterable; } export declare class DefaultCollectableSet> implements CollectableSet { #private; type: Type; static mergeData(set: CollectableSet, data: CollectableSetData): CollectableSet; constructor(type: Type); add(value: string, { file, location, metadata }: CollectableInfos): void; toJSON(): CollectableSetData; static fromJSON(data: CollectableSetData): DefaultCollectableSet; values(): Iterable; [Symbol.iterator](): Generator<{ value: string; locations: Location[]; }, void, unknown>; } //# sourceMappingURL=CollectableSet.d.ts.map