import { b as MxCheckResult, C as Cache } from "./packem_shared/mx.d-HxIDdxvR.js"; import { SmtpVerificationOptions } from "./checks/smtp.js"; import { TypoOptions } from "./enrich/typo.js"; import { c as ScoreWeights, E as EmailVerificationReport } from "./packem_shared/score.d-a6cl6fPu.js"; export type { V as VerificationState } from "./packem_shared/score.d-a6cl6fPu.js"; import { DisposableEmailOptions } from '@visulima/disposable-email-domains'; import { FreeEmailOptions } from '@visulima/free-email-domains'; import "./checks/character.js"; import "./checks/symbol.js"; import "./checks/tag.js"; import "./enrich/name.js"; import '@visulima/email-provider-mx'; /** * Options for `verifyEmail`. */ interface VerifyEmailOptions { /** Shared cache for MX/SMTP lookups (dedupes work when verifying lists). */ cache?: Cache; /** * Run live SMTP verification (catch-all, mailbox-full, greylist). * @default true */ checkSmtp?: boolean; /** Disposable-list overrides. */ disposable?: DisposableEmailOptions; /** Free-list overrides. */ free?: FreeEmailOptions; /** * Skip all network checks (MX, SMTP, provider) and produce a syntax + * heuristic-only report. Overrides `checkSmtp`. * @default false */ offline?: boolean; /** Additional role-account prefixes to recognize. */ roleCustomPrefixes?: Iterable; /** SMTP probe options (timeout, catch-all probes, retries, …). */ smtp?: SmtpVerificationOptions; /** Typo-suggestion overrides. */ typo?: TypoOptions; /** Score weight overrides. */ weights?: Partial; } /** * Verifies and enriches a single email address end-to-end. * * Runs the offline checks (syntax, disposable, free, role, tag, character, * symbol, name, typo) immediately, then — unless `offline` is set — resolves the * domain's MX and runs the SMTP probe and provider classification concurrently. * Everything is aggregated into one {@link EmailVerificationReport} and scored. * @param email The email address to verify. * @param options Verification options. * @returns The complete verification report. * @example * ```ts * import { verifyEmail } from "@visulima/email-verifier"; * * const report = await verifyEmail("user@gmail.com"); * console.log(report.state, report.score); // "deliverable" 95 * ``` */ declare const verifyEmail: (email: string, options?: VerifyEmailOptions) => Promise; export { type EmailVerificationReport, type VerifyEmailOptions, verifyEmail as default, verifyEmail };