import { BodyType, Element, WeaponType } from '../../types';
/**
 * Class of information about the character.
 */
export declare class CharacterInfo {
    /**
     * Character ID
     */
    readonly id: number;
    /**
     * Default costume ID
     */
    readonly defaultCostumeId: number;
    /**
     * Character name
     */
    readonly name: string;
    /**
     * Character max level
     */
    readonly maxLevel: number;
    /**
     * Skill depot ID
     */
    readonly depotId: number;
    /**
     * Element of the character
     */
    readonly element: Element | undefined;
    /**
     * Skill order
     */
    readonly skillOrder: number[];
    /**
     * Inherent skill order
     */
    readonly inherentSkillOrder: number[];
    /**
     * Constellation IDs
     */
    readonly constellationIds: number[];
    /**
     * Map of skill ID and proud ID
     * @key Skill ID
     * @value Proud ID
     */
    readonly proudMap: Map<number, number>;
    /**
     * Rarity
     * @warn aloy is treated as 0 because it is special
     */
    readonly rarity: number;
    /**
     * Weapon type
     */
    readonly weaponType: WeaponType;
    /**
     * Body type
     */
    readonly bodyType: BodyType;
    /**
     * Create a CharacterInfo
     * @param characterId Character ID
     * @param skillDepotId Skill depot ID
     */
    constructor(characterId: number, skillDepotId?: number);
    /**
     * Get all character IDs
     * @returns All character IDs
     */
    static get allCharacterIds(): number[];
    /**
     * Get character ID by name
     * @param name Character name
     * @returns Character ID
     */
    static getCharacterIdByName(name: string): number[];
    /**
     * Get traveler skill depot IDs
     * @param characterId Character ID
     * @returns skill depot IDs
     */
    static getTravelerSkillDepotIds(characterId: number): number[];
}
