import { type EmailAddress } from './email'; /** * Domain name portion of an email address (e.g., "example.com"). */ export type EmailAddressDomain = string; /** * Extracts unique domain names from a list of email addresses (case-insensitive). * * @param addresses - Array of email addresses to extract domains from * @returns Array of unique lowercase domain strings */ export declare function readDomainsFromEmailAddresses(addresses: EmailAddress[]): EmailAddressDomain[]; /** * Extracts the domain portion from a single email address. * * @param address - The email address to extract the domain from * @returns The lowercase domain string */ export declare function readDomainFromEmailAddress(address: EmailAddress): EmailAddressDomain; /** * Reads a domain from various input formats including URLs, email addresses, and raw domains. * * Supported formats: * - A url: www.test.com * - A url with the protocol (://): https://www.test.com * - An email address: test@test.com * - A domain: test.com * * The "www." prefix is stripped from URL-style inputs since emails typically don't use it. * * @param urlLikeInput - A URL, email address, or domain string * @returns The extracted domain */ export declare function readEmailDomainFromUrlOrEmailAddress(urlLikeInput: string | EmailAddress | EmailAddressDomain): EmailAddressDomain;