import type { Collision2D } from "../physics/2d/Collision2D";
import type { Collider2D } from "../script/physics2d/collider/Collider2D";
import type { Component } from "./Component";
export declare class GameObjectEventContainer {
    private readonly _matrixUpdateComponents;
    private readonly _collisionEnter2DComponentEvents;
    private readonly _collisionStay2DComponentEvents;
    private readonly _collisionExit2DComponentEvents;
    private readonly _triggerEnter2DComponentEvents;
    private readonly _triggerStay2DComponentEvents;
    private readonly _triggerExit2DComponentEvents;
    registerComponent(component: Component): void;
    unregisterComponent(component: Component): void;
    invokeOnWorldMatrixUpdated(): void;
    invokeOnCollisionEnter2D(collision: Collision2D): void;
    invokeOnCollisionStay2D(collision: Collision2D): void;
    invokeOnCollisionExit2D(collision: Collision2D): void;
    invokeOnTriggerEnter2D(other: Collider2D): void;
    invokeOnTriggerStay2D(other: Collider2D): void;
    invokeOnTriggerExit2D(other: Collider2D): void;
}
