import { LitElement, PropertyValues } from 'lit';
import { AppState } from '@infinite-canvas-tutorial/ecs';
import { ExtendedAPI } from '../API';
export declare class PenbarCrop extends LitElement {
    static styles: import("lit").CSSResult;
    appState: AppState;
    api: ExtendedAPI;
    private cropRatio;
    get clipNode(): import("@infinite-canvas-tutorial/ecs").SerializedNode;
    get clipChildNode(): import("@infinite-canvas-tutorial/ecs").SerializedNode;
    private handleApply;
    private handleCancel;
    private handleClipAspectChanged;
    private handleCropRatioChanged;
    shouldUpdate(changedProperties: PropertyValues): boolean;
    private previousLayersCropping;
    private originalClipWidth;
    private originalClipHeight;
    /** Geometric center of the child node in clip coordinates when entering crop mode, scale around this point when ratio changes */
    private originalCenterX;
    private originalCenterY;
    render(): import("lit").TemplateResult<1>;
}
