export default ViewportPositionSystem;
declare class ViewportPositionSystem extends System<any, any, any, any, any> {
    constructor(viewportSize: any);
    dependencies: (typeof GUIElement | typeof ViewportPosition)[];
    components_used: ResourceAccessSpecification<typeof GUIElement>[];
    viewportSize: any;
    viewportSizeChangeReactor: SignalBinding;
    data: {};
    startup(entityManager: any): Promise<void>;
    shutdown(entityManager: any): Promise<void>;
    /**
     * @param {GUIElement} el
     * @param {ViewportPosition} vp
     */
    positionComponent(el: GUIElement, vp: ViewportPosition): void;
    /**
     *
     * @param {ViewportPosition} vp
     * @param {GUIElement} el
     * @param entity
     */
    link(vp: ViewportPosition, el: GUIElement, entity: any): void;
    /**
     *
     * @param {ViewportPosition} vp
     * @param {GUIElement} el
     * @param entity
     */
    unlink(vp: ViewportPosition, el: GUIElement, entity: any): void;
    /**
     * @readonly
     * @type {boolean}
     */
    readonly isViewportPositionSystem: boolean;
}
import { System } from '../../System.js';
import GUIElement from "../GUIElement.js";
import ViewportPosition from './ViewportPosition.js';
import { ResourceAccessSpecification } from "../../../../core/model/ResourceAccessSpecification.js";
import { SignalBinding } from "../../../../core/events/signal/SignalBinding.js";
//# sourceMappingURL=ViewportPositionSystem.d.ts.map