import { AssetEvent, AbstractionBase, Matrix3D, Vector3D, Sphere, Box } from '@awayjs/core';
import { ITraversable } from './ITraversable';
import { PickEntity } from './PickEntity';
import { PickingCollision } from '../pick/PickingCollision';
/**
 * @class RenderableListItem
 */
export declare class _Pick_PickableBase extends AbstractionBase {
    get entity(): PickEntity;
    /**
     *
     * @param renderable
     * @param sourceEntity
     * @param surface
     * @param renderer
     */
    init(traversable: ITraversable, entity: PickEntity): void;
    onClear(event: AssetEvent): void;
    hitTestPoint(x: number, y: number, z: number): boolean;
    getBoxBounds(matrix3D?: Matrix3D, strokeFlag?: boolean, cache?: Box, target?: Box): Box;
    getSphereBounds(center: Vector3D, matrix3D?: Matrix3D, strokeFlag?: boolean, cache?: Sphere, target?: Sphere): Sphere;
    testCollision(collision: PickingCollision, closestFlag: boolean): boolean;
}
//# sourceMappingURL=_Pick_PickableBase.d.ts.map