import * as _cloudinary_util_url_loader_dist_schema_iaCosk9Y from '@cloudinary-util/url-loader/dist/schema-iaCosk9Y';
import React, { MutableRefObject } from 'react';
import { ImageProps } from 'next/image';
import { ImageOptions, ConfigOptions, AnalyticsOptions, VideoOptions } from '@cloudinary-util/url-loader';
import { CloudinaryUploadWidgetOptions, CloudinaryUploadWidgetError, CloudinaryUploadWidgetResults, CloudinaryUploadWidgetInstanceMethods, CloudinaryVideoPlayerOptions, CloudinaryVideoPlayer, CloudinaryVideoPlayerOptionsLogo } from '@cloudinary-util/types';
export { CloudinaryUploadWidgetError, CloudinaryUploadWidgetInfo, CloudinaryUploadWidgetInstanceMethodCloseOptions, CloudinaryUploadWidgetInstanceMethodDestroyOptions, CloudinaryUploadWidgetInstanceMethodOpenOptions, CloudinaryUploadWidgetInstanceMethodUpdateOptions, CloudinaryUploadWidgetInstanceMethods, CloudinaryUploadWidgetOptions, CloudinaryUploadWidgetResults, CloudinaryUploadWidgetSources, CloudinaryVideoPlayer, CloudinaryVideoPlayerOptions, CloudinaryVideoPlayerOptionsColors, CloudinaryVideoPlayerOptionsLogo } from '@cloudinary-util/types';

type CldImageProps = Omit<ImageProps, 'src' | 'quality'> & ImageOptions & {
    config?: ConfigOptions;
    preserveTransformations?: boolean;
    src: string;
    unoptimized?: boolean;
};
declare const CldImage: React.ForwardRefExoticComponent<Omit<ImageProps, "src" | "quality"> & {
    src: string;
    crop?: "auto" | "fill" | "lfill" | "fill_pad" | "crop" | "thumb" | "scale" | "fit" | "limit" | "mfit" | "pad" | "lpad" | "mpad" | "imagga_scale" | "imagga_crop" | {
        type: "auto" | "fill" | "lfill" | "fill_pad" | "crop" | "thumb" | "scale" | "fit" | "limit" | "mfit" | "pad" | "lpad" | "mpad" | "imagga_scale" | "imagga_crop";
        aspectRatio?: string | number | undefined;
        gravity?: string | undefined;
        height?: string | number | undefined;
        width?: string | number | undefined;
        zoom?: string | undefined;
        source?: boolean | undefined;
    } | {
        type: "auto" | "fill" | "lfill" | "fill_pad" | "crop" | "thumb" | "scale" | "fit" | "limit" | "mfit" | "pad" | "lpad" | "mpad" | "imagga_scale" | "imagga_crop";
        aspectRatio?: string | number | undefined;
        gravity?: string | undefined;
        height?: string | number | undefined;
        width?: string | number | undefined;
        zoom?: string | undefined;
        source?: boolean | undefined;
    }[] | undefined;
    sanitize?: boolean | undefined;
    assetType?: string | undefined;
    deliveryType?: string | undefined;
    dpr?: string | number | undefined;
    format?: string | undefined;
    height?: string | number | undefined;
    quality?: string | number | undefined;
    strictTransformations?: boolean | undefined;
    width?: string | number | undefined;
    aspectRatio?: string | number | undefined;
    gravity?: string | undefined;
    zoom?: string | undefined;
    angle?: any;
    art?: any;
    autoBrightness?: any;
    autoColor?: any;
    autoContrast?: any;
    assistColorblind?: any;
    background?: any;
    blackwhite?: any;
    blur?: any;
    blurFaces?: any;
    blurRegion?: any;
    border?: any;
    brightness?: any;
    brightnessHSB?: any;
    cartoonify?: any;
    color?: any;
    colorize?: any;
    contrast?: any;
    distort?: any;
    fillLight?: any;
    gamma?: any;
    gradientFade?: any;
    grayscale?: any;
    improve?: any;
    loop?: any;
    multiply?: any;
    negate?: any;
    oilPaint?: any;
    opacity?: any;
    outline?: any;
    pixelate?: any;
    pixelateFaces?: any;
    pixelateRegion?: any;
    radius?: any;
    redeye?: any;
    replaceColor?: any;
    saturation?: any;
    screen?: any;
    sepia?: any;
    shadow?: any;
    sharpen?: any;
    shear?: any;
    simulateColorblind?: any;
    tint?: any;
    trim?: any;
    unsharpMask?: any;
    vectorize?: any;
    vibrance?: any;
    vignette?: any;
    effects?: {
        angle?: any;
        art?: any;
        autoBrightness?: any;
        autoColor?: any;
        autoContrast?: any;
        assistColorblind?: any;
        background?: any;
        blackwhite?: any;
        blur?: any;
        blurFaces?: any;
        blurRegion?: any;
        border?: any;
        brightness?: any;
        brightnessHSB?: any;
        cartoonify?: any;
        color?: any;
        colorize?: any;
        contrast?: any;
        distort?: any;
        fillLight?: any;
        gamma?: any;
        gradientFade?: any;
        grayscale?: any;
        improve?: any;
        loop?: any;
        multiply?: any;
        negate?: any;
        oilPaint?: any;
        opacity?: any;
        outline?: any;
        pixelate?: any;
        pixelateFaces?: any;
        pixelateRegion?: any;
        radius?: any;
        redeye?: any;
        replaceColor?: any;
        saturation?: any;
        screen?: any;
        sepia?: any;
        shadow?: any;
        sharpen?: any;
        shear?: any;
        simulateColorblind?: any;
        tint?: any;
        trim?: any;
        unsharpMask?: any;
        vectorize?: any;
        vibrance?: any;
        vignette?: any;
    }[] | undefined;
    flags?: "animated" | "any_format" | "apng" | "attachment" | "awebp" | "clip" | "clip_evenodd" | "cutter" | "force_icc" | "force_strip" | "getinfo" | "group4" | "hlsv3" | "ignore_aspect_ratio" | "ignore_mask_channels" | "immutable_cache" | "keep_attribution" | "keep_dar" | "keep_iptc" | "layer_apply" | "lossy" | "mono" | "no_overflow" | "no_stream" | "png8_fl_png24_fl_png32" | "preserve_transparency" | "progressive" | "rasterize" | "region_relative" | "relative" | "replace_image" | "sanitize" | "splice" | "streaming_attachment" | "strip_profile" | "text_disallow_overflow" | "text_no_trim" | "tiff8_lzw" | "tiled" | "truncate_ts" | "waveform" | ("animated" | "any_format" | "apng" | "attachment" | "awebp" | "clip" | "clip_evenodd" | "cutter" | "force_icc" | "force_strip" | "getinfo" | "group4" | "hlsv3" | "ignore_aspect_ratio" | "ignore_mask_channels" | "immutable_cache" | "keep_attribution" | "keep_dar" | "keep_iptc" | "layer_apply" | "lossy" | "mono" | "no_overflow" | "no_stream" | "png8_fl_png24_fl_png32" | "preserve_transparency" | "progressive" | "rasterize" | "region_relative" | "relative" | "replace_image" | "sanitize" | "splice" | "streaming_attachment" | "strip_profile" | "text_disallow_overflow" | "text_no_trim" | "tiff8_lzw" | "tiled" | "truncate_ts" | "waveform")[] | undefined;
    text?: string | undefined;
    version?: string | number | undefined;
    underlay?: string | undefined;
    underlays?: {
        appliedEffects?: {}[] | undefined;
        appliedFlags?: "animated" | "any_format" | "apng" | "attachment" | "awebp" | "clip" | "clip_evenodd" | "cutter" | "force_icc" | "force_strip" | "getinfo" | "group4" | "hlsv3" | "ignore_aspect_ratio" | "ignore_mask_channels" | "immutable_cache" | "keep_attribution" | "keep_dar" | "keep_iptc" | "layer_apply" | "lossy" | "mono" | "no_overflow" | "no_stream" | "png8_fl_png24_fl_png32" | "preserve_transparency" | "progressive" | "rasterize" | "region_relative" | "relative" | "replace_image" | "sanitize" | "splice" | "streaming_attachment" | "strip_profile" | "text_disallow_overflow" | "text_no_trim" | "tiff8_lzw" | "tiled" | "truncate_ts" | "waveform" | ("animated" | "any_format" | "apng" | "attachment" | "awebp" | "clip" | "clip_evenodd" | "cutter" | "force_icc" | "force_strip" | "getinfo" | "group4" | "hlsv3" | "ignore_aspect_ratio" | "ignore_mask_channels" | "immutable_cache" | "keep_attribution" | "keep_dar" | "keep_iptc" | "layer_apply" | "lossy" | "mono" | "no_overflow" | "no_stream" | "png8_fl_png24_fl_png32" | "preserve_transparency" | "progressive" | "rasterize" | "region_relative" | "relative" | "replace_image" | "sanitize" | "splice" | "streaming_attachment" | "strip_profile" | "text_disallow_overflow" | "text_no_trim" | "tiff8_lzw" | "tiled" | "truncate_ts" | "waveform")[] | undefined;
        effects?: {}[] | undefined;
        crop?: "auto" | "fill" | "lfill" | "fill_pad" | "crop" | "thumb" | "scale" | "fit" | "limit" | "mfit" | "pad" | "lpad" | "mpad" | "imagga_scale" | "imagga_crop" | undefined;
        flags?: "animated" | "any_format" | "apng" | "attachment" | "awebp" | "clip" | "clip_evenodd" | "cutter" | "force_icc" | "force_strip" | "getinfo" | "group4" | "hlsv3" | "ignore_aspect_ratio" | "ignore_mask_channels" | "immutable_cache" | "keep_attribution" | "keep_dar" | "keep_iptc" | "layer_apply" | "lossy" | "mono" | "no_overflow" | "no_stream" | "png8_fl_png24_fl_png32" | "preserve_transparency" | "progressive" | "rasterize" | "region_relative" | "relative" | "replace_image" | "sanitize" | "splice" | "streaming_attachment" | "strip_profile" | "text_disallow_overflow" | "text_no_trim" | "tiff8_lzw" | "tiled" | "truncate_ts" | "waveform" | ("animated" | "any_format" | "apng" | "attachment" | "awebp" | "clip" | "clip_evenodd" | "cutter" | "force_icc" | "force_strip" | "getinfo" | "group4" | "hlsv3" | "ignore_aspect_ratio" | "ignore_mask_channels" | "immutable_cache" | "keep_attribution" | "keep_dar" | "keep_iptc" | "layer_apply" | "lossy" | "mono" | "no_overflow" | "no_stream" | "png8_fl_png24_fl_png32" | "preserve_transparency" | "progressive" | "rasterize" | "region_relative" | "relative" | "replace_image" | "sanitize" | "splice" | "streaming_attachment" | "strip_profile" | "text_disallow_overflow" | "text_no_trim" | "tiff8_lzw" | "tiled" | "truncate_ts" | "waveform")[] | undefined;
        height?: string | number | undefined;
        position?: {
            angle?: string | number | undefined;
            gravity?: string | undefined;
            x?: string | number | undefined;
            y?: string | number | undefined;
        } | undefined;
        publicId?: string | undefined;
        type?: string | undefined;
        url?: string | undefined;
        width?: string | number | undefined;
    }[] | undefined;
    seoSuffix?: string | undefined;
    removeBackground?: boolean | undefined;
    rawTransformations?: string | string[] | undefined;
    overlay?: {
        appliedEffects?: {}[] | undefined;
        appliedFlags?: "animated" | "any_format" | "apng" | "attachment" | "awebp" | "clip" | "clip_evenodd" | "cutter" | "force_icc" | "force_strip" | "getinfo" | "group4" | "hlsv3" | "ignore_aspect_ratio" | "ignore_mask_channels" | "immutable_cache" | "keep_attribution" | "keep_dar" | "keep_iptc" | "layer_apply" | "lossy" | "mono" | "no_overflow" | "no_stream" | "png8_fl_png24_fl_png32" | "preserve_transparency" | "progressive" | "rasterize" | "region_relative" | "relative" | "replace_image" | "sanitize" | "splice" | "streaming_attachment" | "strip_profile" | "text_disallow_overflow" | "text_no_trim" | "tiff8_lzw" | "tiled" | "truncate_ts" | "waveform" | ("animated" | "any_format" | "apng" | "attachment" | "awebp" | "clip" | "clip_evenodd" | "cutter" | "force_icc" | "force_strip" | "getinfo" | "group4" | "hlsv3" | "ignore_aspect_ratio" | "ignore_mask_channels" | "immutable_cache" | "keep_attribution" | "keep_dar" | "keep_iptc" | "layer_apply" | "lossy" | "mono" | "no_overflow" | "no_stream" | "png8_fl_png24_fl_png32" | "preserve_transparency" | "progressive" | "rasterize" | "region_relative" | "relative" | "replace_image" | "sanitize" | "splice" | "streaming_attachment" | "strip_profile" | "text_disallow_overflow" | "text_no_trim" | "tiff8_lzw" | "tiled" | "truncate_ts" | "waveform")[] | undefined;
        effects?: {}[] | undefined;
        crop?: "auto" | "fill" | "lfill" | "fill_pad" | "crop" | "thumb" | "scale" | "fit" | "limit" | "mfit" | "pad" | "lpad" | "mpad" | "imagga_scale" | "imagga_crop" | undefined;
        flags?: "animated" | "any_format" | "apng" | "attachment" | "awebp" | "clip" | "clip_evenodd" | "cutter" | "force_icc" | "force_strip" | "getinfo" | "group4" | "hlsv3" | "ignore_aspect_ratio" | "ignore_mask_channels" | "immutable_cache" | "keep_attribution" | "keep_dar" | "keep_iptc" | "layer_apply" | "lossy" | "mono" | "no_overflow" | "no_stream" | "png8_fl_png24_fl_png32" | "preserve_transparency" | "progressive" | "rasterize" | "region_relative" | "relative" | "replace_image" | "sanitize" | "splice" | "streaming_attachment" | "strip_profile" | "text_disallow_overflow" | "text_no_trim" | "tiff8_lzw" | "tiled" | "truncate_ts" | "waveform" | ("animated" | "any_format" | "apng" | "attachment" | "awebp" | "clip" | "clip_evenodd" | "cutter" | "force_icc" | "force_strip" | "getinfo" | "group4" | "hlsv3" | "ignore_aspect_ratio" | "ignore_mask_channels" | "immutable_cache" | "keep_attribution" | "keep_dar" | "keep_iptc" | "layer_apply" | "lossy" | "mono" | "no_overflow" | "no_stream" | "png8_fl_png24_fl_png32" | "preserve_transparency" | "progressive" | "rasterize" | "region_relative" | "relative" | "replace_image" | "sanitize" | "splice" | "streaming_attachment" | "strip_profile" | "text_disallow_overflow" | "text_no_trim" | "tiff8_lzw" | "tiled" | "truncate_ts" | "waveform")[] | undefined;
        height?: string | number | undefined;
        position?: {
            angle?: string | number | undefined;
            gravity?: string | undefined;
            x?: string | number | undefined;
            y?: string | number | undefined;
        } | undefined;
        publicId?: string | undefined;
        text?: string | {
            text: string;
            alignment?: string | undefined;
            antialias?: string | undefined;
            border?: string | undefined;
            color?: string | undefined;
            fontFamily?: string | undefined;
            fontSize?: number | undefined;
            fontStyle?: string | number | undefined;
            fontWeight?: string | undefined;
            hinting?: string | number | undefined;
            letterSpacing?: string | number | undefined;
            lineSpacing?: string | number | undefined;
            stroke?: string | undefined;
        } | undefined;
        url?: string | undefined;
        width?: string | number | undefined;
    } | undefined;
    overlays?: {
        appliedEffects?: {}[] | undefined;
        appliedFlags?: "animated" | "any_format" | "apng" | "attachment" | "awebp" | "clip" | "clip_evenodd" | "cutter" | "force_icc" | "force_strip" | "getinfo" | "group4" | "hlsv3" | "ignore_aspect_ratio" | "ignore_mask_channels" | "immutable_cache" | "keep_attribution" | "keep_dar" | "keep_iptc" | "layer_apply" | "lossy" | "mono" | "no_overflow" | "no_stream" | "png8_fl_png24_fl_png32" | "preserve_transparency" | "progressive" | "rasterize" | "region_relative" | "relative" | "replace_image" | "sanitize" | "splice" | "streaming_attachment" | "strip_profile" | "text_disallow_overflow" | "text_no_trim" | "tiff8_lzw" | "tiled" | "truncate_ts" | "waveform" | ("animated" | "any_format" | "apng" | "attachment" | "awebp" | "clip" | "clip_evenodd" | "cutter" | "force_icc" | "force_strip" | "getinfo" | "group4" | "hlsv3" | "ignore_aspect_ratio" | "ignore_mask_channels" | "immutable_cache" | "keep_attribution" | "keep_dar" | "keep_iptc" | "layer_apply" | "lossy" | "mono" | "no_overflow" | "no_stream" | "png8_fl_png24_fl_png32" | "preserve_transparency" | "progressive" | "rasterize" | "region_relative" | "relative" | "replace_image" | "sanitize" | "splice" | "streaming_attachment" | "strip_profile" | "text_disallow_overflow" | "text_no_trim" | "tiff8_lzw" | "tiled" | "truncate_ts" | "waveform")[] | undefined;
        effects?: {}[] | undefined;
        crop?: "auto" | "fill" | "lfill" | "fill_pad" | "crop" | "thumb" | "scale" | "fit" | "limit" | "mfit" | "pad" | "lpad" | "mpad" | "imagga_scale" | "imagga_crop" | undefined;
        flags?: "animated" | "any_format" | "apng" | "attachment" | "awebp" | "clip" | "clip_evenodd" | "cutter" | "force_icc" | "force_strip" | "getinfo" | "group4" | "hlsv3" | "ignore_aspect_ratio" | "ignore_mask_channels" | "immutable_cache" | "keep_attribution" | "keep_dar" | "keep_iptc" | "layer_apply" | "lossy" | "mono" | "no_overflow" | "no_stream" | "png8_fl_png24_fl_png32" | "preserve_transparency" | "progressive" | "rasterize" | "region_relative" | "relative" | "replace_image" | "sanitize" | "splice" | "streaming_attachment" | "strip_profile" | "text_disallow_overflow" | "text_no_trim" | "tiff8_lzw" | "tiled" | "truncate_ts" | "waveform" | ("animated" | "any_format" | "apng" | "attachment" | "awebp" | "clip" | "clip_evenodd" | "cutter" | "force_icc" | "force_strip" | "getinfo" | "group4" | "hlsv3" | "ignore_aspect_ratio" | "ignore_mask_channels" | "immutable_cache" | "keep_attribution" | "keep_dar" | "keep_iptc" | "layer_apply" | "lossy" | "mono" | "no_overflow" | "no_stream" | "png8_fl_png24_fl_png32" | "preserve_transparency" | "progressive" | "rasterize" | "region_relative" | "relative" | "replace_image" | "sanitize" | "splice" | "streaming_attachment" | "strip_profile" | "text_disallow_overflow" | "text_no_trim" | "tiff8_lzw" | "tiled" | "truncate_ts" | "waveform")[] | undefined;
        height?: string | number | undefined;
        position?: {
            angle?: string | number | undefined;
            gravity?: string | undefined;
            x?: string | number | undefined;
            y?: string | number | undefined;
        } | undefined;
        publicId?: string | undefined;
        text?: string | {
            text: string;
            alignment?: string | undefined;
            antialias?: string | undefined;
            border?: string | undefined;
            color?: string | undefined;
            fontFamily?: string | undefined;
            fontSize?: number | undefined;
            fontStyle?: string | number | undefined;
            fontWeight?: string | undefined;
            hinting?: string | number | undefined;
            letterSpacing?: string | number | undefined;
            lineSpacing?: string | number | undefined;
            stroke?: string | undefined;
        } | undefined;
        url?: string | undefined;
        width?: string | number | undefined;
    }[] | undefined;
    namedTransformations?: string | string[] | undefined;
    transformations?: string | string[] | undefined;
    zoompan?: string | boolean | {
        options: string;
        loop?: any;
    } | undefined;
    restore?: boolean | undefined;
    replace?: string[] | boolean[] | {
        to: string;
        from: string;
        preserveGeometry?: boolean | undefined;
    } | undefined;
    remove?: string | string[] | {
        prompt?: string | string[] | undefined;
        region?: number[] | number[][] | undefined;
        multiple?: boolean | undefined;
        removeShadow?: boolean | undefined;
    } | undefined;
    recolor?: string | string[] | {
        prompt?: string | string[] | undefined;
        to?: string | undefined;
        multiple?: boolean | undefined;
    } | undefined;
    fillBackground?: boolean | {
        crop?: "auto" | "fill" | "lfill" | "fill_pad" | "crop" | "thumb" | "scale" | "fit" | "limit" | "mfit" | "pad" | "lpad" | "mpad" | "imagga_scale" | "imagga_crop" | undefined;
        gravity?: string | undefined;
        prompt?: string | undefined;
    } | undefined;
    enhance?: boolean | undefined;
    defaultImage?: string | undefined;
} & {
    config?: _cloudinary_util_url_loader_dist_schema_iaCosk9Y.e | undefined;
    preserveTransformations?: boolean | undefined;
    src: string;
    unoptimized?: boolean | undefined;
} & React.RefAttributes<HTMLImageElement>>;

type CldOgImageProps = CldImageProps & {
    excludeTags?: Array<string>;
    keys?: object;
    twitterTitle?: string;
};
declare const CldOgImage: ({ excludeTags, twitterTitle, keys, ...props }: CldOgImageProps) => React.JSX.Element;

type CldUploadWidgetCloudinaryInstance = any;
type CldUploadWidgetWidgetInstance = any;
interface CldUploadWidgetProps {
    children?: ({ cloudinary, widget, open, results, error }: CldUploadWidgetPropsChildren) => JSX.Element;
    config?: ConfigOptions;
    onError?: CldUploadEventCallbackError;
    onOpen?: CldUploadEventCallbackWidgetOnly;
    /**
     * @deprecated use onSuccess instead
     */
    onUpload?: CldUploadEventCallbackNoOptions;
    onAbort?: CldUploadEventCallback;
    onBatchCancelled?: CldUploadEventCallback;
    onClose?: CldUploadEventCallback;
    onDisplayChanged?: CldUploadEventCallback;
    onPublicId?: CldUploadEventCallback;
    onQueuesEnd?: CldUploadEventCallback;
    onQueuesStart?: CldUploadEventCallback;
    onRetry?: CldUploadEventCallback;
    onShowCompleted?: CldUploadEventCallback;
    onSourceChanged?: CldUploadEventCallback;
    onSuccess?: CldUploadEventCallback;
    onTags?: CldUploadEventCallback;
    onUploadAdded?: CldUploadEventCallback;
    options?: CloudinaryUploadWidgetOptions;
    signatureEndpoint?: URL | RequestInfo;
    uploadPreset?: string;
}
type CldUploadWidgetPropsChildren = {
    cloudinary: CldUploadWidgetCloudinaryInstance;
    widget: CldUploadWidgetWidgetInstance;
    error?: CloudinaryUploadWidgetError;
    isLoading?: boolean;
    results?: CloudinaryUploadWidgetResults;
} & CloudinaryUploadWidgetInstanceMethods;
type CldUploadEventCallback = (results: CloudinaryUploadWidgetResults, widget: CldUploadEventCallbackWidget) => void;
type CldUploadEventCallbackNoOptions = (results: CloudinaryUploadWidgetResults, widget: CldUploadWidgetWidgetInstance) => void;
type CldUploadEventCallbackWidgetOnly = (widget: CldUploadWidgetWidgetInstance) => void;
type CldUploadEventCallbackError = (error: CloudinaryUploadWidgetError, widget: CldUploadEventCallbackWidget) => void;
type CldUploadEventCallbackWidget = {
    widget: CldUploadWidgetWidgetInstance;
} & CloudinaryUploadWidgetInstanceMethods;

declare const CldUploadWidget: ({ children, config, onError, onOpen, onUpload, options, signatureEndpoint, uploadPreset, ...props }: CldUploadWidgetProps) => React.JSX.Element;

interface CldUploadButtonProps extends Omit<CldUploadWidgetProps, 'children'> {
    className?: string;
    children?: JSX.Element | string | Array<JSX.Element | string>;
    onClick?: Function;
}
declare const CldUploadButton: ({ className, children, onClick, onError, onOpen, onUpload, onAbort, onBatchCancelled, onClose, onDisplayChanged, onPublicId, onQueuesEnd, onQueuesStart, onRetry, onShowCompleted, onSourceChanged, onSuccess, onTags, onUploadAdded, options, signatureEndpoint, uploadPreset, ...props }: CldUploadButtonProps) => React.JSX.Element;

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

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

type CldVideoPlayerProps = Omit<CloudinaryVideoPlayerOptions, "cloud_name" | "autoplayMode" | "publicId" | "secure" | "showLogo" | "logoImageUrl" | "logoOnclickUrl"> & {
    className?: string;
    config?: ConfigOptions;
    id?: string;
    logo?: boolean | CldVideoPlayerPropsLogo;
    onDataLoad?: Function;
    onError?: Function;
    onMetadataLoad?: Function;
    onPause?: Function;
    onPlay?: Function;
    onEnded?: Function;
    playerRef?: MutableRefObject<CloudinaryVideoPlayer | null>;
    poster?: string | GetCldImageUrlOptions | GetCldVideoUrlOptions;
    src: string;
    videoRef?: MutableRefObject<HTMLVideoElement | null>;
    quality?: string | number;
};
interface CldVideoPlayerPropsLogo {
    imageUrl?: CloudinaryVideoPlayerOptionsLogo['logoImageUrl'];
    logo?: boolean;
    onClickUrl?: CloudinaryVideoPlayerOptionsLogo['logoOnclickUrl'];
}

declare const CldVideoPlayer: (props: CldVideoPlayerProps) => React.JSX.Element;

interface CloudinaryLoaderCldOptions {
}
interface CloudinaryLoaderLoaderOptions {
    height?: string | number;
    width?: string | number;
}
interface CloudinaryLoader {
    loaderOptions: CloudinaryLoaderLoaderOptions;
    imageProps: ImageProps;
    cldOptions: CloudinaryLoaderCldOptions;
    cldConfig?: object;
}
declare function cloudinaryLoader({ loaderOptions, imageProps, cldOptions, cldConfig }: CloudinaryLoader): string;

/**
 * getCldImageUrl
 */
type GetCldOgImageUrlOptions = GetCldImageUrlOptions;
declare function getCldOgImageUrl(options: GetCldOgImageUrlOptions): string;

export { CldImage, type CldImageProps, CldOgImage, type CldOgImageProps, CldUploadButton, type CldUploadButtonProps, CldUploadWidget, type CldUploadWidgetProps, type CldUploadWidgetPropsChildren, CldVideoPlayer, type CldVideoPlayerProps, type CldVideoPlayerPropsLogo, type CloudinaryLoader, type CloudinaryLoaderCldOptions, type CloudinaryLoaderLoaderOptions, type GetCldImageUrlAnalytics, type GetCldImageUrlConfig, type GetCldImageUrlOptions, type GetCldOgImageUrlOptions, type GetCldVideoUrlAnalytics, type GetCldVideoUrlConfig, type GetCldVideoUrlOptions, cloudinaryLoader, getCldImageUrl, getCldOgImageUrl, getCldVideoUrl };
