import { default as OlFeature } from 'ol/Feature';
import { ElementPluginOptions, Coord, ElementImage, CircleData, PointData } from './types';
import { Style, StorkeStyle, FillStyle, ImageStyle, CircleStyle } from '../../style';
import { Element } from './element';
import { Geometry } from 'ol/geom';
export interface ImagePluginOptions extends ElementPluginOptions<Coord> {
    image: ElementImage;
}
export declare function createElement(options: ImagePluginOptions): {
    setRotate(rotate: number): void;
    setStyle(style: Style): void;
    id: number;
    layerId: number;
    type: Element["type"];
    name: string | undefined;
    image: ElementImage | undefined;
    data: any;
    rotate: number;
    style: Partial<{
        stroke: Partial< StorkeStyle>;
        fill: Partial< FillStyle>;
        image: Partial< ImageStyle>;
        circle: Partial< CircleStyle>;
    }> | undefined;
    props: {
        [x: string]: any;
    };
    setName(name: string): void;
    setProps(props: Record<string, unknown>): void;
    getOlFeature(): OlFeature< Geometry>;
    setData(data: Coord | CircleData | PointData): void;
};
