import { P as PhotoAttachment } from '../photos-CmBdWiuZ.js';
import { W as WebsitePhotos } from '../website-photos-Cl1YqAno.js';

/**
 * Helper functions for extracting photo URLs from photo associations
 */

/**
 * True if the URL looks like a video by path extension. Used to avoid using video URLs in img src.
 */
declare function isVideoUrl(url: string | null | undefined): boolean;
/**
 * Get the best available photo URL from a photos array
 * Priority: featured photo > first photo > fallback
 */
declare function getPhotoUrl(photos?: PhotoAttachment[]): string | null;
/**
 * Get avatar URL for team members or authors.
 * Returns a URL only when there is a real photo in attachments; otherwise null.
 * Callers should use PhotoWithFallback (gradient fallback) or Avatar with initials when null.
 */
/** Optional fallbackId/name reserved for future use (e.g. deterministic fallback). */
declare function getAvatarUrl(photos?: PhotoAttachment[], _fallbackId?: number | string, _name?: string): string | null;
/**
 * Get featured image URL for blog posts
 */
declare function getFeaturedImageUrl(photos?: PhotoAttachment[]): string | null;
/**
 * Get logo URL from website_photos API (which aggregates from account_photos)
 *
 * The website_photos API endpoint returns logos from account_photos with photo_type: 'logo',
 * with industry fallback. This is the primary and only source for logos.
 *
 * Returns undefined if no logo is available (for PhotoWithFallback gradient fallback)
 */
declare function getLogoUrl(websitePhotos?: WebsitePhotos | null): string | undefined;

export { PhotoAttachment, getAvatarUrl, getFeaturedImageUrl, getLogoUrl, getPhotoUrl, isVideoUrl };
