/** * The canonical GoDX brand mark, as email-safe markup. The mark is an emerald CAPSULE with an * internal light GLYPH bar — the same artwork the React `` paints, at the same * 32×32 viewBox and the same coordinates (a test asserts the capsule path is byte-identical to the * component's, so the two can never diverge). */ import { type EmailHex } from "./color.js"; /** A rounded rectangle in the mark's 32×32 coordinate space. */ export interface EmailBrandMarkRect { readonly x: number; readonly y: number; readonly width: number; readonly height: number; readonly radius: number; } /** Intrinsic coordinate space of the mark artwork. */ /** The component's box, read from the shared artwork so the two cannot drift. */ export declare const EMAIL_BRAND_MARK_VIEWBOX: "0 0 32 32"; /** The emerald capsule. */ export declare const EMAIL_BRAND_MARK_CAPSULE: EmailBrandMarkRect; /** The internal light glyph bar inside the capsule. */ export declare const EMAIL_BRAND_MARK_GLYPH: EmailBrandMarkRect; export declare function roundedRectPath({ x, y, width, height, radius }: EmailBrandMarkRect): string; /** Options for rendering the mark. Every default comes from the token contract. */ export interface EmailBrandMarkOptions { /** Rendered width in px. Default `EMAIL_BRAND_MARK.widthPx` (the canonical 22px header box). */ width?: number; /** Rendered height in px. Default `EMAIL_BRAND_MARK.heightPx` (the canonical 22px header box). */ height?: number; /** Capsule fill. Default `EMAIL_COLORS.brand`. */ color?: EmailHex; /** Internal glyph fill. Default `EMAIL_COLORS.brandForeground`. */ glyphColor?: EmailHex; /** * Accessible name. Pass `""` for a decorative mark that sits next to a readable wordmark — the * markup then carries `alt=""` / `aria-hidden` instead of a redundant announcement. */ label?: string; } /** * Inline `` markup for the mark — self-contained, no external or relative asset reference. * The `xmlns` attribute is required: an email body is not always parsed as HTML5. */ export declare function emailBrandMarkSvg(o?: EmailBrandMarkOptions): string; /** * The mark as a `data:image/svg+xml` URL for ``. Percent-encoded (not base64) so it stays * readable in a template and needs no `Buffer`/`btoa`. */ export declare function emailBrandMarkDataUri(o?: EmailBrandMarkOptions): string; /** Bulletproof `` markup for clients with no SVG support. */ export declare function emailBrandMarkTableHtml(o?: EmailBrandMarkOptions): string; /** The canonical mark at its default size and colours, in all three delivery forms. */ export interface EmailBrandMark { readonly viewBox: string; readonly width: string; readonly widthPx: number; readonly height: string; readonly heightPx: number; readonly capsule: EmailBrandMarkRect; readonly glyph: EmailBrandMarkRect; readonly capsulePath: string; readonly glyphPath: string; /** * Mark ↔ wordmark separation in the canonical header LOCKUP. The mark alone is not the header: * the canonical card sets the mark beside a readable "GoDX" wordmark, and the wordmark — not the * mark — carries the accessible name (render the mark with `label: ""` in that pairing). */ readonly gap: string; readonly gapPx: number; /** Wordmark type size in the lockup. */ readonly wordmarkFontSize: string; readonly wordmarkFontSizePx: number; readonly wordmarkFontWeight: number; /** Inline `` — highest fidelity. */ readonly svg: string; /** `data:` URL of the same SVG, for ``. */ readonly dataUri: string; /** `
` fallback for clients with no SVG support. */ readonly tableHtml: string; } export declare const EMAIL_BRAND_MARK: EmailBrandMark;