import { BaseObjectType, type IMarkerType } from "../../../../shared/entities";
import { type IRGBA, type IVector3D, Vector3D } from "../../../../shared/common/utils";
import { type Marker as CcmpMarker } from "@classic-mp/types/client";
import { type IMarker } from "../../common/marker/IMarker";
export declare class CCMPMarker implements IMarker {
    private readonly _ccmpMarker;
    private readonly _onDestroy;
    private _destroyed;
    constructor(_ccmpMarker: CcmpMarker, _onDestroy?: (marker: CCMPMarker) => void);
    get id(): number;
    get remoteId(): number | null;
    get type(): BaseObjectType;
    get isExists(): boolean;
    get handle(): number;
    destroy(): void;
    get position(): Vector3D;
    get dimension(): number;
    setPosition(_value: IVector3D): void;
    setDimension(_value: number): void;
    setCoords(_xPos: number, _yPos: number, _zPos: number, _xAxis: boolean, _yAxis: boolean, _zAxis: boolean, _clearArea: boolean): void;
    get markerType(): IMarkerType;
    get visible(): boolean;
    get rotation(): Vector3D;
    getVariable(name: string): unknown | null;
    getSyncedMeta(key: string): unknown | undefined;
    hasSyncedMeta(key: string): boolean;
    getSyncedMetaKeys(): readonly string[];
    setVisible(_value: boolean): void;
    setRotation(_value: IVector3D): void;
    get scale(): number;
    setScale(_value: number): void;
    get color(): IRGBA;
    setColor(_value: IRGBA): void;
}
