import PIXI from 'pixi.js';
import { Area } from './GraphicsTypes';
export declare type ImpactContextItem<T extends PIXI.Container> = {
    item: T;
    area: Area;
    className: string;
    filter: string[];
};
export declare type ImpactType = {
    impactArea?: Area;
    impactClassName?: string;
    impactFilter?: string[];
    onImpact?: (impacts: string[]) => void;
    detectImpacts?: boolean;
};
export declare type ImpactContextType<T extends PIXI.Container> = {
    items: ImpactContextItem<T>[];
    updateItem: (item: ImpactContextItem<T>) => void;
    removeItem: (item: ImpactContextItem<T>) => void;
};
export declare enum ImpactAction {
    Update = 0,
    Remove = 1
}
export declare type ImpactActionType<T extends PIXI.Container> = {
    type: ImpactAction;
    item: ImpactContextItem<T>;
};
