import * as PIXI from 'pixi.js';
import { Mesh2D } from '@turbox3d/renderer-pixi';
import { Vec2 } from '@turbox3d/shared';
import { IFitStyle } from '../draw-utils/drawRect';
export interface IImage2dProps {
    x?: number;
    y?: number;
    width: number;
    height: number;
    rotation?: number;
    scale?: Vec2;
    /**
     * 传入的位置坐标是否是矩形中心点
     */
    central?: boolean;
    radius?: number;
    lineWidth?: number;
    lineColor?: number;
    lineAlpha?: number;
    /**
     * 边框内扩 0、外扩 1
     */
    alignment?: number;
    native?: boolean;
    fillColor?: number;
    fillAlpha?: number;
    alpha?: number;
    backgroundImage?: string | HTMLImageElement;
    materialDirection?: Vec2;
    fit?: IFitStyle;
    zIndex?: number;
}
/** UI组件-图片 */
export default class Image2d extends Mesh2D<IImage2dProps> {
    protected view: PIXI.Container;
    protected reactivePipeLine: (() => void)[];
    private g;
    private s;
    componentDidMount(): void;
    private loadTextureResource;
    updateGeometry(): Promise<void>;
    updateMaterial(): void;
    updatePosition(): void;
    updateRotation(): void;
    updateScale(): void;
}
