import type { ImgHTMLAttributes, PropType, SlotsType } from 'vue';
import type { ExtractPublicPropTypes } from '../../_utils';
import type { ImagePreviewInst, ImageSlots } from './public-types';
import type { IntersectionObserverOptions } from './utils';
export declare const imageProps: {
onPreviewPrev: PropType<() => void>;
onPreviewNext: PropType<() => void>;
onPreviewDownload: PropType<(imgSrc: string | undefined) => void>;
showToolbar: {
type: BooleanConstructor;
default: boolean;
};
showToolbarTooltip: BooleanConstructor;
renderToolbar: PropType;
theme: PropType;
}>;
}>;
}>>;
themeOverrides: PropType;
}>;
}>;
}>>>;
builtinThemeOverrides: PropType;
}>;
}>;
}>>>;
alt: StringConstructor;
height: PropType;
imgProps: PropType;
previewedImgProps: PropType;
lazy: BooleanConstructor;
intersectionObserverOptions: PropType;
objectFit: {
type: PropType<"fill" | "contain" | "cover" | "none" | "scale-down">;
default: string;
};
previewSrc: StringConstructor;
fallbackSrc: StringConstructor;
width: PropType;
src: StringConstructor;
previewDisabled: BooleanConstructor;
loadDescription: StringConstructor;
onError: PropType<(e: Event) => void>;
onLoad: PropType<(e: Event) => void>;
};
export type ImageProps = ExtractPublicPropTypes;
declare const _default: import("vue").DefineComponent void>;
onPreviewNext: PropType<() => void>;
onPreviewDownload: PropType<(imgSrc: string | undefined) => void>;
showToolbar: {
type: BooleanConstructor;
default: boolean;
};
showToolbarTooltip: BooleanConstructor;
renderToolbar: PropType;
theme: PropType;
}>;
}>;
}>>;
themeOverrides: PropType;
}>;
}>;
}>>>;
builtinThemeOverrides: PropType;
}>;
}>;
}>>>;
alt: StringConstructor;
height: PropType;
imgProps: PropType;
previewedImgProps: PropType;
lazy: BooleanConstructor;
intersectionObserverOptions: PropType;
objectFit: {
type: PropType<"fill" | "contain" | "cover" | "none" | "scale-down">;
default: string;
};
previewSrc: StringConstructor;
fallbackSrc: StringConstructor;
width: PropType;
src: StringConstructor;
previewDisabled: BooleanConstructor;
loadDescription: StringConstructor;
onError: PropType<(e: Event) => void>;
onLoad: PropType<(e: Event) => void>;
}>, {
click: () => void;
showPreview: () => void;
mergedClsPrefix: import("vue").Ref;
groupId: string | undefined;
previewInstRef: import("vue").Ref<{
setThumbnailEl: (e: HTMLImageElement | null) => void;
} | null, ImagePreviewInst | {
setThumbnailEl: (e: HTMLImageElement | null) => void;
} | null>;
imageRef: import("vue").Ref;
mergedPreviewSrc: import("vue").ComputedRef;
showError: import("vue").Ref;
shouldStartLoading: import("vue").Ref;
loaded: import("vue").Ref;
mergedOnClick: (e: PointerEvent) => void;
onPreviewClose: () => void;
mergedOnError: (e: Event) => void;
mergedOnLoad: (e: Event) => void;
previewShow: import("vue").Ref;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly void>;
onPreviewNext: PropType<() => void>;
onPreviewDownload: PropType<(imgSrc: string | undefined) => void>;
showToolbar: {
type: BooleanConstructor;
default: boolean;
};
showToolbarTooltip: BooleanConstructor;
renderToolbar: PropType;
theme: PropType;
}>;
}>;
}>>;
themeOverrides: PropType;
}>;
}>;
}>>>;
builtinThemeOverrides: PropType;
}>;
}>;
}>>>;
alt: StringConstructor;
height: PropType;
imgProps: PropType;
previewedImgProps: PropType;
lazy: BooleanConstructor;
intersectionObserverOptions: PropType;
objectFit: {
type: PropType<"fill" | "contain" | "cover" | "none" | "scale-down">;
default: string;
};
previewSrc: StringConstructor;
fallbackSrc: StringConstructor;
width: PropType;
src: StringConstructor;
previewDisabled: BooleanConstructor;
loadDescription: StringConstructor;
onError: PropType<(e: Event) => void>;
onLoad: PropType<(e: Event) => void>;
}>> & Readonly<{}>, {
objectFit: "none" | "fill" | "contain" | "cover" | "scale-down";
lazy: boolean;
showToolbar: boolean;
showToolbarTooltip: boolean;
previewDisabled: boolean;
}, SlotsType, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _default;