import { BaseObjectType } from "../../../../shared/entities";
import { type IVector3D, Vector3D } from "../../../../shared/common/utils";
import { type Ped as CcmpPed } from "@classic-mp/types/client";
import { type IBaseObject } from "../../common/baseObject/IBaseObject";
import { type IPed } from "../../common/ped/IPed";
export declare class CCMPPed implements IPed {
    private readonly _ccmpPed;
    private readonly _onDestroy;
    private _destroyed;
    constructor(_ccmpPed: CcmpPed, _onDestroy?: (ped: CCMPPed) => 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 model(): number;
    get heading(): number;
    setHeading(heading: number): void;
    setModel(value: string): void;
    get rotation(): Vector3D;
    setRotation(value: IVector3D): void;
    get forwardVector(): Vector3D;
    freezePosition(freeze: boolean): void;
    setCollision(collision: boolean, keepPhysics: boolean): void;
    setInvincible(invincible: boolean): void;
    setVisible(visible: boolean): void;
    setAlpha(alpha: number): void;
    get alpha(): number;
    resetAlpha(): void;
    getOffsetFromInWorldCoords(offsetX: number, offsetY: number, offsetZ: number): IVector3D;
    getBoneIndexByName(boneName: string): number;
    getWorldPositionOfBone(boneIndex: number): IVector3D;
    getVariable(name: string): unknown | null;
    getSyncedMeta(key: string): unknown | undefined;
    hasSyncedMeta(key: string): boolean;
    getSyncedMetaKeys(): readonly string[];
    attachToEntity(target: IBaseObject, boneIndex: number, offset: IVector3D, rotation: IVector3D, p9: boolean, useSoftPinning: boolean, collision: boolean, isPed: boolean, vertexIndex: number, fixedRot: boolean): void;
    detach(useDetachVelocity: boolean, collision: boolean): void;
    getSpeed(): number;
    isPlayingAnim(dictionary: string, name: string, taskFlag: number): boolean;
    setDecoration(collection: string, overlay: string): void;
    removeDecoration(collection: string, overlay: string): void;
    clearDecorations(): void;
    setHeadBlendData(shapeFirstId: number, shapeSecondId: number, shapeThirdId: number, skinFirstId: number, skinSecondId: number, skinThirdId: number, shapeMix: number, skinMix: number, thirdMix: number, isParent: boolean): void;
    setFaceFeature(index: number, value: number): void;
    setHeadOverlay(overlayId: number, index: number, opacity: number): void;
    setHeadOverlayColor(overlayId: number, colorTypeId: number, firstColor: number, secondColor: number): void;
    setEyeColor(eyeColor: number): void;
    setHairColor(colorId: number, highlightColorId: number): void;
    setComponentVariation(componentId: number, drawableId: number, textureId: number, paletteId: number): void;
    setPropertyVariation(componentId: number, drawableId: number, textureId: number, attach: boolean): void;
    clearProp(componentId: number): void;
    getBoneCoords(boneId: number, offsetX: number, offsetY: number, offsetZ: number): IVector3D;
    clearTasks(): void;
    taskPlayAnim(dictionary: string, name: string, blendInSpeed: number, blendOutSpeed: number, duration: number, flag: number, playbackRate: number): void;
    taskGoToCoordAnyMeans(x: number, y: number, z: number, speed: number, walkingStyle?: number, drivingFlags?: number): void;
    stopAnim(dictionary: string, name: string, blendOutSpeed: number): void;
    setBlockingOfNonTemporaryEvents(blocking: boolean): void;
}
