import { INinePatchCacheData, INinePatchGame } from "./NinePatchPlugin";
export declare class NinePatch extends Phaser.Sprite {
    /**
     * The eventual sizes of the container
     */
    localWidth: number;
    localHeight: number;
    /**
     * The sizes of the edges
     */
    private leftSize;
    private topSize;
    private rightSize;
    private bottomSize;
    /**
     * The original texture, unmodified
     */
    private baseTexture;
    private baseFrame;
    constructor(game: INinePatchGame, x: number, y: number, key: string, frame: string, width: number, height: number, data?: INinePatchCacheData);
    /**
     * Set the size of the container, then update all the parts
     *
     * @param width
     * @param height
     */
    resize(width: number, height: number): void;
    /**
     * Override the destroy to fix PIXI leaking CanvasBuffers
     *
     * @param args
     */
    destroy(...args: any[]): void;
    /**
     * Redraw the the current texture to adjust for the new sizes;
     */
    private renderTexture;
    /**
     * Here we create a sprite part for the container based on the given input
     *
     * @param x
     * @param y
     * @param width
     * @param height
     * @returns {PIXI.Sprite}
     */
    private createTexturePart;
}
