import { Component } from "../../hierarchy_object/Component";
import type { ReadonlyVector2 } from "../../math/ReadonlyVector2";
/**
 * this component will translate gameObject's position to parallax effect relative to camera
 *
 * This effect allows 2D objects to move as if they were 3D.
 *
 * important: This component is only available for static objects. (Moving game objects does not guarantee normal operation)
 *
 *
 * disallow multiple component
 */
export declare class ParallaxTranslater extends Component {
    readonly disallowMultipleComponent: boolean;
    private _offsetX;
    private _offsetY;
    private _initializeCenterFromPosition;
    private readonly _center;
    start(): void;
    private readonly _tempVector3;
    private readonly _tempVector2;
    update(): void;
    /**
     * translate center offset x (default: 1.5)
     */
    get offsetX(): number;
    /**
     * translate center offset x (default: 1.5)
     */
    set offsetX(value: number);
    /**
     * translate center offset y (default: 1.5)
     */
    get offsetY(): number;
    /**
     * translate center offset y (default: 1.5)
     */
    set offsetY(value: number);
    /**
     * if this value is true, the center will be initialized from transform.localPosition (default: true)
     */
    get initializeCenterFromPosition(): boolean;
    /**
     * if this value is true, the center will be initialized from transform.localPosition (default: true)
     */
    set initializeCenterFromPosition(value: boolean);
    /**
     * center of parallax effect
     */
    get center(): ReadonlyVector2;
    /**
     * center of parallax effect
     */
    set center(value: ReadonlyVector2);
}
