import { Artifact } from '../../models/Artifact';
import { CharacterConstellation } from '../../models/character/CharacterConstellation';
import { CharacterCostume } from '../../models/character/CharacterCostume';
import { CharacterSkill } from '../../models/character/CharacterSkill';
import { CharacterStatusManager } from '../../models/character/CharacterStatusManager';
import { SetBonus } from '../../models/SetBonus';
import { Weapon } from '../../models/weapon/Weapon';
import { BodyType, Element, WeaponType } from '../../types';
import { APIAvatarInfo } from '../../types/enkaNetwork';
/**
 * Class of the character obtained from EnkaNetwork
 */
export declare class CharacterDetail {
    /**
     * Character ID
     */
    readonly id: number;
    /**
     * Character default costume ID
     */
    readonly defaultCostumeId: number;
    /**
     * Character Depot ID
     */
    readonly depotId: number;
    /**
     * Character name
     */
    readonly name: string;
    /**
     * Character element
     */
    readonly element: Element | undefined;
    /**
     * Character rarity
     */
    readonly rarity: number;
    /**
     * Character body type
     */
    readonly bodyType: BodyType;
    /**
     * Character weapon type
     */
    readonly weaponType: WeaponType;
    /**
     * Character costume
     */
    readonly costume: CharacterCostume;
    /**
     * Character level
     */
    readonly level: number;
    /**
     * Character max level
     */
    readonly maxLevel: number;
    /**
     * Character level XP
     */
    readonly levelXp: number;
    /**
     * Character promote level (ascension)
     */
    readonly promoteLevel: number;
    /**
     * Character constellations
     * @warn This value is not affected by isShowCharacterPreviewConstellation
     * @see {@link PlayerDetail.isShowCharacterPreviewConstellation}
     */
    readonly constellations: CharacterConstellation[];
    /**
     * Character skills
     */
    readonly skills: CharacterSkill[];
    /**
     * Character combat status
     */
    readonly combatStatus: CharacterStatusManager;
    /**
     * Weapon equipped by Character
     */
    readonly weapon: Weapon;
    /**
     * Artifacts equipped by Character
     */
    readonly artifacts: Artifact[];
    /**
     * Character friendship level
     */
    readonly friendShipLevel: number;
    /**
     * Character set bonus
     */
    readonly setBonus: SetBonus;
    /**
     * Data from EnkaNetwork
     */
    readonly data: APIAvatarInfo;
    /**
     * Create a CharacterDetail
     * @param data Data from EnkaNetwork
     */
    constructor(data: APIAvatarInfo);
}
