import { Element, Document } from 'domhandler'; import { CssStylesheetAST } from '@adobe/css-tools'; declare const emailClientsList: readonly ["apple-mail.macos", "apple-mail.ios", "gmail.desktop-webmail", "gmail.ios", "gmail.android", "gmail.mobile-webmail", "orange.desktop-webmail", "orange.ios", "orange.android", "outlook.windows", "outlook.windows-mail", "outlook.macos", "outlook.ios", "outlook.android", "yahoo.desktop-webmail", "yahoo.ios", "yahoo.android", "aol.desktop-webmail", "aol.ios", "aol.android", "samsung-email.android", "sfr.desktop-webmail", "sfr.ios", "sfr.android", "thunderbird.macos", "protonmail.desktop-webmail", "protonmail.ios", "protonmail.android", "hey.desktop-webmail", "mail-ru.desktop-webmail", "fastmail.desktop-webmail", "laposte.desktop-webmail"]; type EmailClient = (typeof emailClientsList)[number]; interface DoIUseEmailOptions { emailClients: string[]; } interface Feature { link: string; name: string; notes?: string[]; } declare class DoIUseEmail { emailClients: EmailClient[]; options: DoIUseEmailOptions; warnings: string[]; errors: string[]; notes: string[]; constructor(options: DoIUseEmailOptions); checkFeaturesSupport(featureTitles: string | string[]): void; error(message: string): void; warning(message: string): void; note(message: string): void; checkCSSDeclarations(declarations: Array<{ property: string; value: string; }>): void; checkCSSSelectors(selectors: string[]): void; checkStylesheet(stylesheet: CssStylesheetAST): void; checkHtmlNode(node: Element): void; checkHtml(document: Document): void; check(code: string): { notes: string[]; warnings: string[]; } & ({ success: true; } | { errors: string[]; success: false; }); getSupportedFeatures(): Feature[]; } declare function doIUseEmail(code: string, options: DoIUseEmailOptions): { notes: string[]; warnings: string[]; } & ({ success: true; } | { errors: string[]; success: false; }); export { DoIUseEmail, doIUseEmail };