export declare type Opts = { /** support retreiving oembed metadata */ oembed?: boolean; /** req/res timeout in ms, it resets on redirect. 0 to disable (OS limit applies) */ timeout?: number; /** maximum redirect count. 0 to not follow redirect */ follow?: number; /** support gzip/deflate content encoding */ compress?: boolean; /** maximum response body size in bytes. 0 to disable */ size?: number; /** User-Agent string is often used for content negotiation */ userAgent?: string; /** Custom fetch implementation */ fetch?: (url: string) => Promise; }; export declare type Metadata = { title?: string; description?: string; keywords?: string[]; favicon?: string; author?: string; oEmbed?: { type: 'photo' | 'video' | 'link' | 'rich'; version?: string; title?: string; author_name?: string; author_url?: string; provider_name?: string; provider_url?: string; cache_age?: number; thumbnails?: [{ url?: string; width?: number; height?: number; }]; }; twitter_card: { card: string; site?: string; creator?: string; creator_id?: string; title?: string; description?: string; players?: { url: string; stream?: string; height?: number; width?: number; }[]; apps: { iphone: { id: string; name: string; url: string; }; ipad: { id: string; name: string; url: string; }; googleplay: { id: string; name: string; url: string; }; }; images: { url: string; alt: string; }[]; }; open_graph: { title: string; type: string; images?: { url: string; secure_url?: string; type: string; width: number; height: number; }[]; url?: string; audio?: { url: string; secure_url?: string; type: string; }[]; description?: string; determiner?: string; site_name?: string; locale: string; locale_alt: string; videos: { url: string; stream?: string; height?: number; width?: number; tags?: string[]; }[]; article: { published_time?: string; modified_time?: string; expiration_time?: string; author?: string; section?: string; tags?: string[]; }; }; };