/**
 * Email Sanitizer Library
 *
 * A privacy-focused email sanitizer that removes trackers and cleans URLs.
 * It can operate in two modes: buffered (for simple use cases) and streaming
 * (for high-performance environments like Cloudflare Workers).
 *
 * @example
 * // Buffered (non-streaming) usage for Node.js or similar environments:
 * ```typescript
 * import { sanitizeEmailBuffered, createMinimalRules } from 'email-scrubber-core';
 *
 * const rules = createMinimalRules();
 * const originalHtml = '<a href="https://example.com/page?utm_source=news"><img src="https://track.com/pixel.gif"></a>';
 * const result = sanitizeEmailBuffered(originalHtml, rules);
 * console.log(`Cleaned ${result.urlsCleaned} URLs. Result: ${result.html}`);
 * ```
 *
 * @example
 * // Streaming usage for edge environments (e.g., Cloudflare Workers):
 * ```typescript
 * // In your Cloudflare Worker:
 * import { getStreamingHandlers, createMinimalRules } from 'email-scrubber-core';
 *
 * async function handleRequest(request) {
 *   const response = await fetch(request); // Get response from origin
 *   const rules = createMinimalRules();
 *   const handlers = getStreamingHandlers(rules);
 *
 *   const rewriter = new HTMLRewriter()
 *     .on("a[href]", handlers.linkHandler)
 *     .on("img", handlers.pixelHandler);
 *
 *   return rewriter.transform(response);
 * }
 * ```
 */
export { type ClearUrlRules, LinkCleaner } from "./cleaners/LinkCleaner.js";
export { type SanitizableElement, TrackerPixelRemover, type TrackerPixelRemoverOptions, } from "./cleaners/TrackerPixelRemover.js";
export { type SanitizeEmailOptions, type SanitizeEmailResult, sanitizeEmail as sanitizeEmailBuffered, sanitizeEmailSimple as sanitizeEmailSimpleBuffered, } from "./sanitizer.js";
export { getStreamingHandlers } from "./stream-sanitizer.js";
export { createMinimalRules } from "./utils/fetchRules.js";
export declare const VERSION = "1.0.0";
//# sourceMappingURL=index.d.ts.map