import { TemplateResult, CSSResult } from 'lit-element';
import ArenaPlugin, { DefaulPlugintOptions } from '../interfaces/ArenaPlugin';
import WebComponent from '../helpers/WebComponent';
declare type ImgSize = {
    width: number;
    height: number;
};
export declare type Srcset = Array<{
    media: string;
    rations: Array<ImgSize & {
        ratio: number;
    }>;
}>;
export declare type ImagePluginOptions = DefaulPlugintOptions & {
    srcset?: Srcset;
};
export declare const prepareImageSrc: (src: string, width?: number | undefined, height?: number | undefined) => string;
export declare class Image extends WebComponent {
    src: string | undefined;
    width: number | undefined;
    height: number | undefined;
    loading: boolean;
    get input(): HTMLInputElement | undefined;
    static get styles(): CSSResult[];
    render(): TemplateResult;
    protected onChange(): void;
    protected upload(file: File): void;
}
declare const imagePlugin: (opts?: ImagePluginOptions | undefined) => ArenaPlugin;
export default imagePlugin;
//# sourceMappingURL=imagePlugin.d.ts.map