import STWHero from './STWHero';
import STWHeroLoadout from './STWHeroLoadout';
import STWItem from './STWItem';
import STWLocker from './STWLocker';
import STWResource from './STWResource';
import STWSchematic from './STWSchematic';
import STWStats from './STWStats';
import STWSurvivor from './STWSurvivor';
import STWTeamPerk from './STWTeamPerk';
import STWTrapSchematic from './STWTrapSchematic';
import STWWeaponSchematic from './STWWeaponSchematic';
import User from '../user/User';
import type Client from '../../Client';
import type { STWFORTStats, STWSurvivorSquads, UserData } from '../../../resources/structs';
import type { STWProfileData } from '../../../resources/httpResponses';
/**
 * Represents a Save The World profile
 */
declare class STWProfile extends User {
    /**
     * The profile ID
     */
    profileId: string;
    /**
     * The profile's creation date
     */
    createdAt: Date;
    /**
     * The profile's last updated date
     */
    updatedAt: Date;
    /**
     * The profile's revision
     */
    revision: number;
    /**
     * The profile's wipe number
     */
    wipeNumber: number;
    /**
     * The profile version
     */
    version: string;
    /**
     * The profile's command revision
     */
    commandRevision: number;
    /**
     * The profile's items
     */
    items: (STWItem | STWSurvivor | STWLocker | STWResource | STWHero | STWHeroLoadout | STWSchematic | STWTeamPerk)[];
    /**
     * The profile's stats
     */
    stats: STWStats;
    /**
     * @param client The main client
     * @param data The profile data
     * @param userData The user data
     */
    constructor(client: Client, data: STWProfileData, userData: UserData);
    /**
     * Returns the profile's survivors
     */
    get survivors(): STWSurvivor[];
    /**
     * The profile's survivor squads
     */
    get survivorSquads(): STWSurvivorSquads;
    /**
     * The profile's locker
     */
    get locker(): STWLocker;
    /**
     * The profile's resources
     */
    get resources(): STWResource[];
    /**
     * The profile's heroes
     */
    get heroes(): STWHero[];
    /**
     * The profile's hero loadouts
     */
    get heroLoadouts(): STWHeroLoadout[];
    /**
     * The profile's schematics
     */
    get schematics(): STWSchematic[];
    /**
     * The profile's weapon schematics
     */
    get weaponSchematics(): STWWeaponSchematic[];
    /**
     * The profile's trap schematics
     */
    get trapSchematics(): STWTrapSchematic[];
    /**
     * The profile's team perks
     */
    get teamPerks(): STWTeamPerk[];
    /**
     * The profile's power level
     */
    get powerLevel(): number;
    /**
     * The profile's ventures power level
     */
    get venturesPowerLevel(): number;
    /**
     * The profile's FORT stats
     */
    get FORTStats(): STWFORTStats;
    /**
     * The profile's survivor squads' FORT stats
     */
    get survivorFORTStats(): STWFORTStats;
    /**
     * The profile's research FORT stats
     */
    get researchFORTStats(): STWFORTStats;
    /**
     * The profile's ventures FORT stats
     */
    get venturesFORTStats(): STWFORTStats;
    /**
     * Whether the profile is a founder
     * (Whether it can receive vbucks rewards)
     */
    get isFounder(): boolean;
}
export default STWProfile;
