import { type Bounds, type PhysicsShape, type Vec3 } from "./Shape.js";
export type CollisionFilter = {
    readonly layer: number;
    readonly mask: number;
};
export type ColliderMaterial = {
    readonly restitution: number;
    readonly friction: number;
};
export type ColliderDescriptor = {
    readonly shape: PhysicsShape;
    readonly sensor?: boolean;
    readonly filter?: Partial<CollisionFilter>;
    readonly material?: Partial<ColliderMaterial>;
};
export declare class Collider {
    readonly id: number;
    readonly bodyId: number;
    readonly shape: PhysicsShape;
    readonly sensor: boolean;
    readonly filter: CollisionFilter;
    readonly material: ColliderMaterial;
    constructor(id: number, bodyId: number, descriptor: ColliderDescriptor);
    canCollideWith(other: Collider): boolean;
    bounds(position: Vec3): Bounds;
}
//# sourceMappingURL=Collider.d.ts.map