import { CCMPEntity } from "../entity/CCMPEntity";
import { type ICustomization, type IPlayer } from "../../common/player/IPlayer";
import { type CCMPVehicle } from "../vehicle/CCMPVehicle";
import { BaseObjectType, type IServerToClientEvents } from "../../../../shared";
import { type IClientRPCList } from "../../../../shared/net/common/rpc/types";
import { type IVector3D, Vector3D } from "../../../../shared/common/utils/math/Vectors";
import type { Player as CcmpPlayer } from "@classic-mp/types/server";
export interface ICCMPPlayerOptions {
    ccmpPlayer: CcmpPlayer;
}
export declare class CCMPPlayer extends CCMPEntity implements IPlayer {
    private readonly _ccmpPlayer;
    get id(): number;
    get type(): BaseObjectType;
    get isExists(): boolean;
    get position(): IVector3D;
    get dimension(): number;
    get model(): number;
    get rotation(): IVector3D;
    get name(): string;
    get socialClub(): string;
    get heading(): number;
    get health(): number;
    get armour(): number;
    get isDead(): boolean;
    get ip(): string;
    get serial(): string;
    get vehicle(): CCMPVehicle | null;
    get seat(): number;
    get weapon(): number;
    get weaponAmmo(): number;
    protected get ccmpMeta(): CcmpPlayer;
    get eyeColor(): number;
    get streamedPlayers(): CCMPPlayer[];
    constructor(options: ICCMPPlayerOptions);
    destroy(): void;
    setPosition(value: IVector3D): void;
    setDimension(value: number): void;
    setModel(value: string): void;
    setRotation(value: IVector3D): void;
    emitEvent<K extends keyof IServerToClientEvents>(eventName: K, ...args: Parameters<IServerToClientEvents[K]>): void;
    emitRPC<K extends keyof IClientRPCList>(rpcName: K, ...args: Parameters<IClientRPCList[K]>): Promise<ReturnType<IClientRPCList[K]>>;
    spawn(_position: Vector3D): void;
    setName(name: string): void;
    setHeading(value: number): void;
    setHealth(value: number): void;
    setArmour(value: number): void;
    setWeaponAmmo(weapon: string, ammo: number): void;
    giveWeapon(weapon: string, ammo: number): void;
    removeWeapon(weapon: string): void;
    enableVoiceTo(_player: CCMPPlayer): void;
    disableVoiceTo(_player: CCMPPlayer): void;
    putIntoVehicle(vehicle: CCMPVehicle, seat?: number): void;
    ejectFromVehicle(): void;
    setCustomization(_data: ICustomization): void;
    setHeadOverlay(_overlayID: number, _index: number, _opacity: number, _firstColor: number, _secondColor: number): void;
    setEyeColor(_colorID: number): void;
    setProp(_propID: number, _drawableID: number, _textureID: number): void;
    setClothes(_componentID: number, _drawableID: number, _textureID: number, _paletteID: number): void;
    setHairColor(_colorID: number, _highlightColorID: number): void;
    kick(reason?: string): void;
    playAnimation(dictionary: string, name: string, speed: number, flag: number): void;
    stopAnimation(): void;
    removeFromVehicle(): void;
}
