import type { InternalModel, Live2DModel } from 'pixi-live2d-display';
import type { Application } from 'pixi.js';
import type { Live2DModelType, ModelOptions } from '../types/index.js';
export declare class Model {
    private live2dModel;
    private modelOptions;
    private application;
    private model;
    private failEvent?;
    constructor(live2dModel: Live2DModelType, modelOptions: ModelOptions, application: Application);
    create(): Live2DModel<InternalModel>;
    /**
     * 模型资源全部加载完毕的事件回调
     * @param fn
     */
    onLoaded(fn: (modelInfo: {
        width: number;
        height: number;
    }) => void): void;
    /**
     * 模型加载失败的事件回调
     * @param fn
     */
    onFail(fn: (error: Error) => void): void;
    /**
     * 设置缩放比例
     * @param x
     * @param y
     */
    setScale(x?: number, y?: number): void;
    /**
     * 设置位置
     * @param x
     * @param y
     */
    setPosition(x?: number, y?: number): void;
    /**
     * 切换纹理
     * @param callback
     */
    changeTexture(callback: (options: {
        status: boolean;
    }) => void): void;
}
