import { Faction, Loadout } from '../constants/ps2.constants';
import { PS2Events } from '../../stream/types/ps2.events';
import { AttackerEvent } from './base/attacker.event';
import { PS2Event } from './base/ps2.event';
export declare enum Kill {
    Normal = 0,
    TeamKill = 1,
    Suicide = 2,
    RestrictedArea = 3
}
export declare class Death extends AttackerEvent<PS2Events.Death> {
    readonly emit = "death";
    readonly attacker_fire_mode_id: string;
    readonly character_loadout_id: string;
    readonly event_name: 'Death';
    readonly is_headshot: boolean;
    readonly is_critical: boolean;
    constructor(...params: ConstructorParameters<typeof PS2Event<PS2Events.Death>>);
    /**
     * Checks the cause of death(some real CSI sh*t going on here)
     *
     * @return {Kill}
     */
    get kill_type(): Kill;
    /**
     * Faction of victim
     *
     * @return {Faction}
     */
    get character_faction(): Faction;
    /**
     * Character was playing as
     *
     * @return {Loadout}
     */
    get character_loadout(): Loadout;
    toHash(): string;
}
