import { type IColshape } from "../../common/colshape/IColshape";
import { CCMPWorldObject } from "../worldObject/CCMPWorldObject";
import { BaseObjectType } from "../../../../shared";
import { type IVector3D } from "../../../../shared/common/utils/math/Vectors";
import type { Colshape as CcmpColshape, Player as CcmpPlayer } from "@classic-mp/types/server";
export interface ICCMPColshapeOptions {
    ccmpColshape: CcmpColshape;
    onDestroy: (colshape: CCMPColshape) => void;
}
export declare abstract class CCMPColshape extends CCMPWorldObject implements IColshape {
    private readonly _ccmpColshape;
    private readonly _onDestroy;
    get id(): number;
    get type(): BaseObjectType;
    get isExists(): boolean;
    get position(): IVector3D;
    get dimension(): number;
    get key(): string | undefined;
    get playersInside(): readonly CcmpPlayer[];
    getNetData(name: string): unknown;
    setNetData(name: string, value: unknown): void;
    protected constructor(options: ICCMPColshapeOptions);
    destroy(): void;
    setPosition(value: IVector3D): void;
    setDimension(value: number): void;
}
