import type { ParsedVideoUrl, VideoProvider, VideoProviderConfig, VideoProviderTypes } from '../types'; export declare const getYoutubeId: (url: string) => string | null; export declare const getVimeoId: (url: string) => string | null; export declare const getDailymotionId: (url: string) => string | null; export declare const getWistiaId: (url: string) => string | null; export declare const getLoomId: (url: string) => string | null; export declare function getProvider(url: string): VideoProviderTypes | null; export declare const ProviderGetters: Record string | null>; export declare const getYoutubeEmbedUrl: (id: string) => string; export declare const getVimeoEmbedUrl: (id: string) => string; export declare const getDailymotionEmbedUrl: (id: string) => string; export declare const getLoomEmbedUrl: (id: string) => string; export declare const getWistiaEmbedUrl: (id: string) => string; export declare const ProviderEmbedUrlGetters: Record string>; export declare const getEmbedUrl: (provider: VideoProviderTypes, id: string) => string | null; export declare const getYoutubeThumbnailUrl: (id: string, quality?: 'default' | 'hq' | 'mq' | 'sd' | 'maxres') => string; export declare const getVimeoThumbnailUrl: (id: string) => string; export declare const getDailymotionThumbnailUrl: (id: string) => string; export declare const getLoomThumbnailUrl: (id: string) => string; export declare const getWistiaThumbnailUrl: (id: string) => string; export declare const ProviderThumbnailGetters: Record string>; export declare const getThumbnailUrl: (provider: VideoProviderTypes, id: string) => string | null; export declare const VIDEO_PROVIDERS: Record; /** * Parse a video URL and extract provider information, video ID, embed URL, and thumbnail URL. * This is the main utility function for handling video URLs from various providers. * * @param url - The video URL to parse * @returns ParsedVideoUrl object with all extracted information * * @example * ```ts * const result = parseVideoUrl('https://www.youtube.com/watch?v=dQw4w9WgXcQ'); * // { * // provider: 'youtube', * // id: 'dQw4w9WgXcQ', * // originalUrl: 'https://www.youtube.com/watch?v=dQw4w9WgXcQ', * // embedUrl: 'https://www.youtube.com/embed/dQw4w9WgXcQ', * // thumbnailUrl: 'https://img.youtube.com/vi/dQw4w9WgXcQ/hqdefault.jpg', * // isValid: true * // } * ``` */ export declare const parseVideoUrl: (url: string) => ParsedVideoUrl; /** * Check if a URL is a valid video URL from a supported provider. * * @param url - The URL to validate * @returns true if the URL is a valid video URL from a supported provider */ export declare const isValidVideoUrl: (url: string) => boolean; /** * Check if a URL is from a specific provider. * * @param url - The URL to check * @param provider - The provider to check for * @returns true if the URL is from the specified provider */ export declare const isProviderUrl: (url: string, provider: VideoProviderTypes) => boolean; /** * Build a VideoProvider object from a URL. * This is useful for storing provider information in the video element props. * * @param url - The video URL * @returns VideoProvider object or null if URL is invalid */ export declare const buildVideoProvider: (url: string) => VideoProvider | null; /** * Get all supported provider types. * * @returns Array of supported provider type strings */ export declare const getSupportedProviders: () => VideoProviderTypes[]; /** * Check if a provider type is supported. * * @param provider - The provider type to check * @returns true if the provider is supported */ export declare const isProviderSupported: (provider: VideoProviderTypes) => boolean; //# sourceMappingURL=providers.d.ts.map