import { ImageOptions, ConfigOptions, AnalyticsOptions, VideoOptions } from '@cloudinary-util/url-loader';

/**
 * getCldImageUrl
 */
type GetCldImageUrlOptions = ImageOptions;
type GetCldImageUrlConfig = ConfigOptions;
type GetCldImageUrlAnalytics = AnalyticsOptions;
declare function getCldImageUrl(options: GetCldImageUrlOptions, config?: GetCldImageUrlConfig, analytics?: GetCldImageUrlAnalytics): string;

/**
 * getCldImageUrl
 */
type GetCldOgImageUrlOptions = GetCldImageUrlOptions;
type GetCldOgImageUrlConfig = GetCldImageUrlConfig;
type GetCldOgImageUrlAnalytics = GetCldImageUrlAnalytics;
declare function getCldOgImageUrl(options: GetCldOgImageUrlOptions, config?: GetCldOgImageUrlConfig, analytics?: GetCldOgImageUrlAnalytics): string;

/**
 * getCldVideoUrl
 */
type GetCldVideoUrlOptions = VideoOptions;
type GetCldVideoUrlConfig = ConfigOptions;
type GetCldVideoUrlAnalytics = AnalyticsOptions;
declare function getCldVideoUrl(options: GetCldVideoUrlOptions, config?: GetCldVideoUrlConfig, analytics?: GetCldVideoUrlAnalytics): string;

export { type GetCldImageUrlAnalytics, type GetCldImageUrlConfig, type GetCldImageUrlOptions, type GetCldOgImageUrlAnalytics, type GetCldOgImageUrlConfig, type GetCldOgImageUrlOptions, type GetCldVideoUrlAnalytics, type GetCldVideoUrlConfig, type GetCldVideoUrlOptions, getCldImageUrl, getCldOgImageUrl, getCldVideoUrl };
