import { CustomElement } from '../../Abstracts/CustomElement';
import { IThumbnailElementProps } from './IThumbnailElementProps';
import { ThumbnailPreview } from './Previews/ThumbnailPreview';
declare const ThumbnailElement_base: (abstract new (...args: Array<any>) => import("../../../Behaviors/Themeable").IThemeableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Disableable").IDisableableProps) & typeof CustomElement & import("../../../Behaviors/Themeable").IThemeableCtor;
/**
 * Thumbnail - Displays an image or video and falls back to a mosaik-icon if the media is not available.
 *
 * @public
 */
export declare class ThumbnailElement extends ThumbnailElement_base implements IThumbnailElementProps {
    private _preview;
    /**
     * @public
     */
    constructor();
    /**
     * Returns the natural tag name of this element.
     *
     * @public
     * @static
     * @readonly
     */
    static get is(): string;
    /**
     * Gets or sets the `file` property.
     *
     * @public
     */
    get preview(): ThumbnailPreview | null;
    set preview(value: ThumbnailPreview | null);
    /**
     * Gets the `kind` property.
     * The `kind` property represents the kind of preview to display.
     *
     * @public
     * @readonly
     */
    get kind(): ThumbnailPreview['type'] | 'other';
}
/**
 * @public
 */
export declare namespace ThumbnailElement {
    type Props = IThumbnailElementProps;
}
/**
 * @public
 */
declare global {
    interface HTMLElementTagNameMap {
        'mosaik-thumbnail': ThumbnailElement;
    }
}
export {};
//# sourceMappingURL=ThumbnailElement.d.ts.map