import { MediaPickerMedia, MediaPickerImageSettings, MediaPickerStorageProviderContext, MediaPickerProvider, MediaPickerEnums } from "../../models";
import { TsxAllowUnknowProperties } from "../";
export interface IMediaPicker {
    /** Selected media */
    selectedMedia?: MediaPickerMedia | Array<MediaPickerMedia>;
    /** Indicate web application service ID and the needed properties to handle image */
    providerContext: MediaPickerStorageProviderContext;
    /** Image settings for picking images */
    imageSettings?: MediaPickerImageSettings;
    /** The media types which user can select. Default is all*/
    selectableMediaTypes: Array<MediaPickerEnums.OmniaMediaTypes>;
    /** Change provider order, remove provider, add custom provider*/
    providerConfiguration?: (providers: Array<MediaPickerProvider>) => Array<MediaPickerProvider>;
    /** The callback when image is saved completely or video result is created */
    saved: (result: MediaPickerMedia | Array<MediaPickerMedia>) => void;
    /** The callback when close media picker */
    closed?: () => void;
    /** Render the picker in dialog */
    dialog?: boolean;
    enableGallery?: boolean;
    itemLimit?: number;
    enableMediaCaption?: boolean;
}
declare global {
    namespace VueTsxSupport.JSX {
        interface Element {
        }
        interface ElementClass {
        }
        interface ElementAttributesProperty {
        }
        interface IntrinsicElements {
            "omfx-media-picker": TsxAllowUnknowProperties<IMediaPicker>;
        }
    }
}
