import { StatProperty } from '../../models/StatProperty';
/**
 * Class of weapon ascension
 */
export declare class WeaponAscension {
    /**
     * Weapon ID
     */
    readonly id: number;
    /**
     * Weapon promote level
     */
    readonly promoteLevel: number;
    /**
     * Weapon ascension costItems
     */
    readonly costItems: {
        /**
         * Cost item ID(materialIDd)
         */
        id: number;
        /**
         * Cost item count
         */
        count: number;
    }[];
    /**
     * Weapon ascension costMora
     */
    readonly costMora: number;
    /**
     * Weapon ascension addProps
     */
    readonly addProps: StatProperty[];
    /**
     * Weapon ascension unlockMaxLevel
     */
    readonly unlockMaxLevel: number;
    /**
     * Create a weapon ascension
     * @param weaponId Weapon ID
     * @param promoteLevel Weapon promote level (0-6). Default: 0
     */
    constructor(weaponId: number, promoteLevel?: number);
    /**
     * Get max promote level by weapon ID
     * @param weaponId Weapon ID
     * @returns Max promote level
     */
    static getMaxPromoteLevelByWeaponId(weaponId: number): number;
}
