/**
 * Shared "author byline" card used by article-shaped detail pages
 * (blog post, product release, onboarding guide, investor update).
 *
 * MOVED from the hub so any consuming app can embed it; hub call sites
 * import it directly and pass their platform-aware copy explicitly
 * (`fallbackBio={defaultAuthorFallbackBio()}` from the hub's app-config).
 *
 * Embed-readiness contract:
 *   - `Link` / `Image` render through the embed-shims (plain `<a>` / `<img>`
 *     in non-Next hosts; the real Next primitives once the host registers
 *     them at app init).
 *   - The avatar is proxied through the OPTIONAL ambient `ChatRuntime`
 *     (`endpoints.imageProxyUrlPrefix`, same config `useProxiedImageUrl`
 *     reads) — when no runtime is mounted the raw URL renders as-is, so the
 *     component never throws outside a provider. Hosts can also inject
 *     `proxyImageUrl` to bypass the runtime entirely.
 *   - `fallbackBio` is a PLAIN prop (no app-config import): the lib has no
 *     platform awareness; pass copy or leave it absent to render nothing.
 *
 * Render order: avatar → name + job title + date → bio (when present).
 * Returns null when `author` is empty (no card rendered).
 */
import React from 'react';
export interface ArticleAuthorBylineProps {
    /** Author display name. Required — block is hidden when null/empty. */
    author: string | null;
    /** Avatar URL. Falls back to a placeholder when null. */
    avatar?: string | null;
    /** Optional bio paragraph rendered below the name. */
    bio?: string | null;
    /** Optional job title rendered immediately under the name. */
    jobTitle?: string | null;
    /** Optional published date (ISO string or Date). Rendered next to the name. */
    publishedAt?: string | Date | null;
    /** Optional link target for the author name (e.g. the author page). */
    href?: string | null;
    /**
     * Fallback paragraph when `bio` is empty. Plain copy — the lib has no
     * platform/config awareness, so hosts that want a branded default
     * ("Contributing author on the {platform} platform") pass it explicitly
     * (the hub wrapper derives it from `getAppConfig()`). Absent/null ⇒
     * nothing renders below the name when `bio` is empty.
     */
    fallbackBio?: string | null;
    /** Avatar size variant. `md` = 56px (default), `lg` = 64px. */
    size?: 'md' | 'lg';
    /**
     * Host-injected avatar-URL mapper. Wins over the ambient-runtime proxy
     * resolution. Use when the host proxies images outside the `ChatRuntime`
     * config (e.g. a bespoke CDN rewrite).
     */
    proxyImageUrl?: (url: string) => string;
    className?: string;
}
export declare function ArticleAuthorByline({ author, avatar, bio, jobTitle, publishedAt, href, fallbackBio, size, proxyImageUrl, className, }: ArticleAuthorBylineProps): React.JSX.Element | null;
//# sourceMappingURL=article-author-byline.d.ts.map