import { Address, TypeName, bindTypeArgs, System, il2js } from "@il2js/core";
import { FixedNumber } from "./FixedNumber";
export const GameAssemblyInfo = {
    assemblyName: "GameAssembly.dll",
    version: "237"
};
export namespace codegen.Client.App {
    export class SingleInstance<T = unknown> extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.App.SingleInstance";
        static get size() { return 0; }
        public static fieldNames: string[] = [];
        constructor(address: Address, _t0: T = typeof il2js.UnknownObject as any) { super(address); }
        public static staticMethods = {
            "<AppModel>get_Instance": () => new il2js.MethodInfo(56875040),
            "<AppViewModel>get_Instance": () => new il2js.MethodInfo(56875080),
            "<AppModel>IsInstantiated": () => new il2js.MethodInfo(56616696),
            "<AppViewModel>IsInstantiated": () => new il2js.MethodInfo(56616832),
            "<AppModel>.ctor": () => new il2js.MethodInfo(56814568),
            "<AppModel>Create": () => new il2js.MethodInfo(56814632),
            "<AppModel>Destroy": () => new il2js.MethodInfo(56814736),
            "<AppViewModel>.ctor": () => new il2js.MethodInfo(56814840),
            "<AppViewModel>Create": () => new il2js.MethodInfo(56814944),
            "<AppViewModel>Destroy": () => new il2js.MethodInfo(56815136),
            "<object>Create": () => new il2js.MethodInfo(56815208)
        };
    }
}
export namespace codegen.SharedModel.Meta {
    export class StaticData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.StaticData";
        static get size() { return 256 + 8; }
        public static address = 57100928;
        public static fieldNames: string[] = ["HeroData", "SkillData", "EffectData", "ArtifactData", "GameplayData", "StageData", "BlackMarketData", "FuseData", "ForgeData", "VillageData", "MagicShopData", "ShardData", "TrainingCampData", "QuestData", "ArenaData", "Arena3X3Data", "DailyRewardData", "InboxData", "AbTestData", "SessionChestData", "MasteryData", "LoyaltyProgramData", "AllianceData", "NotificationData", "DailyUpdateData", "ReferralProgramData", "AmazonIntegrationData", "BattlePassData", "CvcData", "AutoOpenGroupsData", "Revision"];
        public get HeroData(): codegen.SharedModel.Meta.Heroes.StaticHeroData {
            return this.readField(16, codegen.SharedModel.Meta.Heroes.StaticHeroData, 2);
        }
        public get SkillData(): codegen.SharedModel.Meta.Skills.StaticSkillData {
            return this.readField(24, codegen.SharedModel.Meta.Skills.StaticSkillData, 2);
        }
        public get EffectData(): codegen.SharedModel.Battle.Effects.StaticEffectData {
            return this.readField(32, codegen.SharedModel.Battle.Effects.StaticEffectData, 2);
        }
        public get ArtifactData(): codegen.SharedModel.Meta.Artifacts.StaticArtifactData {
            return this.readField(40, codegen.SharedModel.Meta.Artifacts.StaticArtifactData, 2);
        }
        public get GameplayData(): codegen.SharedModel.Meta.StaticGameplayData {
            return this.readField(48, codegen.SharedModel.Meta.StaticGameplayData, 2);
        }
        public get StageData(): codegen.SharedModel.Meta.Stages.StaticStageData {
            return this.readField(56, codegen.SharedModel.Meta.Stages.StaticStageData, 2);
        }
        public get BlackMarketData(): codegen.SharedModel.Meta.BlackMarket.StaticBlackMarketData {
            return this.readField(64, codegen.SharedModel.Meta.BlackMarket.StaticBlackMarketData, 2);
        }
        public get FuseData(): codegen.SharedModel.Meta.Fuse.Static.StaticFuseData {
            return this.readField(72, codegen.SharedModel.Meta.Fuse.Static.StaticFuseData, 2);
        }
        public get ForgeData(): codegen.SharedModel.Meta.Forge.Static.StaticForgeData {
            return this.readField(80, codegen.SharedModel.Meta.Forge.Static.StaticForgeData, 2);
        }
        public get VillageData(): codegen.SharedModel.Meta.Village.StaticVillageData {
            return this.readField(88, codegen.SharedModel.Meta.Village.StaticVillageData, 2);
        }
        public get MagicShopData(): codegen.SharedModel.Meta.MagicShop.StaticMagicShopData {
            return this.readField(96, codegen.SharedModel.Meta.MagicShop.StaticMagicShopData, 2);
        }
        public get ShardData(): codegen.SharedModel.Meta.Shards.StaticShardData {
            return this.readField(104, codegen.SharedModel.Meta.Shards.StaticShardData, 2);
        }
        public get TrainingCampData(): codegen.SharedModel.Meta.TrainingCamp.StaticTrainingCampData {
            return this.readField(112, codegen.SharedModel.Meta.TrainingCamp.StaticTrainingCampData, 2);
        }
        public get QuestData(): codegen.SharedModel.Meta.Quests.Data.StaticQuestData {
            return this.readField(120, codegen.SharedModel.Meta.Quests.Data.StaticQuestData, 2);
        }
        public get ArenaData(): codegen.SharedModel.Meta.Battle.Arena.StaticStandardArenaData {
            return this.readField(128, codegen.SharedModel.Meta.Battle.Arena.StaticStandardArenaData, 2);
        }
        public get Arena3X3Data(): codegen.SharedModel.Meta.Battle.Arena.Dtos.StaticArena3X3Data {
            return this.readField(136, codegen.SharedModel.Meta.Battle.Arena.Dtos.StaticArena3X3Data, 2);
        }
        public get DailyRewardData(): codegen.SharedModel.Meta.DailyRewards.Data.StaticDailyRewardData {
            return this.readField(144, codegen.SharedModel.Meta.DailyRewards.Data.StaticDailyRewardData, 2);
        }
        public get InboxData(): codegen.SharedModel.Meta.Inbox.StaticInboxData {
            return this.readField(152, codegen.SharedModel.Meta.Inbox.StaticInboxData, 2);
        }
        public get AbTestData(): codegen.SharedModel.Meta.AbTests.StaticAbTestData {
            return this.readField(160, codegen.SharedModel.Meta.AbTests.StaticAbTestData, 2);
        }
        public get SessionChestData(): codegen.SharedModel.Meta.SessionChests.StaticSessionChestData {
            return this.readField(168, codegen.SharedModel.Meta.SessionChests.StaticSessionChestData, 2);
        }
        public get MasteryData(): codegen.SharedModel.Meta.Masteries.StaticMasteryData {
            return this.readField(176, codegen.SharedModel.Meta.Masteries.StaticMasteryData, 2);
        }
        public get LoyaltyProgramData(): codegen.SharedModel.Meta.LoyaltyProgram.Data.StaticLoyaltyProgramData {
            return this.readField(184, codegen.SharedModel.Meta.LoyaltyProgram.Data.StaticLoyaltyProgramData, 2);
        }
        public get AllianceData(): codegen.SharedModel.Meta.Alliances.StaticAllianceData {
            return this.readField(192, codegen.SharedModel.Meta.Alliances.StaticAllianceData, 2);
        }
        public get NotificationData(): codegen.SharedModel.Meta.Notifications.StaticNotificationData {
            return this.readField(200, codegen.SharedModel.Meta.Notifications.StaticNotificationData, 2);
        }
        public get DailyUpdateData(): codegen.SharedModel.Meta.DailyUpdates.StaticDailyUpdateData {
            return this.readField(208, codegen.SharedModel.Meta.DailyUpdates.StaticDailyUpdateData, 2);
        }
        public get ReferralProgramData(): codegen.SharedModel.Meta.ReferralProgram.Data.StaticReferralProgramData {
            return this.readField(216, codegen.SharedModel.Meta.ReferralProgram.Data.StaticReferralProgramData, 2);
        }
        public get AmazonIntegrationData(): codegen.SharedModel.Meta.AmazonIntegration.StaticAmazonIntegrationData {
            return this.readField(224, codegen.SharedModel.Meta.AmazonIntegration.StaticAmazonIntegrationData, 2);
        }
        public get BattlePassData(): codegen.SharedModel.Meta.BattlePasses.StaticBattlePassData {
            return this.readField(232, codegen.SharedModel.Meta.BattlePasses.StaticBattlePassData, 2);
        }
        public get CvcData(): codegen.SharedModel.Meta.CvcTournament.StaticData.StaticCvcData {
            return this.readField(240, codegen.SharedModel.Meta.CvcTournament.StaticData.StaticCvcData, 2);
        }
        public get AutoOpenGroupsData(): codegen.SharedModel.Meta.AutoOpen.StaticAutoOpenGroupsData {
            return this.readField(248, codegen.SharedModel.Meta.AutoOpen.StaticAutoOpenGroupsData, 2);
        }
        public get Revision(): string {
            return this.readField(256, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta {
    export class ClientStaticData extends codegen.SharedModel.Meta.StaticData {
        public static [TypeName] = "codegen.SharedModel.Meta.ClientStaticData";
        static get size() { return 272 + 8; }
        public static address = 56493104;
        public static fieldNames: string[] = [...codegen.SharedModel.Meta.StaticData.fieldNames, "StaticDataLocalization", "ClientLocalization"];
        public get StaticDataLocalization(): System.Collections.Generic.Dictionary<string, string> {
            return this.readField(264, System.Collections.Generic.Dictionary, 2, System.String, System.String);
        }
        public get ClientLocalization(): System.Collections.Generic.Dictionary<string, string> {
            return this.readField(272, System.Collections.Generic.Dictionary, 2, System.String, System.String);
        }
        public static staticMethods = {
            ...codegen.SharedModel.Meta.StaticData.staticMethods
        };
    }
}
export namespace codegen.SharedModel.Meta.Heroes {
    export class StaticHeroData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Heroes.StaticHeroData";
        static get size() { return 176 + 8; }
        public static address = 57101040;
        public static fieldNames: string[] = ["HeroTypes", "HeroExperienceByKey", "SacrificeExperienceByKey", "RankHeroCountByGrade", "RankSilverByGrade", "LevelUpPriceByGrade", "FractionsByRace", "HeroIdsByRarities", "LevelUpMaterialsLimit", "MultipleHeroesSummonCount", "MaxInventorySlotsCount", "MaxStorageSlotsCount", "InventorySlotsPrices", "StorageSlotsPrices", "HeroesOnIntroFinish", "HeroRatingUpdateCooldownMinutes", "HeroPartsCountByHeroType", "HeroTypeById", "_raceByFraction", "_activeFractions", "UserAvailableBaseHeroIds", "Fractions", "Elements"];
        public get HeroTypes(): System.Collections.Generic.List<codegen.SharedModel.Meta.Heroes.HeroType> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Heroes.HeroType);
        }
        public get HeroExperienceByKey(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get SacrificeExperienceByKey(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get RankHeroCountByGrade(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get RankSilverByGrade(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get LevelUpPriceByGrade(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Account.Resources> {
            return this.readField(56, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Account.Resources);
        }
        public get FractionsByRace(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<number>> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, "int"));
        }
        public get HeroIdsByRarities(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<number>> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, "int"));
        }
        public get LevelUpMaterialsLimit(): number {
            return this.readTypePrimitive(80, "int", 1);
        }
        public get MultipleHeroesSummonCount(): number {
            return this.readTypePrimitive(84, "int", 1);
        }
        public get MaxInventorySlotsCount(): number {
            return this.readTypePrimitive(88, "int", 1);
        }
        public get MaxStorageSlotsCount(): number {
            return this.readTypePrimitive(92, "int", 1);
        }
        public get InventorySlotsPrices(): System.Collections.Generic.List<codegen.SharedModel.Meta.Heroes.InventorySlotsPrice> {
            return this.readField(96, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Heroes.InventorySlotsPrice);
        }
        public get StorageSlotsPrices(): System.Collections.Generic.List<codegen.SharedModel.Meta.Heroes.InventorySlotsPrice> {
            return this.readField(104, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Heroes.InventorySlotsPrice);
        }
        public get HeroesOnIntroFinish(): System.Internal.ManagedArray<number> {
            return this.readField(112, System.Internal.ManagedArray, 2, "int");
        }
        public get HeroRatingUpdateCooldownMinutes(): number {
            return this.readTypePrimitive(120, "double", 1);
        }
        public get HeroPartsCountByHeroType(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(128, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get HeroTypeById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Heroes.HeroType> {
            return this.readField(136, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Heroes.HeroType);
        }
        public get _raceByFraction(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(144, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get _activeFractions(): System.Collections.Generic.List<number> {
            return this.readField(152, System.Collections.Generic.List, 2, "int");
        }
        public get UserAvailableBaseHeroIds(): System.Collections.Generic.List<number> {
            return this.readField(160, System.Collections.Generic.List, 2, "int");
        }
        public get Fractions(): System.Collections.Generic.List<number> {
            return this.readField(168, System.Collections.Generic.List, 2, "int");
        }
        public get Elements(): System.Collections.Generic.List<number> {
            return this.readField(176, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {
            "<get_ActiveFractions>b__21_0": () => new il2js.MethodInfo(56891432)
        };
    }
}
export namespace codegen.SharedModel.Meta.Heroes {
    export class HeroType extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Heroes.HeroType";
        static get size() { return 160 + 8; }
        public static address = 57043848;
        public static fieldNames: string[] = ["Id", "Name", "AvatarName", "ModelName", "ShowcaseSceneName", "Element", "Role", "Fraction", "Rarity", "AwakenMaterials", "BaseStats", "SkillTypeIds", "LeaderSkill", "BossData", "SummonWeight", "IsLocationOnly", "Status", "Brain", "ArtifactSuggestions", "_maxAwakenedType", "_artSuggestionsByKindId"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Name(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(24, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get AvatarName(): string {
            return this.readField(32, System.String, 2);
        }
        public get ModelName(): string {
            return this.readField(40, System.String, 2);
        }
        public get ShowcaseSceneName(): string {
            return this.readField(48, System.String, 2);
        }
        public get Element(): number {
            return this.readTypePrimitive(56, "int", 1);
        }
        public get Role(): number {
            return this.readTypePrimitive(60, "int", 1);
        }
        public get Fraction(): number {
            return this.readTypePrimitive(64, "int", 1);
        }
        public get Rarity(): number {
            return this.readTypePrimitive(68, "int", 1);
        }
        public get AwakenMaterials(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(72, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get BaseStats(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(80, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get SkillTypeIds(): System.Collections.Generic.List<number> {
            return this.readField(88, System.Collections.Generic.List, 2, "int");
        }
        public get LeaderSkill(): codegen.SharedModel.Meta.Skills.LeaderSkill {
            return this.readField(96, codegen.SharedModel.Meta.Skills.LeaderSkill, 2);
        }
        public get BossData(): codegen.SharedModel.Meta.Heroes.BossData {
            return this.readField(104, codegen.SharedModel.Meta.Heroes.BossData, 2);
        }
        public get SummonWeight(): number {
            return this.readTypePrimitive(112, "double", 1);
        }
        public get IsLocationOnly(): boolean {
            return this.readTypePrimitive(120, "bool", 1);
        }
        public get Status(): number {
            return this.readTypePrimitive(124, "int", 1);
        }
        public get Brain(): number {
            return this.readTypePrimitive(128, "int", 1);
        }
        public get ArtifactSuggestions(): System.Collections.Generic.List<codegen.SharedModel.Meta.Artifacts.ArtifactSuggestion> {
            return this.readField(136, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Artifacts.ArtifactSuggestion);
        }
        public get _maxAwakenedType(): codegen.SharedModel.Meta.Heroes.HeroType {
            return this.readField(152, codegen.SharedModel.Meta.Heroes.HeroType, 2);
        }
        public get _artSuggestionsByKindId(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Meta.Artifacts.ArtifactSuggestion>> {
            return this.readField(160, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.Artifacts.ArtifactSuggestion));
        }
        public static staticMethods = {
            "Validate": () => new il2js.MethodInfo(56697864)
        };
    }
}
export namespace codegen.SharedModel.Common.Localization {
    export class SharedLTextKey extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Common.Localization.SharedLTextKey";
        static get size() { return 24 + 8; }
        public static address = 56996424;
        public static fieldNames: string[] = ["Key", "DefaultValue"];
        public get Key(): string {
            return this.readField(16, System.String, 2);
        }
        public get DefaultValue(): string {
            return this.readField(24, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Account {
    export class Resources extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Account.Resources";
        static get size() { return 16 + 8; }
        public static address = 56992672;
        public static fieldNames: string[] = ["RawValues"];
        public get RawValues(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public static get Zero(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(0, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public static get ResourceTypes(): System.Collections.Generic.IEnumerable<number> {
            return this.readField(8, System.Collections.Generic.IEnumerable, 2, "int");
        }
        public static staticMethods = {
            "FromEnergy": () => new il2js.MethodInfo(56550336),
            "FromGems": () => new il2js.MethodInfo(56550440),
            "FromSilver": () => new il2js.MethodInfo(56550512),
            "FromTokens": () => new il2js.MethodInfo(56550616),
            "<Contains>b__120_0": () => new il2js.MethodInfo(56879576),
            "AssertEquals": () => new il2js.MethodInfo(56693760)
        };
    }
}
export namespace codegen.System.Collections.Generic {
    export class Dictionary_Entry<TKey = unknown, TValue = unknown> extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Collections.Generic.Dictionary_Entry";
        static get size() { return 0 + il2js.NativeStruct.sizeof("int"); }
        public static fieldNames: string[] = ["hashCode", "next"];
        constructor(address: Address, _t0: TKey = typeof il2js.UnknownObject as any, _t1: TValue = typeof il2js.UnknownObject as any) { super(address); }
        public get hashCode(): number {
            return this.readTypePrimitive(0, "int", 1);
        }
        public get next(): number {
            return this.readTypePrimitive(0, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.System.Collections.Generic {
    export class Dictionary__2_KeyCollection<TKey = unknown, TValue = unknown> extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Collections.Generic.Dictionary__2_KeyCollection";
        static get size() { return 0 + 8; }
        public static fieldNames: string[] = ["dictionary"];
        constructor(address: Address, _t0: TKey = typeof il2js.UnknownObject as any, _t1: TValue = typeof il2js.UnknownObject as any) { super(address); }
        public get dictionary(): System.Collections.Generic.Dictionary {
            return this.readField(0, System.Collections.Generic.Dictionary, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.System.Collections.Generic {
    export class Dictionary__2_ValueCollection<TKey = unknown, TValue = unknown> extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Collections.Generic.Dictionary__2_ValueCollection";
        static get size() { return 0 + 8; }
        public static fieldNames: string[] = ["dictionary"];
        constructor(address: Address, _t0: TKey = typeof il2js.UnknownObject as any, _t1: TValue = typeof il2js.UnknownObject as any) { super(address); }
        public get dictionary(): System.Collections.Generic.Dictionary {
            return this.readField(0, System.Collections.Generic.Dictionary, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Heroes {
    export class BattleStats extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Heroes.BattleStats";
        static get size() { return 80 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56929704;
        public static fieldNames: string[] = ["Health", "Attack", "Defence", "Speed", "Resistance", "Accuracy", "CriticalChance", "CriticalDamage", "CriticalHeal"];
        public get Health(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public get Attack(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public get Defence(): number {
            return this.readField(32, FixedNumber, 1);
        }
        public get Speed(): number {
            return this.readField(40, FixedNumber, 1);
        }
        public get Resistance(): number {
            return this.readField(48, FixedNumber, 1);
        }
        public get Accuracy(): number {
            return this.readField(56, FixedNumber, 1);
        }
        public get CriticalChance(): number {
            return this.readField(64, FixedNumber, 1);
        }
        public get CriticalDamage(): number {
            return this.readField(72, FixedNumber, 1);
        }
        public get CriticalHeal(): number {
            return this.readField(80, FixedNumber, 1);
        }
        public static get Empty(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(0, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public static get ToPercent(): number {
            return this.readField(8, FixedNumber, 1);
        }
        public static get Multipliers(): System.Internal.ManagedArray<number> {
            return this.readField(16, System.Internal.ManagedArray, 2, "double");
        }
        public static staticMethods = {
            "Operation": () => new il2js.MethodInfo(56480232),
            "Operation_1": () => new il2js.MethodInfo(56480360),
            "get_Item": () => new il2js.MethodInfo(56480472),
            "Change": () => new il2js.MethodInfo(56697464),
            "Validate": () => new il2js.MethodInfo(56697568)
        };
    }
}
export namespace codegen.SharedModel.Meta.Skills {
    export class LeaderSkill extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Skills.LeaderSkill";
        static get size() { return 24 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 57081480;
        public static fieldNames: string[] = ["StatKindId", "IsAbsolute", "Amount"];
        public get StatKindId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get IsAbsolute(): boolean {
            return this.readTypePrimitive(20, "bool", 1);
        }
        public get Amount(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Heroes {
    export class BossData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Heroes.BossData";
        static get size() { return 16 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57038616;
        public static fieldNames: string[] = ["IsUnkillable"];
        public get IsUnkillable(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Artifacts {
    export class ArtifactSuggestion extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.ArtifactSuggestion";
        static get size() { return 24 + 8; }
        public static address = 57010040;
        public static fieldNames: string[] = ["KindId", "SetKindId", "PrimaryBonuses"];
        public get KindId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get SetKindId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get PrimaryBonuses(): System.Collections.Generic.List<codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactStatKey> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactStatKey);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Artifacts.Bonuses {
    export class ArtifactStatKey extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactStatKey";
        static get size() { return 20 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57007608;
        public static fieldNames: string[] = ["KindId", "IsAbsolute"];
        public get KindId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get IsAbsolute(): boolean {
            return this.readTypePrimitive(20, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Heroes {
    export class InventorySlotsPrice extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Heroes.InventorySlotsPrice";
        static get size() { return 32 + 8; }
        public static address = 56510736;
        public static fieldNames: string[] = ["UserSlotsCount", "SilverPrice", "GemsPrice"];
        public get UserSlotsCount(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get SilverPrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(24, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get GemsPrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(32, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Skills {
    export class StaticSkillData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Skills.StaticSkillData";
        static get size() { return 56 + 8; }
        public static address = 57101200;
        public static fieldNames: string[] = ["SkillTypes", "LevelUpPriceByRarity", "LevelUpMaterialsLimit", "CheatSkillIds", "_skillTypeById", "_effectKindByEffectId"];
        public get SkillTypes(): System.Collections.Generic.List<codegen.SharedModel.Meta.Skills.SkillType> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Skills.SkillType);
        }
        public get LevelUpPriceByRarity(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Account.Resources> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Account.Resources);
        }
        public get LevelUpMaterialsLimit(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get CheatSkillIds(): System.Collections.Generic.List<number> {
            return this.readField(40, System.Collections.Generic.List, 2, "int");
        }
        public get _skillTypeById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Skills.SkillType> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Skills.SkillType);
        }
        public get _effectKindByEffectId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(56, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public static staticMethods = {
            "Cache": () => new il2js.MethodInfo(56701960)
        };
    }
}
export namespace codegen.SharedModel.Meta.Skills {
    export class SkillType extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Skills.SkillType";
        static get size() { return 96 + 8; }
        public static address = 57081896;
        public static fieldNames: string[] = ["Id", "Revision", "Name", "Description", "Group", "Cooldown", "ReduceCooldownProhibited", "IsHidden", "ShowDamageScale", "Visibility", "HeroesSetInfo", "SkillLevelBonuses", "_levelBonusesCache", "Effects"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Revision(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Name(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(24, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get Description(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(32, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get Group(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get Cooldown(): number {
            return this.readTypePrimitive(52, "int", 1);
        }
        public get ReduceCooldownProhibited(): boolean {
            return this.readTypePrimitive(56, "bool", 1);
        }
        public get IsHidden(): boolean {
            return this.readTypePrimitive(57, "bool", 1);
        }
        public get ShowDamageScale(): boolean {
            return this.readTypePrimitive(58, "bool", 1);
        }
        public get Visibility(): number {
            return this.readTypePrimitive(64, "int", 1);
        }
        public get HeroesSetInfo(): codegen.SharedModel.Meta.Skills.HeroesSetInfo {
            return this.readField(72, codegen.SharedModel.Meta.Skills.HeroesSetInfo, 2);
        }
        public get SkillLevelBonuses(): System.Collections.Generic.List<codegen.SharedModel.Meta.Skills.SkillBonus> {
            return this.readField(80, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Skills.SkillBonus);
        }
        public get _levelBonusesCache(): System.Collections.Generic.List<codegen.SharedModel.Meta.Skills.SkillBonus> {
            return this.readField(88, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Skills.SkillBonus);
        }
        public get Effects(): System.Collections.Generic.List<codegen.SharedModel.Battle.Effects.EffectType> {
            return this.readField(96, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Effects.EffectType);
        }
        public static staticMethods = {
            "Validate": () => new il2js.MethodInfo(56701720)
        };
    }
}
export namespace codegen.SharedModel.Meta.Skills {
    export class HeroesSetInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Skills.HeroesSetInfo";
        static get size() { return 24 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57081272;
        public static fieldNames: string[] = ["TypeIds", "IgnoreDeath"];
        public get TypeIds(): System.Internal.ManagedArray<number> {
            return this.readField(16, System.Internal.ManagedArray, 2, "int");
        }
        public get IgnoreDeath(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Skills {
    export class SkillBonus extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Skills.SkillBonus";
        static get size() { return 24 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 57081800;
        public static fieldNames: string[] = ["SkillBonusType", "Value"];
        public get SkillBonusType(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Value(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public static staticMethods = {
            "Validate": () => new il2js.MethodInfo(56701608)
        };
    }
}
export namespace codegen.SharedModel.Battle.Effects {
    export class EffectType extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectType";
        static get size() { return 392 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56966872;
        public static fieldNames: string[] = ["Id", "KindId", "Group", "TargetParams", "IsEffectDescription", "ConsidersDead", "LeaveThroughDeath", "DoesntSetSkillOnCooldown", "IgnoresCooldown", "IsUnique", "IterationChanceRolling", "Relation", "Condition", "Count", "StackCount", "StatusParams", "MultiplierFormula", "ValueCap", "PersistsThroughRounds", "SnapshotRequired", "IgnoredEffects", "ApplyStatusEffectParams", "UnapplyStatusEffectParams", "DamageParams", "HealParams", "EvenParams", "ChangeStatParams", "ActivateSkillParams", "ShowHiddenSkillParams", "ChangeSkillCooldownParams", "ChangeEffectLifetimeParams", "ShareDamageParams", "BlockEffectParams", "SummonParams", "TeamAttackParams", "DestroyHpParams", "ReviveParams", "CounterattackParams", "ForceTickParams", "CrabShellParams", "ReturnDebuffsParams", "HitTypeParams", "PassiveBonusParams", "MultiplyStatusEffectParams", "IgnoreProtectionEffectsParams", "ChangeEffectTargetParams", "ChangeImmunityParams", "EffectContainerParams", "MultiplierDependsOnRelation"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get KindId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Group(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get TargetParams(): codegen.SharedModel.Battle.Effects.EffectTargetParams.TargetParams {
            return this.readField(32, codegen.SharedModel.Battle.Effects.EffectTargetParams.TargetParams, 2);
        }
        public get IsEffectDescription(): boolean {
            return this.readTypePrimitive(40, "bool", 1);
        }
        public get ConsidersDead(): boolean {
            return this.readTypePrimitive(41, "bool", 1);
        }
        public get LeaveThroughDeath(): boolean {
            return this.readTypePrimitive(42, "bool", 1);
        }
        public get DoesntSetSkillOnCooldown(): boolean {
            return this.readTypePrimitive(43, "bool", 1);
        }
        public get IgnoresCooldown(): boolean {
            return this.readTypePrimitive(44, "bool", 1);
        }
        public get IsUnique(): boolean {
            return this.readTypePrimitive(45, "bool", 1);
        }
        public get IterationChanceRolling(): boolean {
            return this.readTypePrimitive(46, "bool", 1);
        }
        public get Relation(): codegen.SharedModel.Battle.Effects.EffectRelation {
            return this.readField(48, codegen.SharedModel.Battle.Effects.EffectRelation, 2);
        }
        public get Condition(): string {
            return this.readField(56, System.String, 2);
        }
        public get Count(): number {
            return this.readTypePrimitive(104, "int", 1);
        }
        public get StackCount(): number {
            return this.readTypePrimitive(108, "int", 1);
        }
        public get StatusParams(): codegen.SharedModel.Battle.Effects.EffectParams.StatusEffectParams.StatusEffectParams {
            return this.readField(112, codegen.SharedModel.Battle.Effects.EffectParams.StatusEffectParams.StatusEffectParams, 2);
        }
        public get MultiplierFormula(): string {
            return this.readField(120, System.String, 2);
        }
        public get ValueCap(): string {
            return this.readField(128, System.String, 2);
        }
        public get PersistsThroughRounds(): boolean {
            return this.readTypePrimitive(160, "bool", 1);
        }
        public get SnapshotRequired(): boolean {
            return this.readTypePrimitive(161, "bool", 1);
        }
        public get IgnoredEffects(): System.Collections.Generic.List<number> {
            return this.readField(168, System.Collections.Generic.List, 2, "int");
        }
        public get ApplyStatusEffectParams(): codegen.SharedModel.Battle.Effects.EffectParams.ApplyStatusEffectParams {
            return this.readField(176, codegen.SharedModel.Battle.Effects.EffectParams.ApplyStatusEffectParams, 2);
        }
        public get UnapplyStatusEffectParams(): codegen.SharedModel.Battle.Effects.EffectParams.UnapplyStatusEffectParams {
            return this.readField(184, codegen.SharedModel.Battle.Effects.EffectParams.UnapplyStatusEffectParams, 2);
        }
        public get DamageParams(): codegen.SharedModel.Battle.Effects.EffectParams.DamageParams {
            return this.readField(192, codegen.SharedModel.Battle.Effects.EffectParams.DamageParams, 2);
        }
        public get HealParams(): codegen.SharedModel.Battle.Effects.EffectParams.HealParams {
            return this.readField(200, codegen.SharedModel.Battle.Effects.EffectParams.HealParams, 2);
        }
        public get EvenParams(): codegen.SharedModel.Battle.Effects.EffectParams.EvenParams {
            return this.readField(208, codegen.SharedModel.Battle.Effects.EffectParams.EvenParams, 2);
        }
        public get ChangeStatParams(): codegen.SharedModel.Battle.Effects.EffectParams.ChangeStatParams {
            return this.readField(216, codegen.SharedModel.Battle.Effects.EffectParams.ChangeStatParams, 2);
        }
        public get ActivateSkillParams(): codegen.SharedModel.Battle.Effects.EffectParams.ActivateSkillParams.ActivateSkillParams {
            return this.readField(224, codegen.SharedModel.Battle.Effects.EffectParams.ActivateSkillParams.ActivateSkillParams, 2);
        }
        public get ShowHiddenSkillParams(): codegen.SharedModel.Battle.Effects.EffectParams.ShowHiddenSkillParams {
            return this.readField(232, codegen.SharedModel.Battle.Effects.EffectParams.ShowHiddenSkillParams, 2);
        }
        public get ChangeSkillCooldownParams(): codegen.SharedModel.Battle.Effects.EffectParams.ChangeSkillCooldownParams {
            return this.readField(240, codegen.SharedModel.Battle.Effects.EffectParams.ChangeSkillCooldownParams, 2);
        }
        public get ChangeEffectLifetimeParams(): codegen.SharedModel.Battle.Effects.EffectParams.ChangeEffectLifetimeParams {
            return this.readField(248, codegen.SharedModel.Battle.Effects.EffectParams.ChangeEffectLifetimeParams, 2);
        }
        public get ShareDamageParams(): codegen.SharedModel.Battle.Effects.EffectParams.ShareDamageParams {
            return this.readField(256, codegen.SharedModel.Battle.Effects.EffectParams.ShareDamageParams, 2);
        }
        public get BlockEffectParams(): codegen.SharedModel.Battle.Effects.EffectParams.BlockEffectParams {
            return this.readField(264, codegen.SharedModel.Battle.Effects.EffectParams.BlockEffectParams, 2);
        }
        public get SummonParams(): codegen.SharedModel.Battle.Effects.EffectParams.SummonParams {
            return this.readField(272, codegen.SharedModel.Battle.Effects.EffectParams.SummonParams, 2);
        }
        public get TeamAttackParams(): codegen.SharedModel.Battle.Effects.EffectParams.TeamAttackParams {
            return this.readField(280, codegen.SharedModel.Battle.Effects.EffectParams.TeamAttackParams, 2);
        }
        public get DestroyHpParams(): codegen.SharedModel.Battle.Effects.EffectParams.DestroyHpParams {
            return this.readField(288, codegen.SharedModel.Battle.Effects.EffectParams.DestroyHpParams, 2);
        }
        public get ReviveParams(): codegen.SharedModel.Battle.Effects.EffectParams.ReviveParams {
            return this.readField(296, codegen.SharedModel.Battle.Effects.EffectParams.ReviveParams, 2);
        }
        public get CounterattackParams(): codegen.SharedModel.Battle.Effects.EffectParams.CounterattackParams {
            return this.readField(304, codegen.SharedModel.Battle.Effects.EffectParams.CounterattackParams, 2);
        }
        public get ForceTickParams(): codegen.SharedModel.Battle.Effects.EffectParams.ForceStatusEffectTickParams {
            return this.readField(312, codegen.SharedModel.Battle.Effects.EffectParams.ForceStatusEffectTickParams, 2);
        }
        public get CrabShellParams(): codegen.SharedModel.Battle.Effects.EffectParams.CrabShellParams.CrabShellParams {
            return this.readField(320, codegen.SharedModel.Battle.Effects.EffectParams.CrabShellParams.CrabShellParams, 2);
        }
        public get ReturnDebuffsParams(): codegen.SharedModel.Battle.Effects.EffectParams.ReturnDebuffsParams {
            return this.readField(328, codegen.SharedModel.Battle.Effects.EffectParams.ReturnDebuffsParams, 2);
        }
        public get HitTypeParams(): codegen.SharedModel.Battle.Effects.EffectParams.HitTypeParams {
            return this.readField(336, codegen.SharedModel.Battle.Effects.EffectParams.HitTypeParams, 2);
        }
        public get PassiveBonusParams(): codegen.SharedModel.Battle.Effects.EffectParams.PassiveBonusParams {
            return this.readField(344, codegen.SharedModel.Battle.Effects.EffectParams.PassiveBonusParams, 2);
        }
        public get MultiplyStatusEffectParams(): codegen.SharedModel.Battle.Effects.EffectParams.MultiplyStatusEffectParams {
            return this.readField(352, codegen.SharedModel.Battle.Effects.EffectParams.MultiplyStatusEffectParams, 2);
        }
        public get IgnoreProtectionEffectsParams(): codegen.SharedModel.Battle.Effects.EffectParams.IgnoreProtectionEffectsParams {
            return this.readField(360, codegen.SharedModel.Battle.Effects.EffectParams.IgnoreProtectionEffectsParams, 2);
        }
        public get ChangeEffectTargetParams(): codegen.SharedModel.Battle.Effects.EffectParams.ChangeEffectTargetParams {
            return this.readField(368, codegen.SharedModel.Battle.Effects.EffectParams.ChangeEffectTargetParams, 2);
        }
        public get ChangeImmunityParams(): codegen.SharedModel.Battle.Effects.EffectParams.ChangeImmunityParams {
            return this.readField(376, codegen.SharedModel.Battle.Effects.EffectParams.ChangeImmunityParams, 2);
        }
        public get EffectContainerParams(): codegen.SharedModel.Battle.Effects.EffectParams.EffectContainerParams {
            return this.readField(384, codegen.SharedModel.Battle.Effects.EffectParams.EffectContainerParams, 2);
        }
        public get MultiplierDependsOnRelation(): boolean {
            return this.readTypePrimitive(392, "bool", 1);
        }
        public static staticMethods = {
            "Validate": () => new il2js.MethodInfo(56685008)
        };
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectTargetParams {
    export class TargetParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectTargetParams.TargetParams";
        static get size() { return 32 + 8; }
        public static address = 56968472;
        public static fieldNames: string[] = ["TargetType", "Exclusive", "FirstHitInSelected", "Condition"];
        public get TargetType(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Exclusive(): boolean {
            return this.readTypePrimitive(28, "bool", 1);
        }
        public get FirstHitInSelected(): boolean {
            return this.readTypePrimitive(29, "bool", 1);
        }
        public get Condition(): string {
            return this.readField(32, System.String, 2);
        }
        public static staticMethods = {
            "Validate": () => new il2js.MethodInfo(56684928)
        };
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill {
    export class EffectDescription extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.EffectDescription";
        static get size() { return 108 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56935896;
        public static fieldNames: string[] = ["ForceTicked", "Guid", "SkillDescription", "Effect", "AppliedEffect", "Producer", "Target", "Owner", "RelatedContext", "CurrentIteration", "RepeatCount", "FullRepeatingCount"];
        public get ForceTicked(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get Guid(): System.Guid {
            return this.readField(20, System.Guid, 2);
        }
        public get SkillDescription(): codegen.SharedModel.Battle.Core.Skill.SkillDescription {
            return this.readField(40, codegen.SharedModel.Battle.Core.Skill.SkillDescription, 2);
        }
        public get Effect(): codegen.SharedModel.Battle.Effects.EffectType {
            return this.readField(48, codegen.SharedModel.Battle.Effects.EffectType, 2);
        }
        public get AppliedEffect(): codegen.SharedModel.Battle.Core.Skill.AppliedEffect {
            return this.readField(56, codegen.SharedModel.Battle.Core.Skill.AppliedEffect, 2);
        }
        public get Producer(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(64, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public get Target(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(72, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public get Owner(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(80, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public get RelatedContext(): codegen.SharedModel.Battle.Core.Skill.EffectContexts.EffectContext {
            return this.readField(88, codegen.SharedModel.Battle.Core.Skill.EffectContexts.EffectContext, 2);
        }
        public get CurrentIteration(): codegen.SharedModel.Battle.Core.Skill.EffectContexts.EffectIteration {
            return this.readField(96, codegen.SharedModel.Battle.Core.Skill.EffectContexts.EffectIteration, 2);
        }
        public get RepeatCount(): number {
            return this.readTypePrimitive(104, "int", 1);
        }
        public get FullRepeatingCount(): number {
            return this.readTypePrimitive(108, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill.EffectContexts {
    export class EffectContext extends codegen.SharedModel.Battle.Core.Skill.EffectDescription {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.EffectContexts.EffectContext";
        static get size() { return 232 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56922088;
        public static fieldNames: string[] = [...codegen.SharedModel.Battle.Core.Skill.EffectDescription.fieldNames, "Snapshot", "BattleContext", "SkillContext", "EffectResults", "ProcessContext", "ApplyContext", "DamageContext", "HealContext", "EvenHealthContext", "CancelEffectContext", "UnapplyEffectContext", "DestroyHpContext", "IgnoredEffectsContext", "ChangeStaminaContext", "ProcessedTargets", "WasRedirected"];
        public get Snapshot(): codegen.SharedModel.Battle.Core.State.BattleStateSnapshot {
            return this.readField(112, codegen.SharedModel.Battle.Core.State.BattleStateSnapshot, 2);
        }
        public get BattleContext(): codegen.SharedModel.Battle.Core.BattleContext {
            return this.readField(120, codegen.SharedModel.Battle.Core.BattleContext, 2);
        }
        public get SkillContext(): codegen.SharedModel.Battle.Core.Skill.SkillContext {
            return this.readField(128, codegen.SharedModel.Battle.Core.Skill.SkillContext, 2);
        }
        public get EffectResults(): System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Result.ActionResult> {
            return this.readField(136, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Core.Result.ActionResult);
        }
        public get ProcessContext(): codegen.SharedModel.Battle.Core.Skill.EffectContexts.ProcessContext {
            return this.readField(144, codegen.SharedModel.Battle.Core.Skill.EffectContexts.ProcessContext, 2);
        }
        public get ApplyContext(): codegen.SharedModel.Battle.Core.Skill.EffectContexts.ApplyContext {
            return this.readField(152, codegen.SharedModel.Battle.Core.Skill.EffectContexts.ApplyContext, 2);
        }
        public get DamageContext(): codegen.SharedModel.Battle.Core.Skill.EffectContexts.DamageContext {
            return this.readField(160, codegen.SharedModel.Battle.Core.Skill.EffectContexts.DamageContext, 2);
        }
        public get HealContext(): codegen.SharedModel.Battle.Core.Skill.EffectContexts.HealContext {
            return this.readField(168, codegen.SharedModel.Battle.Core.Skill.EffectContexts.HealContext, 2);
        }
        public get EvenHealthContext(): codegen.SharedModel.Battle.Core.Skill.EffectContexts.EvenHealthContext {
            return this.readField(176, codegen.SharedModel.Battle.Core.Skill.EffectContexts.EvenHealthContext, 2);
        }
        public get CancelEffectContext(): codegen.SharedModel.Battle.Core.Skill.EffectContexts.EffectContext {
            return this.readField(184, codegen.SharedModel.Battle.Core.Skill.EffectContexts.EffectContext, 2);
        }
        public get UnapplyEffectContext(): codegen.SharedModel.Battle.Core.Skill.EffectContexts.UnapplyEffectContext {
            return this.readField(192, codegen.SharedModel.Battle.Core.Skill.EffectContexts.UnapplyEffectContext, 2);
        }
        public get DestroyHpContext(): codegen.SharedModel.Battle.Core.Skill.EffectContexts.DestroyHpContext {
            return this.readField(200, codegen.SharedModel.Battle.Core.Skill.EffectContexts.DestroyHpContext, 2);
        }
        public get IgnoredEffectsContext(): codegen.SharedModel.Battle.Core.Skill.EffectContexts.IgnoredEffectsContext {
            return this.readField(208, codegen.SharedModel.Battle.Core.Skill.EffectContexts.IgnoredEffectsContext, 2);
        }
        public get ChangeStaminaContext(): codegen.SharedModel.Battle.Core.Skill.EffectContexts.ChangeStaminaContext {
            return this.readField(216, codegen.SharedModel.Battle.Core.Skill.EffectContexts.ChangeStaminaContext, 2);
        }
        public get ProcessedTargets(): System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Hero.BattleHero> {
            return this.readField(224, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Core.Hero.BattleHero);
        }
        public get WasRedirected(): boolean {
            return this.readTypePrimitive(232, "bool", 1);
        }
        public static staticMethods = {
            ...codegen.SharedModel.Battle.Core.Skill.EffectDescription.staticMethods,
            "CreateTargetContext": () => new il2js.MethodInfo(56494784)
        };
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill {
    export class SkillDescription extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.SkillDescription";
        static get size() { return 24 + 8; }
        public static address = 56923728;
        public static fieldNames: string[] = ["Skill", "Modifiers"];
        public get Skill(): codegen.SharedModel.Battle.Core.Skill.BattleSkill {
            return this.readField(16, codegen.SharedModel.Battle.Core.Skill.BattleSkill, 2);
        }
        public get Modifiers(): codegen.SharedModel.Battle.Core.Skill.SkillModifiers {
            return this.readField(24, codegen.SharedModel.Battle.Core.Skill.SkillModifiers, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill {
    export class BattleSkill extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.BattleSkill";
        static get size() { return 92 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56921856;
        public static fieldNames: string[] = ["_type", "TypeId", "Cooldown", "MaxCooldown", "EffectRateModifier", "DamageModifier", "HealModifier", "ShieldModifier", "IsHidden", "Disabled", "IsHeroSkill", "Level", "Producer", "SameSkillCount", "Source"];
        public get _type(): codegen.SharedModel.Meta.Skills.SkillType {
            return this.readField(16, codegen.SharedModel.Meta.Skills.SkillType, 2);
        }
        public get TypeId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Cooldown(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get MaxCooldown(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get EffectRateModifier(): number {
            return this.readField(40, FixedNumber, 1);
        }
        public get DamageModifier(): number {
            return this.readField(48, FixedNumber, 1);
        }
        public get HealModifier(): number {
            return this.readField(56, FixedNumber, 1);
        }
        public get ShieldModifier(): number {
            return this.readField(64, FixedNumber, 1);
        }
        public get IsHidden(): boolean {
            return this.readTypePrimitive(72, "bool", 1);
        }
        public get Disabled(): boolean {
            return this.readTypePrimitive(73, "bool", 1);
        }
        public get IsHeroSkill(): boolean {
            return this.readTypePrimitive(74, "bool", 1);
        }
        public get Level(): number {
            return this.readTypePrimitive(76, "int", 1);
        }
        public get Producer(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(80, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public get SameSkillCount(): number {
            return this.readTypePrimitive(88, "int", 1);
        }
        public get Source(): number {
            return this.readTypePrimitive(92, "int", 1);
        }
        public static staticMethods = {
            "CreateCheatSkill": () => new il2js.MethodInfo(56494480),
            "<Resolve>b__53_0": () => new il2js.MethodInfo(56819136),
            "ApplyLevelInfo": () => new il2js.MethodInfo(56682664)
        };
    }
}
export namespace codegen.SharedModel.Battle.Core.Hero {
    export class BattleHero extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Hero.BattleHero";
        static get size() { return 192 + 8; }
        public static address = 56921976;
        public static fieldNames: string[] = ["_type", "TypeId", "Id", "OwnerUserId", "InventoryHeroId", "Grade", "Level", "Experience", "SlotId", "Health", "DamageTaken", "DestroyedHealth", "Stamina", "PureBaseStats", "BaseStats", "Stats", "StatImpactByEffects", "Skills", "_heroState", "Bonuses", "PhaseEffects", "SummonInfo", "AppliedEffectsByHeroes", "PassiveBonuses", "_heroSkills"];
        public get _type(): codegen.SharedModel.Meta.Heroes.HeroType {
            return this.readField(16, codegen.SharedModel.Meta.Heroes.HeroType, 2);
        }
        public get TypeId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Id(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get OwnerUserId(): number {
            return this.readTypePrimitive(32, "long", 1);
        }
        public get InventoryHeroId(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get Grade(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public get Level(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get Experience(): number {
            return this.readTypePrimitive(56, "long", 1);
        }
        public get SlotId(): number {
            return this.readTypePrimitive(64, "int", 1);
        }
        public get Health(): number {
            return this.readField(72, FixedNumber, 1);
        }
        public get DamageTaken(): number {
            return this.readField(80, FixedNumber, 1);
        }
        public get DestroyedHealth(): number {
            return this.readField(88, FixedNumber, 1);
        }
        public get Stamina(): number {
            return this.readField(96, FixedNumber, 1);
        }
        public get PureBaseStats(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(104, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get BaseStats(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(112, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get Stats(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(120, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get StatImpactByEffects(): codegen.SharedModel.Battle.Core.Hero.StatImpactByEffects {
            return this.readField(128, codegen.SharedModel.Battle.Core.Hero.StatImpactByEffects, 2);
        }
        public get Skills(): System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Skill.BattleSkill> {
            return this.readField(136, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Core.Skill.BattleSkill);
        }
        public get _heroState(): codegen.SharedModel.Battle.Core.Hero.HeroState {
            return this.readField(144, codegen.SharedModel.Battle.Core.Hero.HeroState, 2);
        }
        public get Bonuses(): codegen.SharedModel.Battle.Core.Hero.BattleBonuses {
            return this.readField(152, codegen.SharedModel.Battle.Core.Hero.BattleBonuses, 2);
        }
        public get PhaseEffects(): codegen.SharedModel.Battle.Core.Hero.PhaseEffects {
            return this.readField(160, codegen.SharedModel.Battle.Core.Hero.PhaseEffects, 2);
        }
        public get SummonInfo(): codegen.SharedModel.Battle.Core.Hero.SummonInfo {
            return this.readField(168, codegen.SharedModel.Battle.Core.Hero.SummonInfo, 2);
        }
        public get AppliedEffectsByHeroes(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Skill.AppliedEffect>> {
            return this.readField(176, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Battle.Core.Skill.AppliedEffect));
        }
        public get PassiveBonuses(): System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Hero.PassiveBonusDescriptor> {
            return this.readField(184, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Core.Hero.PassiveBonusDescriptor);
        }
        public get _heroSkills(): System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Skill.BattleSkill> {
            return this.readField(192, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Core.Skill.BattleSkill);
        }
        public static staticMethods = {
            "ChangeHealth": () => new il2js.MethodInfo(56452128),
            "ChangeHealthRate": () => new il2js.MethodInfo(56452208),
            "<ResolveSkills>b__143_2": () => new il2js.MethodInfo(56494384),
            "get_HeroSkills": () => new il2js.MethodInfo(56872512),
            "AddSetSkills": () => new il2js.MethodInfo(56681968),
            "ResolveSkills": () => new il2js.MethodInfo(56682072),
            "Do<BattleStats>": () => new il2js.MethodInfo(56662080)
        };
    }
}
export namespace codegen.SharedModel.Battle.Core.Hero {
    export class StatImpactByEffects extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Hero.StatImpactByEffects";
        static get size() { return 16 + 8; }
        public static address = 56930376;
        public static fieldNames: string[] = ["Recalculation"];
        public get Recalculation(): codegen.SharedModel.Battle.Core.Hero.StatsRecalculation {
            return this.readField(16, codegen.SharedModel.Battle.Core.Hero.StatsRecalculation, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Hero {
    export class StatsRecalculation extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Hero.StatsRecalculation";
        static get size() { return 16 + 8; }
        public static address = 56936200;
        public static fieldNames: string[] = ["_currentStatsImpact"];
        public get _currentStatsImpact(): codegen.SharedModel.Battle.Core.Hero.StatImpactByEffects {
            return this.readField(16, codegen.SharedModel.Battle.Core.Hero.StatImpactByEffects, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Hero {
    export class HeroState extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Hero.HeroState";
        static get size() { return 80 + 8; }
        public static address = 56932128;
        public static fieldNames: string[] = ["IsStunned", "IsFrozen", "IsSleep", "IsProvoked", "IsInvincible", "IsBlockDebuff", "IsBlockHeal", "IsDead", "IsStrongInvisible", "IsWeakInvisible", "SkillsBlocked", "Feared", "StrongFrightApplied", "EasyFrightApplied", "AppliedEffects", "Immunity", "AppliedBuffs", "AppliedDebuffs", "AppliedEffectsByPhase", "AppliedEffectsByKindId"];
        public get IsStunned(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get IsFrozen(): boolean {
            return this.readTypePrimitive(17, "bool", 1);
        }
        public get IsSleep(): boolean {
            return this.readTypePrimitive(18, "bool", 1);
        }
        public get IsProvoked(): boolean {
            return this.readTypePrimitive(19, "bool", 1);
        }
        public get IsInvincible(): boolean {
            return this.readTypePrimitive(20, "bool", 1);
        }
        public get IsBlockDebuff(): boolean {
            return this.readTypePrimitive(21, "bool", 1);
        }
        public get IsBlockHeal(): boolean {
            return this.readTypePrimitive(22, "bool", 1);
        }
        public get IsDead(): boolean {
            return this.readTypePrimitive(23, "bool", 1);
        }
        public get IsStrongInvisible(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public get IsWeakInvisible(): boolean {
            return this.readTypePrimitive(25, "bool", 1);
        }
        public get SkillsBlocked(): boolean {
            return this.readTypePrimitive(26, "bool", 1);
        }
        public get Feared(): boolean {
            return this.readTypePrimitive(27, "bool", 1);
        }
        public get StrongFrightApplied(): boolean {
            return this.readTypePrimitive(28, "bool", 1);
        }
        public get EasyFrightApplied(): boolean {
            return this.readTypePrimitive(29, "bool", 1);
        }
        public get AppliedEffects(): System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Skill.AppliedEffect> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Core.Skill.AppliedEffect);
        }
        public get Immunity(): System.Collections.Generic.HashSet<number> {
            return this.readField(48, System.Collections.Generic.HashSet, 2, "int");
        }
        public get AppliedBuffs(): System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Skill.AppliedEffect> {
            return this.readField(56, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Core.Skill.AppliedEffect);
        }
        public get AppliedDebuffs(): System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Skill.AppliedEffect> {
            return this.readField(64, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Core.Skill.AppliedEffect);
        }
        public get AppliedEffectsByPhase(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Skill.AppliedEffect>> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Battle.Core.Skill.AppliedEffect));
        }
        public get AppliedEffectsByKindId(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Skill.AppliedEffect>> {
            return this.readField(80, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Battle.Core.Skill.AppliedEffect));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill {
    export class AppliedEffect extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.AppliedEffect";
        static get size() { return 184 + 8; }
        public static address = 56930528;
        public static fieldNames: string[] = ["Id", "ProducerId", "_producer", "SkillModifiers", "SkillTypeId", "_skill", "EffectTypeId", "ApplierEffectId", "ApplyTurn", "Lifetime", "TurnLeft", "IsProtected", "IgnoreEffectsLimit", "HitShieldState", "IndexInApplyingEffect", "_type"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ProducerId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get _producer(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(24, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public get SkillModifiers(): codegen.SharedModel.Battle.Core.Skill.SkillModifiers {
            return this.readField(32, codegen.SharedModel.Battle.Core.Skill.SkillModifiers, 2);
        }
        public get SkillTypeId(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get _skill(): codegen.SharedModel.Battle.Core.Skill.BattleSkill {
            return this.readField(48, codegen.SharedModel.Battle.Core.Skill.BattleSkill, 2);
        }
        public get EffectTypeId(): number {
            return this.readTypePrimitive(56, "int", 1);
        }
        public get ApplierEffectId(): number {
            return this.readTypePrimitive(60, "int", 1);
        }
        public get ApplyTurn(): number {
            return this.readTypePrimitive(64, "int", 1);
        }
        public get Lifetime(): number {
            return this.readTypePrimitive(68, "int", 1);
        }
        public get TurnLeft(): number {
            return this.readTypePrimitive(72, "int", 1);
        }
        public get IsProtected(): boolean {
            return this.readTypePrimitive(76, "bool", 1);
        }
        public get IgnoreEffectsLimit(): boolean {
            return this.readTypePrimitive(77, "bool", 1);
        }
        public get HitShieldState(): codegen.SharedModel.Battle.Core.Skill.HitShieldState {
            return this.readField(152, codegen.SharedModel.Battle.Core.Skill.HitShieldState, 2);
        }
        public get IndexInApplyingEffect(): number {
            return this.readTypePrimitive(176, "int", 1);
        }
        public get _type(): codegen.SharedModel.Battle.Effects.EffectType {
            return this.readField(184, codegen.SharedModel.Battle.Effects.EffectType, 2);
        }
        public static staticMethods = {
            "<Skill>b__29_0": () => new il2js.MethodInfo(56818688),
            "<get_Type>b__24_0": () => new il2js.MethodInfo(56818840)
        };
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill {
    export class SkillModifiers extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.SkillModifiers";
        static get size() { return 0; }
        public static address = 56961984;
        public static fieldNames: string[] = [];
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill {
    export class HitShieldState extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.HitShieldState";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56946376;
        public static fieldNames: string[] = ["InitialHitsNeeded", "HitsLeft"];
        public get InitialHitsNeeded(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get HitsLeft(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.System.Collections.Generic {
    export class HashSet__2_Slot<T = unknown> extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Collections.Generic.HashSet__2_Slot";
        static get size() { return 0 + il2js.NativeStruct.sizeof("int"); }
        public static fieldNames: string[] = ["hashCode", "next"];
        constructor(address: Address, _t0: T = typeof il2js.UnknownObject as any) { super(address); }
        public get hashCode(): number {
            return this.readTypePrimitive(0, "int", 1);
        }
        public get next(): number {
            return this.readTypePrimitive(0, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Hero {
    export class BattleBonuses extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Hero.BattleBonuses";
        static get size() { return 80 + 8; }
        public static address = 56931976;
        public static fieldNames: string[] = ["LeaderFlat", "LeaderPercent", "BuildingsFlat", "BuildingsPercent", "Arena", "ArtifactsFlat", "ArtifactsPercent", "ModifiersFlat", "ModifiersPercent"];
        public get LeaderFlat(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(16, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get LeaderPercent(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(24, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get BuildingsFlat(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(32, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get BuildingsPercent(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(40, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get Arena(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(48, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get ArtifactsFlat(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(56, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get ArtifactsPercent(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(64, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get ModifiersFlat(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(72, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get ModifiersPercent(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(80, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Hero {
    export class PhaseEffects extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Hero.PhaseEffects";
        static get size() { return 16 + 8; }
        public static address = 56932312;
        public static fieldNames: string[] = ["_effectsByPhaseIndex"];
        public get _effectsByPhaseIndex(): System.Internal.ManagedArray<System.Collections.Generic.List<codegen.SharedModel.Battle.Effects.EffectType>> {
            return this.readField(16, System.Internal.ManagedArray, 2, bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Battle.Effects.EffectType));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Hero {
    export class SummonInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Hero.SummonInfo";
        static get size() { return 16 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56959568;
        public static fieldNames: string[] = ["RemoveAfterDeath"];
        public get RemoveAfterDeath(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Hero {
    export class PassiveBonusDescriptor extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Hero.PassiveBonusDescriptor";
        static get size() { return 24 + 8; }
        public static address = 56932856;
        public static fieldNames: string[] = ["Effect", "Skill"];
        public get Effect(): codegen.SharedModel.Battle.Effects.EffectType {
            return this.readField(16, codegen.SharedModel.Battle.Effects.EffectType, 2);
        }
        public get Skill(): codegen.SharedModel.Battle.Core.Skill.BattleSkill {
            return this.readField(24, codegen.SharedModel.Battle.Core.Skill.BattleSkill, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill.EffectContexts {
    export class EffectIteration extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.EffectContexts.EffectIteration";
        static get size() { return 24 + 8; }
        public static address = 56946752;
        public static fieldNames: string[] = ["Number", "TargetId", "Results"];
        public get Number(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get TargetId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Results(): System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Result.ActionResult> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Core.Result.ActionResult);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class ActionResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.ActionResult";
        static get size() { return 369 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56924928;
        public static fieldNames: string[] = ["Turn", "Target", "IsEffectProcessed", "IsEffectApplied", "ApplyFailReason", "EffectDescription", "EffectIterationNumber", "IsMainEffectResult", "EffectProcessingCanceled", "SkillShown", "ActivateSkill", "HeroDead", "HeroRevived", "CooldownChange", "LifetimeChange", "AppliedEffect", "UnappliedEffect", "StaminaChange", "HealthChange", "CalculatedDamage", "Damage", "ModifiedDamageMultiplier", "CalculatedDamageModify", "CalculatedHeal", "Heal", "HealMultiplierModification", "ShieldChange", "StatsChange", "MaxHealthChange", "HitCounterShield", "Summon", "ChanceChangeResult", "Fear", "RoundStarted", "RoundFinished", "RepeatCountChanged", "DestroyedHp", "DestroyedHpModification", "EffectTargetChanged", "CancelResult", "ChangeDefenceModifierResult", "ChangeStaminaModificationResult", "EffectAccuracyChangeResult", "CrabShellProcessedResult", "CrabShellLayerDestroyedResult", "ChangeSkyWrathCounterResult", "HitTypeModifierResult", "IsUnkillableEffectSavedHero", "IsMultiplyEffectResult"];
        public get Turn(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Target(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(24, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public get IsEffectProcessed(): boolean {
            return this.readTypePrimitive(32, "bool", 1);
        }
        public get IsEffectApplied(): boolean {
            return this.readTypePrimitive(33, "bool", 1);
        }
        public get ApplyFailReason(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public get EffectDescription(): codegen.SharedModel.Battle.Core.Skill.EffectDescription {
            return this.readField(40, codegen.SharedModel.Battle.Core.Skill.EffectDescription, 2);
        }
        public get EffectIterationNumber(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get IsMainEffectResult(): boolean {
            return this.readTypePrimitive(52, "bool", 1);
        }
        public get EffectProcessingCanceled(): boolean {
            return this.readTypePrimitive(53, "bool", 1);
        }
        public get SkillShown(): codegen.SharedModel.Battle.Core.Result.SkillShownResult {
            return this.readField(56, codegen.SharedModel.Battle.Core.Result.SkillShownResult, 2);
        }
        public get ActivateSkill(): codegen.SharedModel.Battle.Core.Result.ActivateSkillResult {
            return this.readField(64, codegen.SharedModel.Battle.Core.Result.ActivateSkillResult, 2);
        }
        public get HeroDead(): codegen.SharedModel.Battle.Core.Result.HeroDeadResult {
            return this.readField(72, codegen.SharedModel.Battle.Core.Result.HeroDeadResult, 2);
        }
        public get HeroRevived(): codegen.SharedModel.Battle.Core.Result.HeroRevivedResult {
            return this.readField(80, codegen.SharedModel.Battle.Core.Result.HeroRevivedResult, 2);
        }
        public get CooldownChange(): codegen.SharedModel.Battle.Core.Result.CooldownChangeResult {
            return this.readField(88, codegen.SharedModel.Battle.Core.Result.CooldownChangeResult, 2);
        }
        public get LifetimeChange(): codegen.SharedModel.Battle.Core.Result.LifetimeChangeResult {
            return this.readField(96, codegen.SharedModel.Battle.Core.Result.LifetimeChangeResult, 2);
        }
        public get AppliedEffect(): codegen.SharedModel.Battle.Core.Result.AppliedEffectResult {
            return this.readField(104, codegen.SharedModel.Battle.Core.Result.AppliedEffectResult, 2);
        }
        public get UnappliedEffect(): codegen.SharedModel.Battle.Core.Result.UnappliedEffectResult {
            return this.readField(112, codegen.SharedModel.Battle.Core.Result.UnappliedEffectResult, 2);
        }
        public get StaminaChange(): codegen.SharedModel.Battle.Core.Result.StaminaChangeResults {
            return this.readField(120, codegen.SharedModel.Battle.Core.Result.StaminaChangeResults, 2);
        }
        public get HealthChange(): codegen.SharedModel.Battle.Core.Result.HealthChangeResult {
            return this.readField(128, codegen.SharedModel.Battle.Core.Result.HealthChangeResult, 2);
        }
        public get CalculatedDamage(): codegen.SharedModel.Battle.Core.Result.DamageResult {
            return this.readField(136, codegen.SharedModel.Battle.Core.Result.DamageResult, 2);
        }
        public get Damage(): codegen.SharedModel.Battle.Core.Result.DamageResult {
            return this.readField(144, codegen.SharedModel.Battle.Core.Result.DamageResult, 2);
        }
        public get ModifiedDamageMultiplier(): codegen.SharedModel.Battle.Core.Result.DamageMultiplierModifyResult {
            return this.readField(152, codegen.SharedModel.Battle.Core.Result.DamageMultiplierModifyResult, 2);
        }
        public get CalculatedDamageModify(): codegen.SharedModel.Battle.Core.Result.CalculatedDamageModifyResult {
            return this.readField(160, codegen.SharedModel.Battle.Core.Result.CalculatedDamageModifyResult, 2);
        }
        public get CalculatedHeal(): codegen.SharedModel.Battle.Core.Result.HealResult {
            return this.readField(168, codegen.SharedModel.Battle.Core.Result.HealResult, 2);
        }
        public get Heal(): codegen.SharedModel.Battle.Core.Result.HealResult {
            return this.readField(176, codegen.SharedModel.Battle.Core.Result.HealResult, 2);
        }
        public get HealMultiplierModification(): codegen.SharedModel.Battle.Core.Result.HealMultiplierModifyResult {
            return this.readField(184, codegen.SharedModel.Battle.Core.Result.HealMultiplierModifyResult, 2);
        }
        public get ShieldChange(): codegen.SharedModel.Battle.Core.Result.ShieldChangeResult {
            return this.readField(192, codegen.SharedModel.Battle.Core.Result.ShieldChangeResult, 2);
        }
        public get StatsChange(): codegen.SharedModel.Battle.Core.Result.StatsChangeResult {
            return this.readField(200, codegen.SharedModel.Battle.Core.Result.StatsChangeResult, 2);
        }
        public get MaxHealthChange(): codegen.SharedModel.Battle.Core.Result.MaxHealthChangeResult {
            return this.readField(208, codegen.SharedModel.Battle.Core.Result.MaxHealthChangeResult, 2);
        }
        public get HitCounterShield(): codegen.SharedModel.Battle.Core.Result.HitCounterShieldResult {
            return this.readField(216, codegen.SharedModel.Battle.Core.Result.HitCounterShieldResult, 2);
        }
        public get Summon(): codegen.SharedModel.Battle.Core.Result.SummonResult {
            return this.readField(224, codegen.SharedModel.Battle.Core.Result.SummonResult, 2);
        }
        public get ChanceChangeResult(): codegen.SharedModel.Battle.Core.Result.EffectChanceChangeResult {
            return this.readField(232, codegen.SharedModel.Battle.Core.Result.EffectChanceChangeResult, 2);
        }
        public get Fear(): codegen.SharedModel.Battle.Core.Result.FearResult {
            return this.readField(240, codegen.SharedModel.Battle.Core.Result.FearResult, 2);
        }
        public get RoundStarted(): codegen.SharedModel.Battle.Core.Result.RoundStartedResult {
            return this.readField(248, codegen.SharedModel.Battle.Core.Result.RoundStartedResult, 2);
        }
        public get RoundFinished(): codegen.SharedModel.Battle.Core.Result.RoundFinishedResult {
            return this.readField(256, codegen.SharedModel.Battle.Core.Result.RoundFinishedResult, 2);
        }
        public get RepeatCountChanged(): codegen.SharedModel.Battle.Core.Result.RepeatCountChanged {
            return this.readField(264, codegen.SharedModel.Battle.Core.Result.RepeatCountChanged, 2);
        }
        public get DestroyedHp(): codegen.SharedModel.Battle.Core.Result.DestroyedHpResult {
            return this.readField(272, codegen.SharedModel.Battle.Core.Result.DestroyedHpResult, 2);
        }
        public get DestroyedHpModification(): codegen.SharedModel.Battle.Core.Result.DestroyedHpModificationResult {
            return this.readField(280, codegen.SharedModel.Battle.Core.Result.DestroyedHpModificationResult, 2);
        }
        public get EffectTargetChanged(): codegen.SharedModel.Battle.Core.Result.EffectTargetChanged {
            return this.readField(288, codegen.SharedModel.Battle.Core.Result.EffectTargetChanged, 2);
        }
        public get CancelResult(): codegen.SharedModel.Battle.Core.Result.CancelEffectResult {
            return this.readField(296, codegen.SharedModel.Battle.Core.Result.CancelEffectResult, 2);
        }
        public get ChangeDefenceModifierResult(): codegen.SharedModel.Battle.Core.Result.ChangeDefenceModifierResult {
            return this.readField(304, codegen.SharedModel.Battle.Core.Result.ChangeDefenceModifierResult, 2);
        }
        public get ChangeStaminaModificationResult(): codegen.SharedModel.Battle.Core.Result.ChangeStaminaModificationResult {
            return this.readField(312, codegen.SharedModel.Battle.Core.Result.ChangeStaminaModificationResult, 2);
        }
        public get EffectAccuracyChangeResult(): codegen.SharedModel.Battle.Core.Result.EffectAccuracyChangeResult {
            return this.readField(320, codegen.SharedModel.Battle.Core.Result.EffectAccuracyChangeResult, 2);
        }
        public get CrabShellProcessedResult(): codegen.SharedModel.Battle.Core.Result.CrabShellProcessedResult {
            return this.readField(328, codegen.SharedModel.Battle.Core.Result.CrabShellProcessedResult, 2);
        }
        public get CrabShellLayerDestroyedResult(): codegen.SharedModel.Battle.Core.Result.CrabShellLayerDestroyedResult {
            return this.readField(336, codegen.SharedModel.Battle.Core.Result.CrabShellLayerDestroyedResult, 2);
        }
        public get ChangeSkyWrathCounterResult(): codegen.SharedModel.Battle.Core.Result.ChangeSkyWrathCounterResult {
            return this.readField(344, codegen.SharedModel.Battle.Core.Result.ChangeSkyWrathCounterResult, 2);
        }
        public get HitTypeModifierResult(): codegen.SharedModel.Battle.Core.Result.HitTypeModifierResult {
            return this.readField(352, codegen.SharedModel.Battle.Core.Result.HitTypeModifierResult, 2);
        }
        public get IsUnkillableEffectSavedHero(): boolean {
            return this.readTypePrimitive(368, "bool", 1);
        }
        public get IsMultiplyEffectResult(): boolean {
            return this.readTypePrimitive(369, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class SkillShownResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.SkillShownResult";
        static get size() { return 16 + 8; }
        public static address = 56958984;
        public static fieldNames: string[] = ["SkillShown"];
        public get SkillShown(): codegen.SharedModel.Battle.Core.Skill.BattleSkill {
            return this.readField(16, codegen.SharedModel.Battle.Core.Skill.BattleSkill, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class ActivateSkillResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.ActivateSkillResult";
        static get size() { return 48 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56959136;
        public static fieldNames: string[] = ["Skill", "Producer", "Target", "Modifiers", "FromTeamAttack"];
        public get Skill(): codegen.SharedModel.Battle.Core.Skill.BattleSkill {
            return this.readField(16, codegen.SharedModel.Battle.Core.Skill.BattleSkill, 2);
        }
        public get Producer(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(24, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public get Target(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(32, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public get Modifiers(): codegen.SharedModel.Battle.Core.Skill.SkillModifiers {
            return this.readField(40, codegen.SharedModel.Battle.Core.Skill.SkillModifiers, 2);
        }
        public get FromTeamAttack(): boolean {
            return this.readTypePrimitive(48, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class HeroDeadResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.HeroDeadResult";
        static get size() { return 16 + 8; }
        public static address = 56939464;
        public static fieldNames: string[] = ["Hero"];
        public get Hero(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(16, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class HeroRevivedResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.HeroRevivedResult";
        static get size() { return 24 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56930952;
        public static fieldNames: string[] = ["Hero", "Health"];
        public get Hero(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(16, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public get Health(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class CooldownChangeResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.CooldownChangeResult";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56925072;
        public static fieldNames: string[] = ["ChangedSkill", "Turns"];
        public get ChangedSkill(): codegen.SharedModel.Battle.Core.Skill.BattleSkill {
            return this.readField(16, codegen.SharedModel.Battle.Core.Skill.BattleSkill, 2);
        }
        public get Turns(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class LifetimeChangeResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.LifetimeChangeResult";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56938888;
        public static fieldNames: string[] = ["ChangedEffect", "Turns"];
        public get ChangedEffect(): codegen.SharedModel.Battle.Core.Skill.AppliedEffect {
            return this.readField(16, codegen.SharedModel.Battle.Core.Skill.AppliedEffect, 2);
        }
        public get Turns(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class AppliedEffectResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.AppliedEffectResult";
        static get size() { return 48 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56940608;
        public static fieldNames: string[] = ["Effect", "Target", "IsApplied", "StatsChanges", "ProducedByReapplying"];
        public get Effect(): codegen.SharedModel.Battle.Core.Skill.AppliedEffect {
            return this.readField(16, codegen.SharedModel.Battle.Core.Skill.AppliedEffect, 2);
        }
        public get Target(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(24, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public get IsApplied(): boolean {
            return this.readTypePrimitive(32, "bool", 1);
        }
        public get StatsChanges(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(40, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get ProducedByReapplying(): boolean {
            return this.readTypePrimitive(48, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class UnappliedEffectResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.UnappliedEffectResult";
        static get size() { return 56 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56940736;
        public static fieldNames: string[] = ["Effect", "Target", "IsUnapplied", "StatsChanges", "ProducedByReapplying", "Source", "Cause"];
        public get Effect(): codegen.SharedModel.Battle.Core.Skill.AppliedEffect {
            return this.readField(16, codegen.SharedModel.Battle.Core.Skill.AppliedEffect, 2);
        }
        public get Target(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(24, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public get IsUnapplied(): boolean {
            return this.readTypePrimitive(32, "bool", 1);
        }
        public get StatsChanges(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(40, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get ProducedByReapplying(): boolean {
            return this.readTypePrimitive(48, "bool", 1);
        }
        public get Source(): number {
            return this.readTypePrimitive(52, "int", 1);
        }
        public get Cause(): number {
            return this.readTypePrimitive(56, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class StaminaChangeResults extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.StaminaChangeResults";
        static get size() { return 24 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56930888;
        public static fieldNames: string[] = ["Value", "ActualValue"];
        public get Value(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public get ActualValue(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class HealthChangeResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.HealthChangeResult";
        static get size() { return 16 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56925064;
        public static fieldNames: string[] = ["Health"];
        public get Health(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class DamageResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.DamageResult";
        static get size() { return 81 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56942080;
        public static fieldNames: string[] = ["HitType", "ElementRelation", "DefenceModifier", "IgnoreBlockDamage", "IgnoreShield", "IgnoreUnkillable", "ExcessiveValue", "_multiplierValue", "_value", "IsLethal", "IsBlocked"];
        public get HitType(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ElementRelation(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get DefenceModifier(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public get IgnoreBlockDamage(): boolean {
            return this.readTypePrimitive(32, "bool", 1);
        }
        public get IgnoreShield(): boolean {
            return this.readTypePrimitive(33, "bool", 1);
        }
        public get IgnoreUnkillable(): boolean {
            return this.readTypePrimitive(34, "bool", 1);
        }
        public get ExcessiveValue(): number {
            return this.readField(40, FixedNumber, 1);
        }
        public get _multiplierValue(): number {
            return this.readField(64, FixedNumber, 1);
        }
        public get _value(): number {
            return this.readField(72, FixedNumber, 1);
        }
        public get IsLethal(): boolean {
            return this.readTypePrimitive(80, "bool", 1);
        }
        public get IsBlocked(): boolean {
            return this.readTypePrimitive(81, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class DamageMultiplierModifyResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.DamageMultiplierModifyResult";
        static get size() { return 16 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56955576;
        public static fieldNames: string[] = ["MultiplierDifference"];
        public get MultiplierDifference(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class CalculatedDamageModifyResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.CalculatedDamageModifyResult";
        static get size() { return 16 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56955456;
        public static fieldNames: string[] = ["DamageDifference"];
        public get DamageDifference(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class HealResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.HealResult";
        static get size() { return 32 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56942536;
        public static fieldNames: string[] = ["Value", "ExcessiveValue", "HealHitType"];
        public get Value(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public get ExcessiveValue(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public get HealHitType(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class HealMultiplierModifyResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.HealMultiplierModifyResult";
        static get size() { return 16 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56940472;
        public static fieldNames: string[] = ["Difference"];
        public get Difference(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class ShieldChangeResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.ShieldChangeResult";
        static get size() { return 16 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56938960;
        public static fieldNames: string[] = ["ShieldChanges"];
        public get ShieldChanges(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class StatsChangeResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.StatsChangeResult";
        static get size() { return 16 + 8; }
        public static address = 56940256;
        public static fieldNames: string[] = ["StatsDifference"];
        public get StatsDifference(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(16, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class MaxHealthChangeResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.MaxHealthChangeResult";
        static get size() { return 24 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56940360;
        public static fieldNames: string[] = ["ActualValue", "Difference"];
        public get ActualValue(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public get Difference(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class HitCounterShieldResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.HitCounterShieldResult";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56939072;
        public static fieldNames: string[] = ["HitsLeft"];
        public get HitsLeft(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class SummonResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.SummonResult";
        static get size() { return 16 + 8; }
        public static address = 56939160;
        public static fieldNames: string[] = ["SummonedHero"];
        public get SummonedHero(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(16, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class EffectChanceChangeResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.EffectChanceChangeResult";
        static get size() { return 24 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56939272;
        public static fieldNames: string[] = ["Value", "Difference"];
        public get Value(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public get Difference(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class FearResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.FearResult";
        static get size() { return 32 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56939760;
        public static fieldNames: string[] = ["Hero", "InterruptedSkill", "EffectTypeId"];
        public get Hero(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(16, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public get InterruptedSkill(): codegen.SharedModel.Battle.Core.Skill.BattleSkill {
            return this.readField(24, codegen.SharedModel.Battle.Core.Skill.BattleSkill, 2);
        }
        public get EffectTypeId(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class RoundStartedResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.RoundStartedResult";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56939584;
        public static fieldNames: string[] = ["Round"];
        public get Round(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class RoundFinishedResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.RoundFinishedResult";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56939712;
        public static fieldNames: string[] = ["Round"];
        public get Round(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class RepeatCountChanged extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.RepeatCountChanged";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56939888;
        public static fieldNames: string[] = ["Delta"];
        public get Delta(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class DestroyedHpResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.DestroyedHpResult";
        static get size() { return 24 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56940032;
        public static fieldNames: string[] = ["Value", "Total"];
        public get Value(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public get Total(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class DestroyedHpModificationResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.DestroyedHpModificationResult";
        static get size() { return 24 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56940056;
        public static fieldNames: string[] = ["Difference", "NewValue"];
        public get Difference(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public get NewValue(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class EffectTargetChanged extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.EffectTargetChanged";
        static get size() { return 24 + 8; }
        public static address = 56940192;
        public static fieldNames: string[] = ["InitialTarget", "ActualTarget"];
        public get InitialTarget(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(16, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public get ActualTarget(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(24, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class CancelEffectResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.CancelEffectResult";
        static get size() { return 24 + 8; }
        public static address = 56941736;
        public static fieldNames: string[] = ["CanceledEffectProducerId", "TargetIds"];
        public get CanceledEffectProducerId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get TargetIds(): System.Collections.Generic.IEnumerable<number> {
            return this.readField(24, System.Collections.Generic.IEnumerable, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class ChangeDefenceModifierResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.ChangeDefenceModifierResult";
        static get size() { return 32 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56940824;
        public static fieldNames: string[] = ["MultiplierValue", "DefIgnoreDifferencePerc", "ResultDefIgnorePerc"];
        public get MultiplierValue(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public get DefIgnoreDifferencePerc(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public get ResultDefIgnorePerc(): number {
            return this.readField(32, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class ChangeStaminaModificationResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.ChangeStaminaModificationResult";
        static get size() { return 16 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56940904;
        public static fieldNames: string[] = ["Difference"];
        public get Difference(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class EffectAccuracyChangeResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.EffectAccuracyChangeResult";
        static get size() { return 24 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56941184;
        public static fieldNames: string[] = ["Difference", "CurrentValue"];
        public get Difference(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public get CurrentValue(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class CrabShellProcessedResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.CrabShellProcessedResult";
        static get size() { return 24 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56941280;
        public static fieldNames: string[] = ["Layer", "ReducedDamage"];
        public get Layer(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ReducedDamage(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class CrabShellLayerDestroyedResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.CrabShellLayerDestroyedResult";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56941296;
        public static fieldNames: string[] = ["DestroyedLayer", "NewLayer"];
        public get DestroyedLayer(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get NewLayer(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class ChangeSkyWrathCounterResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.ChangeSkyWrathCounterResult";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56941456;
        public static fieldNames: string[] = ["EffectId", "OldValue", "NewValue"];
        public get EffectId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get OldValue(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get NewValue(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Result {
    export class HitTypeModifierResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Result.HitTypeModifierResult";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56941584;
        public static fieldNames: string[] = ["NewHitType"];
        public get NewHitType(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.State {
    export class BattleStateSnapshot extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.State.BattleStateSnapshot";
        static get size() { return 0; }
        public static address = 56962680;
        public static fieldNames: string[] = [];
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.State {
    export class BattleHeroSnapshot extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.State.BattleHeroSnapshot";
        static get size() { return 112 + 8; }
        public static address = 56931840;
        public static fieldNames: string[] = ["Id", "Type", "Level", "Grade", "Health", "DamageTaken", "Stamina", "DestroyedHealth", "Stats", "IsDead", "Team", "TeamOwnerId", "SlotId", "SummonInfo"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Type(): codegen.SharedModel.Meta.Heroes.HeroType {
            return this.readField(24, codegen.SharedModel.Meta.Heroes.HeroType, 2);
        }
        public get Level(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get Grade(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public get Health(): number {
            return this.readField(40, FixedNumber, 1);
        }
        public get DamageTaken(): number {
            return this.readField(48, FixedNumber, 1);
        }
        public get Stamina(): number {
            return this.readField(56, FixedNumber, 1);
        }
        public get DestroyedHealth(): number {
            return this.readField(64, FixedNumber, 1);
        }
        public get Stats(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(72, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get IsDead(): boolean {
            return this.readTypePrimitive(80, "bool", 1);
        }
        public get Team(): number {
            return this.readTypePrimitive(84, "int", 1);
        }
        public get TeamOwnerId(): number {
            return this.readTypePrimitive(88, "long", 1);
        }
        public get SlotId(): number {
            return this.readTypePrimitive(96, "int", 1);
        }
        public get SummonInfo(): codegen.SharedModel.Battle.Core.Hero.SummonInfo {
            return this.readField(112, codegen.SharedModel.Battle.Core.Hero.SummonInfo, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.State {
    export class AppliedEffectSnapshot extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.State.AppliedEffectSnapshot";
        static get size() { return 28 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56961992;
        public static fieldNames: string[] = ["Id", "TypeId", "KindId", "TurnLeft"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get TypeId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get KindId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get TurnLeft(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public static staticMethods = {
            "Create": () => new il2js.MethodInfo(56495016)
        };
    }
}
export namespace codegen.SharedModel.Battle.Core {
    export class BattleContext extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.BattleContext";
        static get size() { return 48 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56923280;
        public static fieldNames: string[] = ["Setup", "State", "Statistics", "DecisionMaker", "MaxRecursionDepth"];
        public get Setup(): codegen.SharedModel.Battle.Core.Setup.BattleSetup {
            return this.readField(16, codegen.SharedModel.Battle.Core.Setup.BattleSetup, 2);
        }
        public get State(): codegen.SharedModel.Battle.Core.State.BattleState {
            return this.readField(24, codegen.SharedModel.Battle.Core.State.BattleState, 2);
        }
        public get Statistics(): codegen.SharedModel.Battle.Core.BattleStatistics {
            return this.readField(32, codegen.SharedModel.Battle.Core.BattleStatistics, 2);
        }
        public get DecisionMaker(): codegen.SharedModel.Battle.AI.TurnActionGeneration.DecisionMaker {
            return this.readField(40, codegen.SharedModel.Battle.AI.TurnActionGeneration.DecisionMaker, 2);
        }
        public get MaxRecursionDepth(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Setup {
    export class BattleSetup extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Setup.BattleSetup";
        static get size() { return 128 + 8; }
        public static address = 56943736;
        public static fieldNames: string[] = ["RandomSeed", "KindId", "FirstTeam", "SecondTeam", "StageId", "StageFormationIndex", "Modifiers", "StartTime", "StageName", "_stage"];
        public get RandomSeed(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public get KindId(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get FirstTeam(): codegen.SharedModel.Battle.Core.Setup.TeamSetup {
            return this.readField(48, codegen.SharedModel.Battle.Core.Setup.TeamSetup, 2);
        }
        public get SecondTeam(): codegen.SharedModel.Battle.Core.Setup.TeamSetup {
            return this.readField(56, codegen.SharedModel.Battle.Core.Setup.TeamSetup, 2);
        }
        public get StageId(): number {
            return this.readTypePrimitive(64, "int", 1);
        }
        public get StageFormationIndex(): number {
            return this.readTypePrimitive(68, "int", 1);
        }
        public get Modifiers(): System.Collections.Generic.List<codegen.SharedModel.Meta.Stages.BattleStatsModifier> {
            return this.readField(72, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Stages.BattleStatsModifier);
        }
        public get StartTime(): Date {
            return this.readField(104, System.DateTime, 2);
        }
        public get StageName(): string {
            return this.readField(120, System.String, 2);
        }
        public get _stage(): codegen.SharedModel.Meta.Stages.Stage {
            return this.readField(128, codegen.SharedModel.Meta.Stages.Stage, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Setup {
    export class TeamSetup extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Setup.TeamSetup";
        static get size() { return 64 + 8; }
        public static address = 56945472;
        public static fieldNames: string[] = ["CombatPower", "TeamOwnerId", "ArenaLeagueId", "HeroSlotSetups", "Modifiers", "HealthModifier", "_heroesByRound"];
        public get CombatPower(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get TeamOwnerId(): number {
            return this.readTypePrimitive(24, "long", 1);
        }
        public get ArenaLeagueId(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get HeroSlotSetups(): System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Setup.HeroSlotSetup> {
            return this.readField(40, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Core.Setup.HeroSlotSetup);
        }
        public get Modifiers(): System.Collections.Generic.List<codegen.SharedModel.Meta.Stages.BattleStatsModifier> {
            return this.readField(48, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Stages.BattleStatsModifier);
        }
        public get HealthModifier(): number {
            return this.readField(56, FixedNumber, 1);
        }
        public get _heroesByRound(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Setup.HeroSlotSetup>> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Battle.Core.Setup.HeroSlotSetup));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Setup {
    export class HeroSlotSetup extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Setup.HeroSlotSetup";
        static get size() { return 120 + 8; }
        public static address = 56944120;
        public static fieldNames: string[] = ["_type", "Round", "Slot", "OwnerUserId", "HeroTypeId", "InventoryHeroId", "Grade", "Level", "Experience", "MaxSkillsLevel", "ModifiersSetup", "BuildingSetup", "SkillSetups", "ArtifactSetups", "ArtifactSetSetups", "MasteryIds", "StartEffects"];
        public get _type(): codegen.SharedModel.Meta.Heroes.HeroType {
            return this.readField(16, codegen.SharedModel.Meta.Heroes.HeroType, 2);
        }
        public get Round(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Slot(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get OwnerUserId(): number {
            return this.readTypePrimitive(32, "long", 1);
        }
        public get HeroTypeId(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get InventoryHeroId(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public get Grade(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get Level(): number {
            return this.readTypePrimitive(52, "int", 1);
        }
        public get Experience(): number {
            return this.readTypePrimitive(56, "long", 1);
        }
        public get MaxSkillsLevel(): boolean {
            return this.readTypePrimitive(64, "bool", 1);
        }
        public get ModifiersSetup(): codegen.SharedModel.Meta.Stages.BattleStatsModifierSetup {
            return this.readField(72, codegen.SharedModel.Meta.Stages.BattleStatsModifierSetup, 2);
        }
        public get BuildingSetup(): codegen.SharedModel.Battle.Core.Setup.BuildingSetup {
            return this.readField(80, codegen.SharedModel.Battle.Core.Setup.BuildingSetup, 2);
        }
        public get SkillSetups(): System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Setup.SkillSetup> {
            return this.readField(88, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Core.Setup.SkillSetup);
        }
        public get ArtifactSetups(): System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Setup.ArtifactSetup> {
            return this.readField(96, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Core.Setup.ArtifactSetup);
        }
        public get ArtifactSetSetups(): System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Setup.ArtifactSetSetup> {
            return this.readField(104, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Core.Setup.ArtifactSetSetup);
        }
        public get MasteryIds(): System.Collections.Generic.List<number> {
            return this.readField(112, System.Collections.Generic.List, 2, "int");
        }
        public get StartEffects(): System.Collections.Generic.List<codegen.SharedModel.Battle.Effects.EffectParams.StatusEffectInfo> {
            return this.readField(120, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Effects.EffectParams.StatusEffectInfo);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class BattleStatsModifierSetup extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.BattleStatsModifierSetup";
        static get size() { return 32 + 8; }
        public static address = 57083448;
        public static fieldNames: string[] = ["PercentBonus", "FlatBonus", "InitialState"];
        public get PercentBonus(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(16, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get FlatBonus(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(24, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get InitialState(): codegen.SharedModel.Battle.Core.Setup.InitialState {
            return this.readField(32, codegen.SharedModel.Battle.Core.Setup.InitialState, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Setup {
    export class InitialState extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Setup.InitialState";
        static get size() { return 24 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56453176;
        public static fieldNames: string[] = ["HealthModifier", "DamageTaken"];
        public get HealthModifier(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public get DamageTaken(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Setup {
    export class BuildingSetup extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Setup.BuildingSetup";
        static get size() { return 24 + 8; }
        public static address = 56944032;
        public static fieldNames: string[] = ["PercentBonus", "FlatBonus"];
        public get PercentBonus(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(16, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get FlatBonus(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(24, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Setup {
    export class SkillSetup extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Setup.SkillSetup";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56944952;
        public static fieldNames: string[] = ["TypeId", "Level"];
        public get TypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Level(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Setup {
    export class ArtifactSetup extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Setup.ArtifactSetup";
        static get size() { return 48 + 8; }
        public static address = 56943112;
        public static fieldNames: string[] = ["KindId", "SetKindId", "RankId", "RarityId", "PercentBonus", "FlatBonus"];
        public get KindId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get SetKindId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get RankId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get RarityId(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get PercentBonus(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(40, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get FlatBonus(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(48, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public static staticMethods = {
            "FromArtifact": () => new il2js.MethodInfo(56493136),
            ".cctor": () => new il2js.MethodInfo(56682360)
        };
    }
}
export namespace codegen.SharedModel.Battle.Core.Setup {
    export class ArtifactSetSetup extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Setup.ArtifactSetSetup";
        static get size() { return 40 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56943024;
        public static fieldNames: string[] = ["SkillBonus", "StatBonus", "StatBonuses", "IsAccessorySet"];
        public get SkillBonus(): codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetSkillBonus {
            return this.readField(16, codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetSkillBonus, 2);
        }
        public get StatBonus(): codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetStatBonus {
            return this.readField(24, codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetStatBonus, 2);
        }
        public get StatBonuses(): System.Collections.Generic.List<codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetStatBonus> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetStatBonus);
        }
        public get IsAccessorySet(): boolean {
            return this.readTypePrimitive(40, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Artifacts.Sets {
    export class ArtifactSetSkillBonus extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetSkillBonus";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57010544;
        public static fieldNames: string[] = ["SkillTypeId"];
        public get SkillTypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Artifacts.Sets {
    export class ArtifactSetStatBonus extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetStatBonus";
        static get size() { return 32 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57010648;
        public static fieldNames: string[] = ["StatKindId", "Value", "IsAbsolute"];
        public get StatKindId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Value(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public get IsAbsolute(): boolean {
            return this.readTypePrimitive(32, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class StatusEffectInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.StatusEffectInfo";
        static get size() { return 25 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56926336;
        public static fieldNames: string[] = ["TypeId", "Duration", "IsProtected", "IgnoreEffectsLimit"];
        public get TypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Duration(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get IsProtected(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public get IgnoreEffectsLimit(): boolean {
            return this.readTypePrimitive(25, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class BattleStatsModifier extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.BattleStatsModifier";
        static get size() { return 33 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57083344;
        public static fieldNames: string[] = ["Round", "KindId", "Value", "IsAbsolute", "BossOnly"];
        public get Round(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get KindId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Value(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public get IsAbsolute(): boolean {
            return this.readTypePrimitive(32, "bool", 1);
        }
        public get BossOnly(): boolean {
            return this.readTypePrimitive(33, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class Stage extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.Stage";
        static get size() { return 168 + 8; }
        public static address = 57086104;
        public static fieldNames: string[] = ["Id", "Name", "SceneName", "UserHeroesCount", "Formations", "RevivePrice", "Modifiers", "RewardHeroXp", "MasteryRewards", "Rewards", "FirstTimeReward", "Reward", "StartCondition", "SecretChamber", "HasBoss", "_area", "_region", "_masteryRewardsByType"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Name(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(24, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get SceneName(): string {
            return this.readField(32, System.String, 2);
        }
        public get UserHeroesCount(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get Formations(): System.Collections.Generic.List<codegen.SharedModel.Meta.Stages.StageHeroesFormation> {
            return this.readField(48, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Stages.StageHeroesFormation);
        }
        public get RevivePrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(56, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get Modifiers(): System.Collections.Generic.List<codegen.SharedModel.Meta.Stages.BattleStatsModifier> {
            return this.readField(64, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Stages.BattleStatsModifier);
        }
        public get RewardHeroXp(): number {
            return this.readTypePrimitive(72, "int", 1);
        }
        public get MasteryRewards(): System.Collections.Generic.List<codegen.SharedModel.Meta.Masteries.MasteryRewardInfo> {
            return this.readField(80, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Masteries.MasteryRewardInfo);
        }
        public get Rewards(): System.Collections.Generic.List<codegen.SharedModel.Meta.Stages.FlexibleRewardInfo> {
            return this.readField(88, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Stages.FlexibleRewardInfo);
        }
        public get FirstTimeReward(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(96, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get Reward(): codegen.SharedModel.Meta.Stages.FlexibleReward {
            return this.readField(104, codegen.SharedModel.Meta.Stages.FlexibleReward, 2);
        }
        public get StartCondition(): codegen.SharedModel.Meta.Stages.StageStartCondition {
            return this.readField(112, codegen.SharedModel.Meta.Stages.StageStartCondition, 2);
        }
        public get SecretChamber(): codegen.SharedModel.Meta.Battle.DoomTower.Data.DoomTowerSecretChamberData {
            return this.readField(120, codegen.SharedModel.Meta.Battle.DoomTower.Data.DoomTowerSecretChamberData, 2);
        }
        public get HasBoss(): boolean {
            return this.readTypePrimitive(128, "bool", 1);
        }
        public get _area(): codegen.SharedModel.Meta.Stages.Area {
            return this.readField(136, codegen.SharedModel.Meta.Stages.Area, 2);
        }
        public get _region(): codegen.SharedModel.Meta.Stages.Region {
            return this.readField(144, codegen.SharedModel.Meta.Stages.Region, 2);
        }
        public get _masteryRewardsByType(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Masteries.MasteryRewardInfo> {
            return this.readField(168, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Masteries.MasteryRewardInfo);
        }
        public static staticMethods = {
            "<get_Area>b__17_0": () => new il2js.MethodInfo(56909320),
            "<get_Region>b__20_0": () => new il2js.MethodInfo(56909448)
        };
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class StageHeroesFormation extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.StageHeroesFormation";
        static get size() { return 32 + 8; }
        public static address = 57087248;
        public static fieldNames: string[] = ["Id", "HeroSlotsSetup", "_heroesByRound"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get HeroSlotsSetup(): System.Collections.Generic.List<codegen.SharedModel.Meta.Stages.ShortHeroSlotSetup> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Stages.ShortHeroSlotSetup);
        }
        public get _heroesByRound(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Meta.Stages.ShortHeroSlotSetup>> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.Stages.ShortHeroSlotSetup));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class ShortHeroSlotSetup extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.ShortHeroSlotSetup";
        static get size() { return 36 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56944928;
        public static fieldNames: string[] = ["Round", "Slot", "HeroTypeId", "Grade", "Level", "MaxSkillsLevel"];
        public get Round(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Slot(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get HeroTypeId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Grade(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get Level(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get MaxSkillsLevel(): boolean {
            return this.readTypePrimitive(36, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Masteries {
    export class MasteryRewardInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Masteries.MasteryRewardInfo";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57049640;
        public static fieldNames: string[] = ["Type", "MinCount", "MaxCount"];
        public get Type(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get MinCount(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get MaxCount(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class FlexibleRewardInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.FlexibleRewardInfo";
        static get size() { return 36 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57084744;
        public static fieldNames: string[] = ["Type", "Probability", "MinCount", "MaxCount"];
        public get Type(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Probability(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public get MinCount(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get MaxCount(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.UserPrizes {
    export class UserPrize extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.UserPrizes.UserPrize";
        static get size() { return 184 + 8; }
        public static address = 56993496;
        public static fieldNames: string[] = ["Experience", "ArenaPoints", "Resources", "HeroParts", "HeroPartsChest", "BlackMarketItems", "Heroes", "Artifacts", "Effects", "Avatars", "ArtifactDropSettings", "ArtifactDropSettingsProcessed", "_setsOfArtifacts"];
        public get Experience(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get ArenaPoints(): number {
            return this.readTypePrimitive(32, "long", 1);
        }
        public get Resources(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(64, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get HeroParts(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get HeroPartsChest(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(80, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get BlackMarketItems(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(88, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get Heroes(): System.Collections.Generic.List<codegen.SharedModel.Meta.UserPrizes.HeroPrize> {
            return this.readField(96, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.UserPrizes.HeroPrize);
        }
        public get Artifacts(): System.Collections.Generic.List<codegen.SharedModel.Meta.Artifacts.Artifact> {
            return this.readField(104, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Artifacts.Artifact);
        }
        public get Effects(): System.Collections.Generic.List<codegen.SharedModel.Meta.BlackMarket.UserEffectInfo> {
            return this.readField(112, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.BlackMarket.UserEffectInfo);
        }
        public get Avatars(): System.Collections.Generic.List<number> {
            return this.readField(120, System.Collections.Generic.List, 2, "int");
        }
        public get ArtifactDropSettings(): System.Collections.Generic.List<codegen.SharedModel.Meta.Artifacts.SharedModel.Meta.Users.ArtifactDropSettings> {
            return this.readField(128, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Artifacts.SharedModel.Meta.Users.ArtifactDropSettings);
        }
        public get ArtifactDropSettingsProcessed(): boolean {
            return this.readTypePrimitive(144, "bool", 1);
        }
        public get _setsOfArtifacts(): System.Collections.Generic.IEnumerable<codegen.SharedModel.Meta.Artifacts.SetOfArtifacts> {
            return this.readField(184, System.Collections.Generic.IEnumerable, 2, codegen.SharedModel.Meta.Artifacts.SetOfArtifacts);
        }
        public static staticMethods = {
            "AsSet": () => new il2js.MethodInfo(56557760)
        };
    }
}
export namespace codegen.SharedModel.Meta.UserPrizes {
    export class HeroPrize extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.UserPrizes.HeroPrize";
        static get size() { return 40 + 8; }
        public static address = 56993368;
        public static fieldNames: string[] = ["HeroTypeId", "Count", "_type"];
        public get HeroTypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Count(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get _type(): codegen.SharedModel.Meta.Heroes.HeroType {
            return this.readField(40, codegen.SharedModel.Meta.Heroes.HeroType, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Artifacts {
    export class Artifact extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.Artifact";
        static get size() { return 112 + 8; }
        public static address = 57005256;
        public static fieldNames: string[] = ["_id", "_revision", "_sellPrice", "_price", "_level", "_isActivated", "_kindId", "_rankId", "_rarityId", "_primaryBonus", "_secondaryBonuses", "_setKindId", "_requiredFraction", "_isSeen", "_failedUpgrades", "ReadOnly", "_groupKey"];
        public get _id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get _revision(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get _sellPrice(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get _price(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public get _level(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get _isActivated(): boolean {
            return this.readTypePrimitive(52, "bool", 1);
        }
        public get _kindId(): number {
            return this.readTypePrimitive(56, "int", 1);
        }
        public get _rankId(): number {
            return this.readTypePrimitive(60, "int", 1);
        }
        public get _rarityId(): number {
            return this.readTypePrimitive(64, "int", 1);
        }
        public get _primaryBonus(): codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactBonus {
            return this.readField(72, codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactBonus, 2);
        }
        public get _secondaryBonuses(): System.Collections.Generic.List<codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactBonus> {
            return this.readField(80, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactBonus);
        }
        public get _setKindId(): number {
            return this.readTypePrimitive(88, "int", 1);
        }
        public get _requiredFraction(): number {
            return this.readTypePrimitive(92, "int", 1);
        }
        public get _isSeen(): boolean {
            return this.readTypePrimitive(96, "bool", 1);
        }
        public get _failedUpgrades(): number {
            return this.readTypePrimitive(100, "int", 1);
        }
        public get ReadOnly(): boolean {
            return this.readTypePrimitive(104, "bool", 1);
        }
        public get _groupKey(): codegen.SharedModel.Meta.Artifacts.Grouping.ArtifactGroupKey {
            return this.readField(112, codegen.SharedModel.Meta.Artifacts.Grouping.ArtifactGroupKey, 2);
        }
        public static staticMethods = {
            "<SetIsActivated>b__105_0": () => new il2js.MethodInfo(56587608),
            "<SetId>b__102_0": () => new il2js.MethodInfo(56477464),
            "<SetRevision>b__103_0": () => new il2js.MethodInfo(56477600),
            "<SetUpgradeTime>b__104_0": () => new il2js.MethodInfo(56540616),
            "AssertReadOnly": () => new il2js.MethodInfo(56694360)
        };
    }
}
export namespace codegen.SharedModel.Meta.Artifacts.Bonuses {
    export class ArtifactBonus extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactBonus";
        static get size() { return 44 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57005760;
        public static fieldNames: string[] = ["_kindId", "_value", "_powerUpValue", "_level", "ReadOnly"];
        public get _kindId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get _value(): codegen.SharedModel.Meta.Artifacts.BonusValue {
            return this.readField(24, codegen.SharedModel.Meta.Artifacts.BonusValue, 2);
        }
        public get _powerUpValue(): number {
            return this.readField(32, FixedNumber, 1);
        }
        public get _level(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get ReadOnly(): boolean {
            return this.readTypePrimitive(44, "bool", 1);
        }
        public static staticMethods = {
            "AssertReadOnly": () => new il2js.MethodInfo(56695064)
        };
    }
}
export namespace codegen.SharedModel.Meta.Artifacts {
    export class BonusValue extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.BonusValue";
        static get size() { return 32 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57010120;
        public static fieldNames: string[] = ["_isAbsolute", "_value", "ReadOnly"];
        public get _isAbsolute(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get _value(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public get ReadOnly(): boolean {
            return this.readTypePrimitive(32, "bool", 1);
        }
        public static staticMethods = {
            "AssertReadOnly": () => new il2js.MethodInfo(56694920)
        };
    }
}
export namespace codegen.SharedModel.Meta.Artifacts.Grouping {
    export class ArtifactGroupKey extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.Grouping.ArtifactGroupKey";
        static get size() { return 64 + 8; }
        public static address = 57005192;
        public static fieldNames: string[] = ["_price", "_sellPrice", "_level", "_isActivated", "_kindId", "_rankId", "_setKindId", "_isSeen", "_requiredFraction", "_primaryBonus", "_secondaryBonuses"];
        public get _price(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get _sellPrice(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get _level(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get _isActivated(): boolean {
            return this.readTypePrimitive(28, "bool", 1);
        }
        public get _kindId(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get _rankId(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public get _setKindId(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get _isSeen(): boolean {
            return this.readTypePrimitive(44, "bool", 1);
        }
        public get _requiredFraction(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get _primaryBonus(): codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactBonus {
            return this.readField(56, codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactBonus, 2);
        }
        public get _secondaryBonuses(): System.Collections.Generic.List<codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactBonus> {
            return this.readField(64, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactBonus);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BlackMarket {
    export class UserEffectInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BlackMarket.UserEffectInfo";
        static get size() { return 64 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57020752;
        public static fieldNames: string[] = ["TypeId", "Source", "Power", "Stacked"];
        public get TypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Source(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Power(): number {
            return this.readTypePrimitive(56, "double", 1);
        }
        public get Stacked(): boolean {
            return this.readTypePrimitive(64, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Artifacts.SharedModel.Meta.Users {
    export class ArtifactDropSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.SharedModel.Meta.Users.ArtifactDropSettings";
        static get size() { return 88 + 8; }
        public static address = 57011680;
        public static fieldNames: string[] = ["Count", "Level", "Probability", "ProbsByKind", "ProbsByRank", "ProbsByRarity", "Sets", "Fractions", "_kindProbs", "_rankProbs", "_rarityProbs"];
        public get Count(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Level(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Probability(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public get ProbsByKind(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get ProbsByRank(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get ProbsByRarity(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get Sets(): System.Collections.Generic.List<number> {
            return this.readField(56, System.Collections.Generic.List, 2, "int");
        }
        public get Fractions(): System.Collections.Generic.List<number> {
            return this.readField(64, System.Collections.Generic.List, 2, "int");
        }
        public get _kindProbs(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get _rankProbs(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(80, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get _rarityProbs(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(88, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Artifacts {
    export class SetOfArtifacts extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.SetOfArtifacts";
        static get size() { return 16 + 8; }
        public static address = 57099080;
        public static fieldNames: string[] = ["Artifacts"];
        public get Artifacts(): System.Collections.Generic.List<codegen.SharedModel.Meta.Artifacts.Artifact> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Artifacts.Artifact);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class FlexibleReward extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.FlexibleReward";
        static get size() { return 160 + 8; }
        public static address = 57084376;
        public static fieldNames: string[] = ["Rewards", "CompareArtifactsByItsProperties", "Count", "ArtifactProbsByKindId", "ArtifactProbsByRankId", "ArtifactProbsByRarityId", "ArtifactProbsBySetKindId", "AccessoryProbsByKindId", "AccessoryProbsByRankId", "AccessoryProbsByRarityId", "AccessoryProbsByHeroFraction", "_rewardProbsByIndex", "_artifactKindIdProbs", "_artifactRankIdProbs", "_artifactRarityIdProbs", "_artifactSetKindIdProbs", "_accessoryKindIdProbs", "_accessoryRankIdProbs", "_accessoryRarityIdProbs", "_accessoryHeroFractionProbs"];
        public get Rewards(): System.Collections.Generic.List<codegen.SharedModel.Meta.Stages.FlexibleRewardInfo> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Stages.FlexibleRewardInfo);
        }
        public get CompareArtifactsByItsProperties(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public get Count(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get ArtifactProbsByKindId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get ArtifactProbsByRankId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get ArtifactProbsByRarityId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get ArtifactProbsBySetKindId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(56, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get AccessoryProbsByKindId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get AccessoryProbsByRankId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get AccessoryProbsByRarityId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(80, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get AccessoryProbsByHeroFraction(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(88, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get _rewardProbsByIndex(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(96, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get _artifactKindIdProbs(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(104, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get _artifactRankIdProbs(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(112, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get _artifactRarityIdProbs(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(120, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get _artifactSetKindIdProbs(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(128, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get _accessoryKindIdProbs(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(136, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get _accessoryRankIdProbs(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(144, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get _accessoryRarityIdProbs(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(152, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get _accessoryHeroFractionProbs(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(160, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class StageStartCondition extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.StageStartCondition";
        static get size() { return 40 + 8; }
        public static address = 57088272;
        public static fieldNames: string[] = ["FirstPassPrice", "Price", "HeroConditions", "AutoBattlePrice"];
        public get FirstPassPrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(16, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get Price(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(24, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get HeroConditions(): System.Collections.Generic.List<codegen.SharedModel.Meta.Stages.StageHeroCondition> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Stages.StageHeroCondition);
        }
        public get AutoBattlePrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(40, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class StageHeroCondition extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.StageHeroCondition";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57086608;
        public static fieldNames: string[] = ["MaxCount", "MinCount"];
        public get MaxCount(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get MinCount(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {
            "Satisfies": () => new il2js.MethodInfo(56909776),
            "Satisfies_1": () => new il2js.MethodInfo(56909792)
        };
    }
}
export namespace codegen.SharedModel.Meta.Battle.DoomTower.Data {
    export class DoomTowerSecretChamberData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.DoomTower.Data.DoomTowerSecretChamberData";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57020112;
        public static fieldNames: string[] = ["OpenStageId"];
        public get OpenStageId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class Area extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.Area";
        static get size() { return 48 + 8; }
        public static address = 57082960;
        public static fieldNames: string[] = ["Id", "Name", "Condition", "Regions", "RegionsById"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Name(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(24, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get Condition(): codegen.SharedModel.Meta.Stages.AreaOpenCondition {
            return this.readField(32, codegen.SharedModel.Meta.Stages.AreaOpenCondition, 2);
        }
        public get Regions(): System.Collections.Generic.List<codegen.SharedModel.Meta.Stages.Region> {
            return this.readField(40, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Stages.Region);
        }
        public get RegionsById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Stages.Region> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Stages.Region);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class AreaOpenCondition extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.AreaOpenCondition";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57083024;
        public static fieldNames: string[] = ["UserLevelRequired"];
        public get UserLevelRequired(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class Region extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.Region";
        static get size() { return 48 + 8; }
        public static address = 57085416;
        public static fieldNames: string[] = ["Id", "Name", "Condition", "StageIdsByDifficulty", "StagesByDifficulty"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Name(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(24, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get Condition(): codegen.SharedModel.Meta.Stages.RegionOpenCondition {
            return this.readField(32, codegen.SharedModel.Meta.Stages.RegionOpenCondition, 2);
        }
        public get StageIdsByDifficulty(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<number>> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, "int"));
        }
        public get StagesByDifficulty(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Meta.Stages.Stage>> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.Stages.Stage));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class RegionOpenCondition extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.RegionOpenCondition";
        static get size() { return 28 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57085560;
        public static fieldNames: string[] = ["OpenDays", "OpenHoursCount", "UserLevelRequired"];
        public get OpenDays(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public get OpenHoursCount(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get UserLevelRequired(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.State {
    export class BattleState extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.State.BattleState";
        static get size() { return 112 + 8; }
        public static address = 56922712;
        public static fieldNames: string[] = ["Random", "_lastHeroId", "_lastApplyEffectId", "FirstTeam", "SecondTeam", "ActiveHero", "CurrentRound", "CurrentTurn", "BattleFinished", "GiveUp", "_skillsQueue", "PriorityTurnHeroes", "AllTicks", "TurnTicks", "ProhibitPhaseEffects", "RecursionOccured", "IsAutoBattleMode", "ValidationInProgress", "_lastProcessorResultId", "_allHeroesCache"];
        public get Random(): codegen.SharedModel.Common.Math.FixedRandom {
            return this.readField(16, codegen.SharedModel.Common.Math.FixedRandom, 2);
        }
        public get _lastHeroId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get _lastApplyEffectId(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get FirstTeam(): codegen.SharedModel.Battle.Core.Hero.BattleTeam {
            return this.readField(32, codegen.SharedModel.Battle.Core.Hero.BattleTeam, 2);
        }
        public get SecondTeam(): codegen.SharedModel.Battle.Core.Hero.BattleTeam {
            return this.readField(40, codegen.SharedModel.Battle.Core.Hero.BattleTeam, 2);
        }
        public get ActiveHero(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(48, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public get CurrentRound(): number {
            return this.readTypePrimitive(56, "int", 1);
        }
        public get CurrentTurn(): number {
            return this.readTypePrimitive(60, "int", 1);
        }
        public get BattleFinished(): boolean {
            return this.readTypePrimitive(64, "bool", 1);
        }
        public get GiveUp(): boolean {
            return this.readTypePrimitive(65, "bool", 1);
        }
        public get _skillsQueue(): System.Collections.Generic.Queue<codegen.SharedModel.Battle.Core.Commands.SkillCommand> {
            return this.readField(72, System.Collections.Generic.Queue, 2, codegen.SharedModel.Battle.Core.Commands.SkillCommand);
        }
        public get PriorityTurnHeroes(): System.Collections.Generic.Queue<number> {
            return this.readField(80, System.Collections.Generic.Queue, 2, "int");
        }
        public get AllTicks(): number {
            return this.readTypePrimitive(88, "int", 1);
        }
        public get TurnTicks(): number {
            return this.readTypePrimitive(92, "int", 1);
        }
        public get ProhibitPhaseEffects(): boolean {
            return this.readTypePrimitive(104, "bool", 1);
        }
        public get RecursionOccured(): boolean {
            return this.readTypePrimitive(105, "bool", 1);
        }
        public get IsAutoBattleMode(): boolean {
            return this.readTypePrimitive(106, "bool", 1);
        }
        public get ValidationInProgress(): boolean {
            return this.readTypePrimitive(107, "bool", 1);
        }
        public get _lastProcessorResultId(): number {
            return this.readTypePrimitive(108, "int", 1);
        }
        public get _allHeroesCache(): System.Internal.ManagedArray<codegen.SharedModel.Battle.Core.Hero.BattleHero> {
            return this.readField(112, System.Internal.ManagedArray, 2, codegen.SharedModel.Battle.Core.Hero.BattleHero);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Common.Math {
    export class FixedRandom extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Common.Math.FixedRandom";
        static get size() { return 28 + il2js.NativeStruct.sizeof("uint"); }
        public static address = 56962200;
        public static fieldNames: string[] = ["_x", "_y", "_z", "_w"];
        public get _x(): number {
            return this.readTypePrimitive(16, "uint", 1);
        }
        public get _y(): number {
            return this.readTypePrimitive(20, "uint", 1);
        }
        public get _z(): number {
            return this.readTypePrimitive(24, "uint", 1);
        }
        public get _w(): number {
            return this.readTypePrimitive(28, "uint", 1);
        }
        public static staticMethods = {
            "Next": () => new il2js.MethodInfo(56478840),
            "Next_1": () => new il2js.MethodInfo(57008328),
            "Next_2": () => new il2js.MethodInfo(57008416)
        };
    }
}
export namespace codegen.SharedModel.Battle.Core.Hero {
    export class BattleTeam extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Hero.BattleTeam";
        static get size() { return 24 + 8; }
        public static address = 56924656;
        public static fieldNames: string[] = ["TeamOwnerId", "Heroes"];
        public get TeamOwnerId(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get Heroes(): System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Hero.BattleHero> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Core.Hero.BattleHero);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Commands {
    export class SkillCommand extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Commands.SkillCommand";
        static get size() { return 56 + 8; }
        public static address = 56929072;
        public static fieldNames: string[] = ["SkillTypeId", "Producer", "Target", "SkillModifiers", "SetOnCooldown", "Source"];
        public get SkillTypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Producer(): codegen.SharedModel.Battle.Core.BattleTarget {
            return this.readField(24, codegen.SharedModel.Battle.Core.BattleTarget, 2);
        }
        public get Target(): codegen.SharedModel.Battle.Core.BattleTarget {
            return this.readField(32, codegen.SharedModel.Battle.Core.BattleTarget, 2);
        }
        public get SkillModifiers(): codegen.SharedModel.Battle.Core.Skill.SkillModifiers {
            return this.readField(40, codegen.SharedModel.Battle.Core.Skill.SkillModifiers, 2);
        }
        public get SetOnCooldown(): boolean {
            return this.readTypePrimitive(48, "bool", 1);
        }
        public get Source(): codegen.SharedModel.Battle.Core.Commands.SkillCommandSource {
            return this.readField(56, codegen.SharedModel.Battle.Core.Commands.SkillCommandSource, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core {
    export class BattleTarget extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.BattleTarget";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56928944;
        public static fieldNames: string[] = ["PlayerId", "HeroId"];
        public get PlayerId(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get HeroId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Commands {
    export class SkillCommandSource extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Commands.SkillCommandSource";
        static get size() { return 24 + 8; }
        public static address = 56929152;
        public static fieldNames: string[] = ["Type", "Effect"];
        public get Type(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Effect(): codegen.SharedModel.Battle.Core.Skill.EffectDescription {
            return this.readField(24, codegen.SharedModel.Battle.Core.Skill.EffectDescription, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core {
    export class BattleStatistics extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.BattleStatistics";
        static get size() { return 32 + 8; }
        public static address = 56923152;
        public static fieldNames: string[] = ["StatisticsByHero", "AutoModeStatistics", "StatisticsPerRound"];
        public get StatisticsByHero(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Battle.Core.Hero.Statistics.HeroStatistics> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Battle.Core.Hero.Statistics.HeroStatistics);
        }
        public get AutoModeStatistics(): codegen.SharedModel.Battle.Core.AutoModeStatistics {
            return this.readField(24, codegen.SharedModel.Battle.Core.AutoModeStatistics, 2);
        }
        public get StatisticsPerRound(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Battle.Core.RoundStatistics> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Battle.Core.RoundStatistics);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Hero.Statistics {
    export class HeroStatistics extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Hero.Statistics.HeroStatistics";
        static get size() { return 88 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56927992;
        public static fieldNames: string[] = ["TeamOwnerId", "Id", "InventoryHeroId", "Slot", "TypeId", "Grade", "Level", "Stats", "Skills", "IsDead", "_statsPerRound", "_heroType", "IsSummoned"];
        public get TeamOwnerId(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get Id(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get InventoryHeroId(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get Slot(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get TypeId(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public get Grade(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get Level(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public get Stats(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(48, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get Skills(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(56, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get IsDead(): boolean {
            return this.readTypePrimitive(64, "bool", 1);
        }
        public get _statsPerRound(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Battle.Core.Hero.Statistics.HeroBattleStatistics> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Battle.Core.Hero.Statistics.HeroBattleStatistics);
        }
        public get _heroType(): codegen.SharedModel.Meta.Heroes.HeroType {
            return this.readField(80, codegen.SharedModel.Meta.Heroes.HeroType, 2);
        }
        public get IsSummoned(): boolean {
            return this.readTypePrimitive(88, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Hero.Statistics {
    export class HeroBattleStatistics extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Hero.Statistics.HeroBattleStatistics";
        static get size() { return 48 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56451176;
        public static fieldNames: string[] = ["_statisticsByTurn", "_skillInfoUsedByTurn", "_deaths", "HpOnStart", "HpOnFinish"];
        public get _statisticsByTurn(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Hero.Statistics.TurnStatistics>> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Battle.Core.Hero.Statistics.TurnStatistics));
        }
        public get _skillInfoUsedByTurn(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Hero.Statistics.SkillUsageInfo>> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Battle.Core.Hero.Statistics.SkillUsageInfo));
        }
        public get _deaths(): System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Hero.Statistics.HeroDeathStatistics> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Core.Hero.Statistics.HeroDeathStatistics);
        }
        public get HpOnStart(): number {
            return this.readField(40, FixedNumber, 1);
        }
        public get HpOnFinish(): number {
            return this.readField(48, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Hero.Statistics {
    export class TurnStatistics extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Hero.Statistics.TurnStatistics";
        static get size() { return 228 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56938616;
        public static fieldNames: string[] = ["ActiveHeroId", "ProducerId", "OwnerId", "TargetId", "SkillId", "EffectId", "EffectGuid", "EmptyEffectResult"];
        public get ActiveHeroId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ProducerId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get OwnerId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get TargetId(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get SkillId(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get EffectId(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public get EffectGuid(): System.Guid {
            return this.readField(212, System.Guid, 2);
        }
        public get EmptyEffectResult(): boolean {
            return this.readTypePrimitive(228, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Hero.Statistics {
    export class SkillUsageInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Hero.Statistics.SkillUsageInfo";
        static get size() { return 24 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56937400;
        public static fieldNames: string[] = ["SkillTypeId", "TargetId", "IsCounterattack"];
        public get SkillTypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get TargetId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get IsCounterattack(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Hero.Statistics {
    export class HeroDeathStatistics extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Hero.Statistics.HeroDeathStatistics";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56937656;
        public static fieldNames: string[] = ["AppliedEffectTypeIds", "KilledEnemiesCount"];
        public get AppliedEffectTypeIds(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public get KilledEnemiesCount(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core {
    export class AutoModeStatistics extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.AutoModeStatistics";
        static get size() { return 17 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56921736;
        public static fieldNames: string[] = ["EnabledOnStart", "EnabledOnFinish"];
        public get EnabledOnStart(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get EnabledOnFinish(): boolean {
            return this.readTypePrimitive(17, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core {
    export class RoundStatistics extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.RoundStatistics";
        static get size() { return 16 + 8; }
        public static address = 56942864;
        public static fieldNames: string[] = ["AutoMode"];
        public get AutoMode(): codegen.SharedModel.Battle.Core.AutoModeStatistics {
            return this.readField(16, codegen.SharedModel.Battle.Core.AutoModeStatistics, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.AI.TurnActionGeneration {
    export class DecisionMaker extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.AI.TurnActionGeneration.DecisionMaker";
        static get size() { return 0; }
        public static address = 56903752;
        public static fieldNames: string[] = [];
        public static staticMethods = {
            ".cctor": () => new il2js.MethodInfo(56680928)
        };
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill {
    export class SkillContext extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.SkillContext";
        static get size() { return 56 + 8; }
        public static address = 56923824;
        public static fieldNames: string[] = ["Producer", "Target", "Skill", "SourceEffect", "SkipEffectiveProcessing", "Results"];
        public get Producer(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(16, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public get Target(): codegen.SharedModel.Battle.Core.Hero.BattleHero {
            return this.readField(24, codegen.SharedModel.Battle.Core.Hero.BattleHero, 2);
        }
        public get Skill(): codegen.SharedModel.Battle.Core.Skill.BattleSkill {
            return this.readField(32, codegen.SharedModel.Battle.Core.Skill.BattleSkill, 2);
        }
        public get SourceEffect(): codegen.SharedModel.Battle.Core.Skill.EffectDescription {
            return this.readField(40, codegen.SharedModel.Battle.Core.Skill.EffectDescription, 2);
        }
        public get SkipEffectiveProcessing(): boolean {
            return this.readTypePrimitive(48, "bool", 1);
        }
        public get Results(): System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Result.ActionResult> {
            return this.readField(56, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Core.Result.ActionResult);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill.EffectContexts {
    export class ProcessContext extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.EffectContexts.ProcessContext";
        static get size() { return 0; }
        public static address = 56946664;
        public static fieldNames: string[] = [];
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill.EffectContexts {
    export class ApplyContext extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.EffectContexts.ApplyContext";
        static get size() { return 56 + 8; }
        public static address = 56946816;
        public static fieldNames: string[] = ["ApplyModeOverrided", "Accuracy", "ApplyFailReason", "StatusEffectContext", "EffectThatApplying"];
        public get ApplyModeOverrided(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public get Accuracy(): number {
            return this.readField(32, FixedNumber, 1);
        }
        public get ApplyFailReason(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public get StatusEffectContext(): codegen.SharedModel.Battle.Core.Skill.EffectContexts.StatusEffectApplyingContext {
            return this.readField(48, codegen.SharedModel.Battle.Core.Skill.EffectContexts.StatusEffectApplyingContext, 2);
        }
        public get EffectThatApplying(): codegen.SharedModel.Battle.Core.Skill.EffectContexts.EffectContext {
            return this.readField(56, codegen.SharedModel.Battle.Core.Skill.EffectContexts.EffectContext, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill.EffectContexts {
    export class StatusEffectApplyingContext extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.EffectContexts.StatusEffectApplyingContext";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56955320;
        public static fieldNames: string[] = ["StatusEffectTypeIdToApply"];
        public get StatusEffectTypeIdToApply(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill.EffectContexts {
    export class DamageContext extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.EffectContexts.DamageContext";
        static get size() { return 104 + 8; }
        public static address = 56956952;
        public static fieldNames: string[] = ["GlancingHitChance", "CrushingHitChance", "CriticalHitChance", "_defenceModifier", "_multiplierValue", "IsBlocked", "CalculatedDamage", "DealtDamage"];
        public get GlancingHitChance(): number {
            return this.readField(32, FixedNumber, 1);
        }
        public get CrushingHitChance(): number {
            return this.readField(40, FixedNumber, 1);
        }
        public get CriticalHitChance(): number {
            return this.readField(48, FixedNumber, 1);
        }
        public get _defenceModifier(): number {
            return this.readField(72, FixedNumber, 1);
        }
        public get _multiplierValue(): number {
            return this.readField(80, FixedNumber, 1);
        }
        public get IsBlocked(): boolean {
            return this.readTypePrimitive(88, "bool", 1);
        }
        public get CalculatedDamage(): codegen.SharedModel.Battle.Core.Result.DamageResult {
            return this.readField(96, codegen.SharedModel.Battle.Core.Result.DamageResult, 2);
        }
        public get DealtDamage(): codegen.SharedModel.Battle.Core.Result.DamageResult {
            return this.readField(104, codegen.SharedModel.Battle.Core.Result.DamageResult, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill.EffectContexts {
    export class HealContext extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.EffectContexts.HealContext";
        static get size() { return 40 + 8; }
        public static address = 56957488;
        public static fieldNames: string[] = ["BaseMultiplier", "CurrentMultiplier", "CalculatedHeal", "DealtHeal"];
        public get BaseMultiplier(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public get CurrentMultiplier(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public get CalculatedHeal(): codegen.SharedModel.Battle.Core.Result.HealResult {
            return this.readField(32, codegen.SharedModel.Battle.Core.Result.HealResult, 2);
        }
        public get DealtHeal(): codegen.SharedModel.Battle.Core.Result.HealResult {
            return this.readField(40, codegen.SharedModel.Battle.Core.Result.HealResult, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill.EffectContexts {
    export class EvenHealthContext extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.EffectContexts.EvenHealthContext";
        static get size() { return 16 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56946936;
        public static fieldNames: string[] = ["UpToHealthLevel"];
        public get UpToHealthLevel(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill.EffectContexts {
    export class UnapplyEffectContext extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.EffectContexts.UnapplyEffectContext";
        static get size() { return 24 + 8; }
        public static address = 56933408;
        public static fieldNames: string[] = ["Cause", "Source", "EffectCausedUnapply"];
        public get Cause(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Source(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get EffectCausedUnapply(): codegen.SharedModel.Battle.Core.Skill.EffectContexts.EffectContext {
            return this.readField(24, codegen.SharedModel.Battle.Core.Skill.EffectContexts.EffectContext, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill.EffectContexts {
    export class DestroyHpContext extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.EffectContexts.DestroyHpContext";
        static get size() { return 32 + 8; }
        public static address = 56957112;
        public static fieldNames: string[] = ["BaseValue", "CurrentValue", "CrabShellContext"];
        public get BaseValue(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public get CurrentValue(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public get CrabShellContext(): codegen.SharedModel.Battle.Core.Skill.EffectContexts.CrabShellContext {
            return this.readField(32, codegen.SharedModel.Battle.Core.Skill.EffectContexts.CrabShellContext, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill.EffectContexts {
    export class CrabShellContext extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.EffectContexts.CrabShellContext";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56956632;
        public static fieldNames: string[] = ["LayerBeforeDestroyHp"];
        public get LayerBeforeDestroyHp(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill.EffectContexts {
    export class IgnoredEffectsContext extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.EffectContexts.IgnoredEffectsContext";
        static get size() { return 24 + 8; }
        public static address = 56947216;
        public static fieldNames: string[] = ["BaseEffects", "AdditionalEffects"];
        public get BaseEffects(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public get AdditionalEffects(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Core.Skill.EffectContexts {
    export class ChangeStaminaContext extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Core.Skill.EffectContexts.ChangeStaminaContext";
        static get size() { return 24 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56956336;
        public static fieldNames: string[] = ["BaseMultiplier", "CurrentMultiplier"];
        public get BaseMultiplier(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public get CurrentMultiplier(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Effects {
    export class EffectRelation extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectRelation";
        static get size() { return 36 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56968408;
        public static fieldNames: string[] = ["EffectKindIds", "Phase", "ActivateOnGlancingHit"];
        public get EffectKindIds(): System.Internal.ManagedArray<number> {
            return this.readField(24, System.Internal.ManagedArray, 2, "int");
        }
        public get Phase(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get ActivateOnGlancingHit(): boolean {
            return this.readTypePrimitive(36, "bool", 1);
        }
        public static staticMethods = {
            "<Validate>b__5_0": () => new il2js.MethodInfo(56825760),
            "Validate": () => new il2js.MethodInfo(56684872)
        };
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams.StatusEffectParams {
    export class StatusEffectParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.StatusEffectParams.StatusEffectParams";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56968064;
        public static fieldNames: string[] = ["StrengthInFamily", "ForcedTickAllowed", "LifetimeUpdateType"];
        public get StrengthInFamily(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ForcedTickAllowed(): boolean {
            return this.readTypePrimitive(20, "bool", 1);
        }
        public get LifetimeUpdateType(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class ApplyStatusEffectParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.ApplyStatusEffectParams";
        static get size() { return 16 + 8; }
        public static address = 56926288;
        public static fieldNames: string[] = ["StatusEffectInfos"];
        public get StatusEffectInfos(): System.Collections.Generic.List<codegen.SharedModel.Battle.Effects.EffectParams.StatusEffectInfo> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Effects.EffectParams.StatusEffectInfo);
        }
        public static staticMethods = {
            "Validate": () => new il2js.MethodInfo(56683664)
        };
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class UnapplyStatusEffectParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.UnapplyStatusEffectParams";
        static get size() { return 56 + 8; }
        public static address = 56924568;
        public static fieldNames: string[] = ["Count", "StatusEffectTypeIds", "UnapplyMode", "_allExceptSelected"];
        public get Count(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get StatusEffectTypeIds(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public get UnapplyMode(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get _allExceptSelected(): System.Collections.Generic.List<number> {
            return this.readField(56, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {
            "Validate": () => new il2js.MethodInfo(56684728)
        };
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class DamageParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.DamageParams";
        static get size() { return 41 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56966656;
        public static fieldNames: string[] = ["DefenceModifier", "IsFixed", "DoesNotCountAsHit"];
        public get DefenceModifier(): number {
            return this.readField(32, FixedNumber, 1);
        }
        public get IsFixed(): boolean {
            return this.readTypePrimitive(40, "bool", 1);
        }
        public get DoesNotCountAsHit(): boolean {
            return this.readTypePrimitive(41, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class HealParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.HealParams";
        static get size() { return 16 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56967240;
        public static fieldNames: string[] = ["CanBeCritical"];
        public get CanBeCritical(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class EvenParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.EvenParams";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56967088;
        public static fieldNames: string[] = ["EvenMode"];
        public get EvenMode(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class ChangeStatParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.ChangeStatParams";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56966256;
        public static fieldNames: string[] = ["Param"];
        public get Param(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams.ActivateSkillParams {
    export class ActivateSkillParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.ActivateSkillParams.ActivateSkillParams";
        static get size() { return 24 + 8; }
        public static address = 56965408;
        public static fieldNames: string[] = ["SkillIndex", "SkillOwner", "TargetExpression"];
        public get SkillIndex(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get SkillOwner(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get TargetExpression(): string {
            return this.readField(24, System.String, 2);
        }
        public static staticMethods = {
            "Validate": () => new il2js.MethodInfo(56683608)
        };
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class ShowHiddenSkillParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.ShowHiddenSkillParams";
        static get size() { return 20 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56968032;
        public static fieldNames: string[] = ["SkillTypeId", "ShouldHide"];
        public get SkillTypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ShouldHide(): boolean {
            return this.readTypePrimitive(20, "bool", 1);
        }
        public static staticMethods = {
            "Validate": () => new il2js.MethodInfo(56684456)
        };
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class ChangeSkillCooldownParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.ChangeSkillCooldownParams";
        static get size() { return 32 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56966152;
        public static fieldNames: string[] = ["Turns", "SkillToChange"];
        public get Turns(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get SkillToChange(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class ChangeEffectLifetimeParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.ChangeEffectLifetimeParams";
        static get size() { return 32 + 8; }
        public static address = 56965920;
        public static fieldNames: string[] = ["Type", "Turns", "Count", "EffectTypeIds"];
        public get Type(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Turns(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Count(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get EffectTypeIds(): System.Internal.ManagedArray<number> {
            return this.readField(32, System.Internal.ManagedArray, 2, "int");
        }
        public static staticMethods = {
            "Validate": () => new il2js.MethodInfo(56683784)
        };
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class ShareDamageParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.ShareDamageParams";
        static get size() { return 24 + il2js.NativeStruct.sizeof(FixedNumber); }
        public static address = 56967936;
        public static fieldNames: string[] = ["TargetDamageCutPerc", "TransferedDamagePerc"];
        public get TargetDamageCutPerc(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public get TransferedDamagePerc(): number {
            return this.readField(24, FixedNumber, 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class BlockEffectParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.BlockEffectParams";
        static get size() { return 24 + 8; }
        public static address = 56965784;
        public static fieldNames: string[] = ["EffectTypeIds", "EffectKindIds"];
        public get EffectTypeIds(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public get EffectKindIds(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class SummonParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.SummonParams";
        static get size() { return 76 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56968200;
        public static fieldNames: string[] = ["BaseTypeId", "AscendLevelFormula", "GradeFormula", "LevelFormula", "RemoveAfterDeath", "SlotsLimit"];
        public get BaseTypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get AscendLevelFormula(): string {
            return this.readField(24, System.String, 2);
        }
        public get GradeFormula(): string {
            return this.readField(40, System.String, 2);
        }
        public get LevelFormula(): string {
            return this.readField(56, System.String, 2);
        }
        public get RemoveAfterDeath(): boolean {
            return this.readTypePrimitive(72, "bool", 1);
        }
        public get SlotsLimit(): number {
            return this.readTypePrimitive(76, "int", 1);
        }
        public static staticMethods = {
            "Validate": () => new il2js.MethodInfo(56684520)
        };
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class TeamAttackParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.TeamAttackParams";
        static get size() { return 40 + 8; }
        public static address = 56968264;
        public static fieldNames: string[] = ["TeammatesCount", "ExcludeProducerFromAttack", "PreferredHeroTypes", "AllySelectorExpression"];
        public get TeammatesCount(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ExcludeProducerFromAttack(): boolean {
            return this.readTypePrimitive(20, "bool", 1);
        }
        public get PreferredHeroTypes(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public get AllySelectorExpression(): string {
            return this.readField(40, System.String, 2);
        }
        public static staticMethods = {
            "Validate": () => new il2js.MethodInfo(56684648)
        };
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class DestroyHpParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.DestroyHpParams";
        static get size() { return 16 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56966736;
        public static fieldNames: string[] = ["IgnoreShield"];
        public get IgnoreShield(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class ReviveParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.ReviveParams";
        static get size() { return 24 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56967840;
        public static fieldNames: string[] = ["HealPercent", "IgnoreBlockRevive"];
        public get HealPercent(): number {
            return this.readField(16, FixedNumber, 1);
        }
        public get IgnoreBlockRevive(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class CounterattackParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.CounterattackParams";
        static get size() { return 20 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56966360;
        public static fieldNames: string[] = ["SkillIndex", "NoPenalty"];
        public get SkillIndex(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get NoPenalty(): boolean {
            return this.readTypePrimitive(20, "bool", 1);
        }
        public static staticMethods = {
            "Validate": () => new il2js.MethodInfo(56684120)
        };
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class ForceStatusEffectTickParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.ForceStatusEffectTickParams";
        static get size() { return 24 + 8; }
        public static address = 56967192;
        public static fieldNames: string[] = ["Ticks", "EffectTypeIds"];
        public get Ticks(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get EffectTypeIds(): System.Internal.ManagedArray<number> {
            return this.readField(24, System.Internal.ManagedArray, 2, "int");
        }
        public static staticMethods = {
            "Validate": () => new il2js.MethodInfo(56684256)
        };
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams.CrabShellParams {
    export class CrabShellParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.CrabShellParams.CrabShellParams";
        static get size() { return 16 + 8; }
        public static address = 56966608;
        public static fieldNames: string[] = ["Layers"];
        public get Layers(): System.Collections.Generic.List<codegen.SharedModel.Battle.Effects.EffectParams.CrabShellParams.CrabShellLayer> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Effects.EffectParams.CrabShellParams.CrabShellLayer);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams.CrabShellParams {
    export class CrabShellLayer extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.CrabShellParams.CrabShellLayer";
        static get size() { return 32 + 8; }
        public static address = 56966480;
        public static fieldNames: string[] = ["Type", "MultiplierFormula", "ConditionFormula"];
        public get Type(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get MultiplierFormula(): string {
            return this.readField(24, System.String, 2);
        }
        public get ConditionFormula(): string {
            return this.readField(32, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class ReturnDebuffsParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.ReturnDebuffsParams";
        static get size() { return 0; }
        public static address = 56967712;
        public static fieldNames: string[] = [];
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class HitTypeParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.HitTypeParams";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56967368;
        public static fieldNames: string[] = ["HitType"];
        public get HitType(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class PassiveBonusParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.PassiveBonusParams";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56967608;
        public static fieldNames: string[] = ["Bonus"];
        public get Bonus(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class MultiplyStatusEffectParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.MultiplyStatusEffectParams";
        static get size() { return 24 + 8; }
        public static address = 56967520;
        public static fieldNames: string[] = ["Count", "TurnsModifier", "EffectKindIds"];
        public get Count(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get TurnsModifier(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get EffectKindIds(): System.Internal.ManagedArray<number> {
            return this.readField(24, System.Internal.ManagedArray, 2, "int");
        }
        public static staticMethods = {
            "Validate": () => new il2js.MethodInfo(56684392)
        };
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class IgnoreProtectionEffectsParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.IgnoreProtectionEffectsParams";
        static get size() { return 18 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56967440;
        public static fieldNames: string[] = ["IgnoreBlockDamage", "IgnoreShield", "IgnoreUnkillable"];
        public get IgnoreBlockDamage(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get IgnoreShield(): boolean {
            return this.readTypePrimitive(17, "bool", 1);
        }
        public get IgnoreUnkillable(): boolean {
            return this.readTypePrimitive(18, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class ChangeEffectTargetParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.ChangeEffectTargetParams";
        static get size() { return 16 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56965976;
        public static fieldNames: string[] = ["OverrideApplyMode"];
        public get OverrideApplyMode(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public static staticMethods = {
            "Validate": () => new il2js.MethodInfo(56683920)
        };
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class ChangeImmunityParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.ChangeImmunityParams";
        static get size() { return 16 + 8; }
        public static address = 56966088;
        public static fieldNames: string[] = ["EffectKindIds"];
        public get EffectKindIds(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {
            "Validate": () => new il2js.MethodInfo(56683960)
        };
    }
}
export namespace codegen.SharedModel.Battle.Effects.EffectParams {
    export class EffectContainerParams extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.EffectParams.EffectContainerParams";
        static get size() { return 16 + 8; }
        public static address = 56966936;
        public static fieldNames: string[] = ["Effect"];
        public get Effect(): codegen.SharedModel.Battle.Effects.EffectType {
            return this.readField(16, codegen.SharedModel.Battle.Effects.EffectType, 2);
        }
        public static staticMethods = {
            "Validate": () => new il2js.MethodInfo(56684192)
        };
    }
}
export namespace codegen.SharedModel.Battle.Effects {
    export class StaticEffectData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Effects.StaticEffectData";
        static get size() { return 32 + 8; }
        public static address = 57101272;
        public static fieldNames: string[] = ["DisabledEffects", "EffectTypes", "_effectTypeById"];
        public get DisabledEffects(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public get EffectTypes(): System.Collections.Generic.List<codegen.SharedModel.Battle.Effects.EffectType> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Effects.EffectType);
        }
        public get _effectTypeById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Battle.Effects.EffectType> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Battle.Effects.EffectType);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Artifacts {
    export class StaticArtifactData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.StaticArtifactData";
        static get size() { return 232 + 8; }
        public static address = 56478080;
        public static fieldNames: string[] = ["Settings", "SetInfos", "PrimaryBonusInfos", "SecBonusInfos", "SecAdditionalBonusCountByRarityAndLevel", "DeactivatePriceByRank", "UpgradePricesByRank", "UpgradePricesByRankAccessories", "UpgradeChances", "BasePriceBySetKindId", "PriceMultiplierByRankId", "PriceMultiplierByRarityId", "PriceMultiplierByKindId", "SellPriceMultiplierByRankId", "RequiredHeroGradeByKindId", "SlotOpenConditionByKindId", "MaxArtifactsCount", "MaxArtifactLevel", "DefaultSetPrice", "StartArtifactBoosterPrize", "_setInfoByKind", "PrimaryBonusesByKindId", "SecondaryBonusesByKindId", "ArtifactKindIds", "AccessoryKindIds", "ArtifactRarityIds", "ArtifactRankIds", "ArtifactSetKindIds", "AccessorySetKindIds"];
        public get Settings(): codegen.SharedModel.Meta.Artifacts.ArtifactSettings {
            return this.readField(16, codegen.SharedModel.Meta.Artifacts.ArtifactSettings, 2);
        }
        public get SetInfos(): System.Collections.Generic.List<codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetInfo> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetInfo);
        }
        public get PrimaryBonusInfos(): System.Collections.Generic.List<codegen.SharedModel.Meta.Artifacts.Bonuses.PrimaryArtifactBonusInfo> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Artifacts.Bonuses.PrimaryArtifactBonusInfo);
        }
        public get SecBonusInfos(): System.Collections.Generic.List<codegen.SharedModel.Meta.Artifacts.Bonuses.SecArtifactBonusInfo> {
            return this.readField(40, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Artifacts.Bonuses.SecArtifactBonusInfo);
        }
        public get SecAdditionalBonusCountByRarityAndLevel(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, number>> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", "int"));
        }
        public get DeactivatePriceByRank(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Account.Resources> {
            return this.readField(56, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Account.Resources);
        }
        public get UpgradePricesByRank(): System.Collections.Generic.Dictionary<number, System.Internal.ManagedArray<codegen.SharedModel.Meta.Account.Resources>> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Internal.ManagedArray, codegen.SharedModel.Meta.Account.Resources));
        }
        public get UpgradePricesByRankAccessories(): System.Collections.Generic.Dictionary<number, System.Internal.ManagedArray<codegen.SharedModel.Meta.Account.Resources>> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Internal.ManagedArray, codegen.SharedModel.Meta.Account.Resources));
        }
        public get UpgradeChances(): System.Internal.ManagedArray<number> {
            return this.readField(80, System.Internal.ManagedArray, 2, "double");
        }
        public get BasePriceBySetKindId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(88, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get PriceMultiplierByRankId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(96, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get PriceMultiplierByRarityId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(104, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get PriceMultiplierByKindId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(112, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get SellPriceMultiplierByRankId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(120, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get RequiredHeroGradeByKindId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(128, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get SlotOpenConditionByKindId(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Artifacts.ArtifactSlotOpenCondition> {
            return this.readField(136, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Artifacts.ArtifactSlotOpenCondition);
        }
        public get MaxArtifactsCount(): number {
            return this.readTypePrimitive(144, "int", 1);
        }
        public get MaxArtifactLevel(): number {
            return this.readTypePrimitive(148, "int", 1);
        }
        public get DefaultSetPrice(): number {
            return this.readTypePrimitive(152, "int", 1);
        }
        public get StartArtifactBoosterPrize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(160, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get _setInfoByKind(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetInfo> {
            return this.readField(168, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetInfo);
        }
        public get PrimaryBonusesByKindId(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Meta.Artifacts.Bonuses.PrimaryArtifactBonusInfo>> {
            return this.readField(176, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.Artifacts.Bonuses.PrimaryArtifactBonusInfo));
        }
        public get SecondaryBonusesByKindId(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Meta.Artifacts.Bonuses.SecArtifactBonusInfo>> {
            return this.readField(184, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.Artifacts.Bonuses.SecArtifactBonusInfo));
        }
        public get ArtifactKindIds(): System.Collections.Generic.List<number> {
            return this.readField(192, System.Collections.Generic.List, 2, "int");
        }
        public get AccessoryKindIds(): System.Collections.Generic.List<number> {
            return this.readField(200, System.Collections.Generic.List, 2, "int");
        }
        public get ArtifactRarityIds(): System.Collections.Generic.List<number> {
            return this.readField(208, System.Collections.Generic.List, 2, "int");
        }
        public get ArtifactRankIds(): System.Collections.Generic.List<number> {
            return this.readField(216, System.Collections.Generic.List, 2, "int");
        }
        public get ArtifactSetKindIds(): System.Collections.Generic.List<number> {
            return this.readField(224, System.Collections.Generic.List, 2, "int");
        }
        public get AccessorySetKindIds(): System.Collections.Generic.List<number> {
            return this.readField(232, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {
            "AssertUpgradePricesInRange": () => new il2js.MethodInfo(56695184)
        };
    }
}
export namespace codegen.SharedModel.Meta.Artifacts {
    export class ArtifactSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.ArtifactSettings";
        static get size() { return 90 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57009744;
        public static fieldNames: string[] = ["DeleteArtifactEnabled", "MaxArtifactsCount", "GradationUpgradeConstraintLevel", "UpgradeOptimizationClientEnabled", "UpgradeOptimizationServerEnabled", "InventoryFilterEnabled", "SecondaryStatsSelectionLimit", "ArtifactCheckroomEnabled", "ArtifactDisappearanceCount", "SellArtifactFromInboxEnabled", "ArtifactsRefreshInactivityTimeoutSeconds", "ArtifactStorageState", "ArtifactStorageUsersPercent", "ArtifactStoragePushDelayMinutes", "ExtendedLoggingEnabled", "DeactivateArtifactBeforeAscendHeroEnabled", "ArtifactBoosterEnabled"];
        public get DeleteArtifactEnabled(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get MaxArtifactsCount(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get GradationUpgradeConstraintLevel(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get UpgradeOptimizationClientEnabled(): boolean {
            return this.readTypePrimitive(44, "bool", 1);
        }
        public get UpgradeOptimizationServerEnabled(): boolean {
            return this.readTypePrimitive(45, "bool", 1);
        }
        public get InventoryFilterEnabled(): boolean {
            return this.readTypePrimitive(52, "bool", 1);
        }
        public get SecondaryStatsSelectionLimit(): number {
            return this.readTypePrimitive(56, "int", 1);
        }
        public get ArtifactCheckroomEnabled(): boolean {
            return this.readTypePrimitive(60, "bool", 1);
        }
        public get ArtifactDisappearanceCount(): number {
            return this.readTypePrimitive(64, "int", 1);
        }
        public get SellArtifactFromInboxEnabled(): boolean {
            return this.readTypePrimitive(68, "bool", 1);
        }
        public get ArtifactsRefreshInactivityTimeoutSeconds(): number {
            return this.readTypePrimitive(72, "int", 1);
        }
        public get ArtifactStorageState(): number {
            return this.readTypePrimitive(76, "int", 1);
        }
        public get ArtifactStorageUsersPercent(): number {
            return this.readTypePrimitive(80, "int", 1);
        }
        public get ArtifactStoragePushDelayMinutes(): number {
            return this.readTypePrimitive(84, "int", 1);
        }
        public get ExtendedLoggingEnabled(): boolean {
            return this.readTypePrimitive(88, "bool", 1);
        }
        public get DeactivateArtifactBeforeAscendHeroEnabled(): boolean {
            return this.readTypePrimitive(89, "bool", 1);
        }
        public get ArtifactBoosterEnabled(): boolean {
            return this.readTypePrimitive(90, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Artifacts.Sets {
    export class ArtifactSetInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetInfo";
        static get size() { return 64 + 8; }
        public static address = 56476312;
        public static fieldNames: string[] = ["ArtifactSetKindId", "ArtifactCount", "SkillBonus", "StatBonus", "StatBonuses", "Name", "ShortDescription", "Description"];
        public get ArtifactSetKindId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ArtifactCount(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get SkillBonus(): codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetSkillBonus {
            return this.readField(24, codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetSkillBonus, 2);
        }
        public get StatBonus(): codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetStatBonus {
            return this.readField(32, codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetStatBonus, 2);
        }
        public get StatBonuses(): System.Collections.Generic.List<codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetStatBonus> {
            return this.readField(40, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetStatBonus);
        }
        public get Name(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(48, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get ShortDescription(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(56, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get Description(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(64, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Artifacts.Bonuses {
    export class PrimaryArtifactBonusInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.Bonuses.PrimaryArtifactBonusInfo";
        static get size() { return 32 + 8; }
        public static address = 56475200;
        public static fieldNames: string[] = ["StatKey", "ValuesByLevelByRankId", "ApplicableKindIds"];
        public get StatKey(): codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactStatKey {
            return this.readField(16, codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactStatKey, 2);
        }
        public get ValuesByLevelByRankId(): System.Collections.Generic.Dictionary<number, System.Internal.ManagedArray<number>> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Internal.ManagedArray, "double"));
        }
        public get ApplicableKindIds(): System.Collections.Generic.List<number> {
            return this.readField(32, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Artifacts.Bonuses {
    export class SecArtifactBonusInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.Bonuses.SecArtifactBonusInfo";
        static get size() { return 32 + 8; }
        public static address = 56475352;
        public static fieldNames: string[] = ["StatKey", "ValueByRankId", "ApplicableKindIds"];
        public get StatKey(): codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactStatKey {
            return this.readField(16, codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactStatKey, 2);
        }
        public get ValueByRankId(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Artifacts.Bonuses.SecArtifactBonusValue> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Artifacts.Bonuses.SecArtifactBonusValue);
        }
        public get ApplicableKindIds(): System.Collections.Generic.List<number> {
            return this.readField(32, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Artifacts.Bonuses {
    export class SecArtifactBonusValue extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.Bonuses.SecArtifactBonusValue";
        static get size() { return 24 + il2js.NativeStruct.sizeof("double"); }
        public static address = 56475504;
        public static fieldNames: string[] = ["FromValue", "ToValue"];
        public get FromValue(): number {
            return this.readTypePrimitive(16, "double", 1);
        }
        public get ToValue(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public static staticMethods = {
            ".ctor": () => new il2js.MethodInfo(56695136)
        };
    }
}
export namespace codegen.SharedModel.Meta.Artifacts {
    export class ArtifactSlotOpenCondition extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.ArtifactSlotOpenCondition";
        static get size() { return 0; }
        public static address = 56474688;
        public static fieldNames: string[] = [];
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta {
    export class StaticGameplayData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.StaticGameplayData";
        static get size() { return 200 + 8; }
        public static address = 57101720;
        public static fieldNames: string[] = ["LevelData", "BundlesLoadingRewards", "MaxTokens", "MaxArena3X3Tokens", "MaxForgeResources", "AutoBattleSettings", "UpdateReward", "UserAvatars", "StaminaToTurn", "StaminaByTick", "HealOnStartRound", "ElementDisadvantageCoef", "CrushingHitCoef", "GlancingHitCoef", "CriticalHealCoef", "CriticalHitChance", "CrushingHitChance", "GlancingHitChance", "CriticalHitChanceAdvantage", "MaxAppliedBuffEffects", "MaxAppliedDebuffEffects", "HpDestructionFromDamagePercent", "MaxPossibleHpDestructionPercent", "MaxPossibleHpDestructionPerSkillPercent", "CounterattackModifier", "_avatarIds"];
        public get LevelData(): codegen.SharedModel.Meta.Account.StaticUserLevelData {
            return this.readField(16, codegen.SharedModel.Meta.Account.StaticUserLevelData, 2);
        }
        public get BundlesLoadingRewards(): System.Collections.Generic.List<codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public get MaxTokens(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get MaxArena3X3Tokens(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public get MaxForgeResources(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get AutoBattleSettings(): codegen.SharedModel.Meta.Battle.AutoBattle.AutoBattleSettings {
            return this.readField(48, codegen.SharedModel.Meta.Battle.AutoBattle.AutoBattleSettings, 2);
        }
        public get UpdateReward(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(56, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get UserAvatars(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<number>> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, "int"));
        }
        public get StaminaToTurn(): number {
            return this.readField(72, FixedNumber, 1);
        }
        public get StaminaByTick(): number {
            return this.readField(80, FixedNumber, 1);
        }
        public get HealOnStartRound(): number {
            return this.readField(88, FixedNumber, 1);
        }
        public get ElementDisadvantageCoef(): number {
            return this.readField(96, FixedNumber, 1);
        }
        public get CrushingHitCoef(): number {
            return this.readField(104, FixedNumber, 1);
        }
        public get GlancingHitCoef(): number {
            return this.readField(112, FixedNumber, 1);
        }
        public get CriticalHealCoef(): number {
            return this.readField(120, FixedNumber, 1);
        }
        public get CriticalHitChance(): number {
            return this.readField(128, FixedNumber, 1);
        }
        public get CrushingHitChance(): number {
            return this.readField(136, FixedNumber, 1);
        }
        public get GlancingHitChance(): number {
            return this.readField(144, FixedNumber, 1);
        }
        public get CriticalHitChanceAdvantage(): number {
            return this.readField(152, FixedNumber, 1);
        }
        public get MaxAppliedBuffEffects(): number {
            return this.readTypePrimitive(160, "int", 1);
        }
        public get MaxAppliedDebuffEffects(): number {
            return this.readTypePrimitive(164, "int", 1);
        }
        public get HpDestructionFromDamagePercent(): number {
            return this.readField(168, FixedNumber, 1);
        }
        public get MaxPossibleHpDestructionPercent(): number {
            return this.readField(176, FixedNumber, 1);
        }
        public get MaxPossibleHpDestructionPerSkillPercent(): number {
            return this.readField(184, FixedNumber, 1);
        }
        public get CounterattackModifier(): number {
            return this.readField(192, FixedNumber, 1);
        }
        public get _avatarIds(): System.Collections.Generic.List<number> {
            return this.readField(200, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Account {
    export class StaticUserLevelData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Account.StaticUserLevelData";
        static get size() { return 64 + 8; }
        public static address = 56464648;
        public static fieldNames: string[] = ["MaxLevel", "EnergyPerHour", "ExperienceForLevel", "EnergyLimitForLevel", "PrizesByLevel", "PrizeForNewLevel", "MilestonePrizesForLevel"];
        public get MaxLevel(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get EnergyPerHour(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public get ExperienceForLevel(): System.Collections.Generic.List<number> {
            return this.readField(32, System.Collections.Generic.List, 2, "int");
        }
        public get EnergyLimitForLevel(): System.Collections.Generic.List<number> {
            return this.readField(40, System.Collections.Generic.List, 2, "int");
        }
        public get PrizesByLevel(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public get PrizeForNewLevel(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(56, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get MilestonePrizesForLevel(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle.AutoBattle {
    export class AutoBattleSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.AutoBattle.AutoBattleSettings";
        static get size() { return 56 + 8; }
        public static address = 56483992;
        public static fieldNames: string[] = ["Status", "MaxFarmHeroes", "StartNextBattleDelayInSec", "TicketsBattleStartPrice", "TicketsDailyLimit", "TicketsBonusMultiplier", "EnabledRegionIds", "_battleStartPrice"];
        public get Status(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get MaxFarmHeroes(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get StartNextBattleDelayInSec(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get TicketsBattleStartPrice(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get TicketsDailyLimit(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get TicketsBonusMultiplier(): number {
            return this.readTypePrimitive(40, "double", 1);
        }
        public get EnabledRegionIds(): System.Collections.Generic.List<number> {
            return this.readField(48, System.Collections.Generic.List, 2, "int");
        }
        public get _battleStartPrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(56, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class StaticStageData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.StaticStageData";
        static get size() { return 112 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57101312;
        public static fieldNames: string[] = ["Areas", "Stages", "StoryRewardsByStarsByDifficulty", "RegionPassDataById", "Settings", "FirstTimeRewardOrder", "FractionWarRewardsByStars", "FractionWarMainReward", "_regions", "AreasById", "StagesById", "StoryStageIdsByDifficulty", "ArenaUserLevelRequired"];
        public get Areas(): System.Collections.Generic.List<codegen.SharedModel.Meta.Stages.Area> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Stages.Area);
        }
        public get Stages(): System.Collections.Generic.List<codegen.SharedModel.Meta.Stages.Stage> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Stages.Stage);
        }
        public get StoryRewardsByStarsByDifficulty(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.UserPrizes.UserPrize>> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", codegen.SharedModel.Meta.UserPrizes.UserPrize));
        }
        public get RegionPassDataById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Stages.RegionPassData> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Stages.RegionPassData);
        }
        public get Settings(): codegen.SharedModel.Meta.Stages.StageSettings {
            return this.readField(48, codegen.SharedModel.Meta.Stages.StageSettings, 2);
        }
        public get FirstTimeRewardOrder(): System.Internal.ManagedArray<number> {
            return this.readField(56, System.Internal.ManagedArray, 2, "int");
        }
        public get FractionWarRewardsByStars(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public get FractionWarMainReward(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(72, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get _regions(): System.Collections.Generic.List<codegen.SharedModel.Meta.Stages.Region> {
            return this.readField(80, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Stages.Region);
        }
        public get AreasById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Stages.Area> {
            return this.readField(88, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Stages.Area);
        }
        public get StagesById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Stages.Stage> {
            return this.readField(96, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Stages.Stage);
        }
        public get StoryStageIdsByDifficulty(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<number>> {
            return this.readField(104, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, "int"));
        }
        public get ArenaUserLevelRequired(): number {
            return this.readTypePrimitive(112, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class RegionPassData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.RegionPassData";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56548392;
        public static fieldNames: string[] = ["Price", "UserEffectType"];
        public get Price(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(16, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get UserEffectType(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class StageSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.StageSettings";
        static get size() { return 64 + 8; }
        public static address = 56549384;
        public static fieldNames: string[] = ["StarsRewardEnabled", "InsaneDifficultyEnabled", "OpenKeepsEnabled", "SpiderEnabled", "CheckAreaCondition", "CheckRegionCondition", "SelectedFormationIndex", "RegionRevealLevelByType", "AreaRevealLevelByType", "NewUserOpenHoursByRegion", "FractionWarSettings", "DoomTowerSettings"];
        public get StarsRewardEnabled(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get InsaneDifficultyEnabled(): boolean {
            return this.readTypePrimitive(17, "bool", 1);
        }
        public get OpenKeepsEnabled(): boolean {
            return this.readTypePrimitive(18, "bool", 1);
        }
        public get SpiderEnabled(): boolean {
            return this.readTypePrimitive(19, "bool", 1);
        }
        public get CheckAreaCondition(): boolean {
            return this.readTypePrimitive(20, "bool", 1);
        }
        public get CheckRegionCondition(): boolean {
            return this.readTypePrimitive(21, "bool", 1);
        }
        public get SelectedFormationIndex(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get RegionRevealLevelByType(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get AreaRevealLevelByType(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get NewUserOpenHoursByRegion(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get FractionWarSettings(): codegen.SharedModel.Meta.Stages.FractionWarSettings {
            return this.readField(56, codegen.SharedModel.Meta.Stages.FractionWarSettings, 2);
        }
        public get DoomTowerSettings(): codegen.SharedModel.Meta.Stages.DoomTowerSettings {
            return this.readField(64, codegen.SharedModel.Meta.Stages.DoomTowerSettings, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class FractionWarSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.FractionWarSettings";
        static get size() { return 49 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57087720;
        public static fieldNames: string[] = ["Status", "OpenedFractionsCountInOneDay", "UpdateFractionWarDataDelayMinutes", "NewUserFreeRegionDays", "KeysLimit", "IsBetaStatus", "MainRewardEnabled"];
        public get Status(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get OpenedFractionsCountInOneDay(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get UpdateFractionWarDataDelayMinutes(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public get NewUserFreeRegionDays(): number {
            return this.readTypePrimitive(32, "double", 1);
        }
        public get KeysLimit(): number {
            return this.readTypePrimitive(40, "double", 1);
        }
        public get IsBetaStatus(): boolean {
            return this.readTypePrimitive(48, "bool", 1);
        }
        public get MainRewardEnabled(): boolean {
            return this.readTypePrimitive(49, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class DoomTowerSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.DoomTowerSettings";
        static get size() { return 77 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57087800;
        public static fieldNames: string[] = ["AvailableRegions", "DelayUpdate", "Status", "UnlockLevel", "UpdateDelayMinutes", "UpdateTowerMinutes", "IsBetaStatus", "StartGoldKeys", "StartSilverKeys", "GlobalRatingLimit", "GlobalStrategyRatingLimit", "GlobalRatingMinStageCount", "TurnsInRatingEnabled", "TurnsInRatingArchiveEnabled"];
        public get AvailableRegions(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public get DelayUpdate(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public get Status(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get UnlockLevel(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get UpdateDelayMinutes(): number {
            return this.readTypePrimitive(40, "double", 1);
        }
        public get UpdateTowerMinutes(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get IsBetaStatus(): boolean {
            return this.readTypePrimitive(52, "bool", 1);
        }
        public get StartGoldKeys(): number {
            return this.readTypePrimitive(56, "int", 1);
        }
        public get StartSilverKeys(): number {
            return this.readTypePrimitive(60, "int", 1);
        }
        public get GlobalRatingLimit(): number {
            return this.readTypePrimitive(64, "int", 1);
        }
        public get GlobalStrategyRatingLimit(): number {
            return this.readTypePrimitive(68, "int", 1);
        }
        public get GlobalRatingMinStageCount(): number {
            return this.readTypePrimitive(72, "int", 1);
        }
        public get TurnsInRatingEnabled(): boolean {
            return this.readTypePrimitive(76, "bool", 1);
        }
        public get TurnsInRatingArchiveEnabled(): boolean {
            return this.readTypePrimitive(77, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BlackMarket {
    export class StaticBlackMarketData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BlackMarket.StaticBlackMarketData";
        static get size() { return 32 + 8; }
        public static address = 56489000;
        public static fieldNames: string[] = ["Items", "BlackMarketSettings", "ItemById"];
        public get Items(): System.Collections.Generic.List<codegen.SharedModel.Meta.BlackMarket.BlackMarketItem> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.BlackMarket.BlackMarketItem);
        }
        public get BlackMarketSettings(): codegen.SharedModel.Meta.BlackMarket.BlackMarketSettings {
            return this.readField(24, codegen.SharedModel.Meta.BlackMarket.BlackMarketSettings, 2);
        }
        public get ItemById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.BlackMarket.BlackMarketItem> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.BlackMarket.BlackMarketItem);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BlackMarket {
    export class BlackMarketItem extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BlackMarket.BlackMarketItem";
        static get size() { return 128 + 8; }
        public static address = 56487968;
        public static fieldNames: string[] = ["Id", "Price", "Name", "Description", "ResourcesData", "ShardsData", "UpdateUserData", "SkillUpgradeData", "UserEffectData", "HeroLevelUpData", "HeroRankUpData", "MasteryData", "PowerUpData", "ForgeCharmData", "RandomItemsData"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Price(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(24, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get Name(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(32, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get Description(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(40, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get ResourcesData(): codegen.SharedModel.Meta.BlackMarket.ResourcesData {
            return this.readField(48, codegen.SharedModel.Meta.BlackMarket.ResourcesData, 2);
        }
        public get ShardsData(): codegen.SharedModel.Meta.BlackMarket.ShardData {
            return this.readField(56, codegen.SharedModel.Meta.BlackMarket.ShardData, 2);
        }
        public get UpdateUserData(): codegen.SharedModel.Meta.BlackMarket.UpdateUserData {
            return this.readField(64, codegen.SharedModel.Meta.BlackMarket.UpdateUserData, 2);
        }
        public get SkillUpgradeData(): codegen.SharedModel.Meta.BlackMarket.SkillUpgradeData {
            return this.readField(72, codegen.SharedModel.Meta.BlackMarket.SkillUpgradeData, 2);
        }
        public get UserEffectData(): codegen.SharedModel.Meta.BlackMarket.UserEffectInfo {
            return this.readField(80, codegen.SharedModel.Meta.BlackMarket.UserEffectInfo, 2);
        }
        public get HeroLevelUpData(): codegen.SharedModel.Meta.BlackMarket.HeroLevelUpData {
            return this.readField(88, codegen.SharedModel.Meta.BlackMarket.HeroLevelUpData, 2);
        }
        public get HeroRankUpData(): codegen.SharedModel.Meta.BlackMarket.HeroRankUpData {
            return this.readField(96, codegen.SharedModel.Meta.BlackMarket.HeroRankUpData, 2);
        }
        public get MasteryData(): codegen.SharedModel.Meta.BlackMarket.MasteryData {
            return this.readField(104, codegen.SharedModel.Meta.BlackMarket.MasteryData, 2);
        }
        public get PowerUpData(): codegen.SharedModel.Meta.BlackMarket.PowerUpData {
            return this.readField(112, codegen.SharedModel.Meta.BlackMarket.PowerUpData, 2);
        }
        public get ForgeCharmData(): codegen.SharedModel.Meta.BlackMarket.ForgeCharmData {
            return this.readField(120, codegen.SharedModel.Meta.BlackMarket.ForgeCharmData, 2);
        }
        public get RandomItemsData(): codegen.SharedModel.Meta.BlackMarket.RandomItemsData {
            return this.readField(128, codegen.SharedModel.Meta.BlackMarket.RandomItemsData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BlackMarket {
    export class ResourcesData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BlackMarket.ResourcesData";
        static get size() { return 18 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57022144;
        public static fieldNames: string[] = ["MaxEnergy", "MaxTokens", "MaxArena3X3Tokens"];
        public get MaxEnergy(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get MaxTokens(): boolean {
            return this.readTypePrimitive(17, "bool", 1);
        }
        public get MaxArena3X3Tokens(): boolean {
            return this.readTypePrimitive(18, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BlackMarket {
    export class ShardData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BlackMarket.ShardData";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57022216;
        public static fieldNames: string[] = ["Type"];
        public get Type(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BlackMarket {
    export class UpdateUserData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BlackMarket.UpdateUserData";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57022336;
        public static fieldNames: string[] = ["Type"];
        public get Type(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BlackMarket {
    export class SkillUpgradeData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BlackMarket.SkillUpgradeData";
        static get size() { return 16 + 8; }
        public static address = 57022488;
        public static fieldNames: string[] = ["AvailableHeroRarities"];
        public get AvailableHeroRarities(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BlackMarket {
    export class HeroLevelUpData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BlackMarket.HeroLevelUpData";
        static get size() { return 32 + 8; }
        public static address = 57022672;
        public static fieldNames: string[] = ["Element", "Xp", "XpOnCorrectElement", "Price"];
        public get Element(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Xp(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get XpOnCorrectElement(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Price(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(32, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BlackMarket {
    export class HeroRankUpData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BlackMarket.HeroRankUpData";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57022768;
        public static fieldNames: string[] = ["Grade"];
        public get Grade(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BlackMarket {
    export class MasteryData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BlackMarket.MasteryData";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57022952;
        public static fieldNames: string[] = ["MasteryType"];
        public get MasteryType(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BlackMarket {
    export class PowerUpData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BlackMarket.PowerUpData";
        static get size() { return 72 + 8; }
        public static address = 57022800;
        public static fieldNames: string[] = ["RankId", "StatId", "IsAbsolute", "MinValue", "MaxValue", "Step", "SellPrice", "UsePrice", "PossibleValues"];
        public get RankId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get StatId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get IsAbsolute(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public get MinValue(): number {
            return this.readTypePrimitive(32, "double", 1);
        }
        public get MaxValue(): number {
            return this.readTypePrimitive(40, "double", 1);
        }
        public get Step(): number {
            return this.readTypePrimitive(48, "double", 1);
        }
        public get SellPrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(56, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get UsePrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(64, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get PossibleValues(): System.Collections.Generic.List<number> {
            return this.readField(72, System.Collections.Generic.List, 2, "double");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BlackMarket {
    export class ForgeCharmData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BlackMarket.ForgeCharmData";
        static get size() { return 24 + 8; }
        public static address = 57023024;
        public static fieldNames: string[] = ["TypeId", "Probabilities"];
        public get TypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Probabilities(): codegen.SharedModel.Meta.Forge.Static.ForgeCharmProbabilities {
            return this.readField(24, codegen.SharedModel.Meta.Forge.Static.ForgeCharmProbabilities, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Forge.Static {
    export class ForgeCharmProbabilities extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Forge.Static.ForgeCharmProbabilities";
        static get size() { return 16 + 8; }
        public static address = 56499648;
        public static fieldNames: string[] = ["RawProbabilities"];
        public get RawProbabilities(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, number>> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", "double"));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BlackMarket {
    export class RandomItemsData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BlackMarket.RandomItemsData";
        static get size() { return 24 + 8; }
        public static address = 57023144;
        public static fieldNames: string[] = ["Count", "DropRules"];
        public get Count(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get DropRules(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BlackMarket {
    export class BlackMarketSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BlackMarket.BlackMarketSettings";
        static get size() { return 16 + 8; }
        public static address = 56488040;
        public static fieldNames: string[] = ["DisabledItemIds"];
        public get DisabledItemIds(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Fuse.Static {
    export class StaticFuseData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Fuse.Static.StaticFuseData";
        static get size() { return 40 + 8; }
        public static address = 56501056;
        public static fieldNames: string[] = ["HeroRecipes", "ResourceRecipes", "_recipesByHeroId", "_recipesByResourceId"];
        public get HeroRecipes(): System.Collections.Generic.List<codegen.SharedModel.Meta.Fuse.Static.FuseHeroRecipe> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Fuse.Static.FuseHeroRecipe);
        }
        public get ResourceRecipes(): System.Collections.Generic.List<codegen.SharedModel.Meta.Fuse.Static.FuseResourceRecipe> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Fuse.Static.FuseResourceRecipe);
        }
        public get _recipesByHeroId(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Fuse.Static.FuseHeroRecipe> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Fuse.Static.FuseHeroRecipe);
        }
        public get _recipesByResourceId(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Fuse.Static.FuseResourceRecipe> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Fuse.Static.FuseResourceRecipe);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Fuse.Static {
    export class FuseHeroRecipe extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Fuse.Static.FuseHeroRecipe";
        static get size() { return 80 + 8; }
        public static address = 56500592;
        public static fieldNames: string[] = ["HeroMaterials", "OutputHeroGrade", "OutputHeroId", "Price", "ParentRecipes"];
        public get HeroMaterials(): System.Collections.Generic.List<codegen.SharedModel.Meta.Fuse.Static.FuseHeroMaterial> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Fuse.Static.FuseHeroMaterial);
        }
        public get OutputHeroGrade(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get OutputHeroId(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get Price(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(32, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get ParentRecipes(): System.Collections.Generic.HashSet<codegen.SharedModel.Meta.Fuse.Static.FuseHeroRecipe> {
            return this.readField(80, System.Collections.Generic.HashSet, 2, codegen.SharedModel.Meta.Fuse.Static.FuseHeroRecipe);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Fuse.Static {
    export class FuseHeroMaterial extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Fuse.Static.FuseHeroMaterial";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57035016;
        public static fieldNames: string[] = ["HeroTypeId", "Grade", "Level"];
        public get HeroTypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Grade(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Level(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Fuse.Static {
    export class FuseResourceRecipe extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Fuse.Static.FuseResourceRecipe";
        static get size() { return 32 + 8; }
        public static address = 56500680;
        public static fieldNames: string[] = ["Output", "Material", "Price"];
        public get Output(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(16, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get Material(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(24, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get Price(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(32, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Forge.Static {
    export class StaticForgeData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Forge.Static.StaticForgeData";
        static get size() { return 48 + 8; }
        public static address = 56499960;
        public static fieldNames: string[] = ["Probabilities", "FirstTimeReward", "ForgeArtifactRecipes", "Settings", "RecipesById"];
        public get Probabilities(): codegen.SharedModel.Meta.Forge.Static.ForgeCharmProbabilities {
            return this.readField(16, codegen.SharedModel.Meta.Forge.Static.ForgeCharmProbabilities, 2);
        }
        public get FirstTimeReward(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(24, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get ForgeArtifactRecipes(): System.Collections.Generic.List<codegen.SharedModel.Meta.Forge.Static.ForgeArtifactRecipe> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Forge.Static.ForgeArtifactRecipe);
        }
        public get Settings(): codegen.SharedModel.Meta.Forge.ForgeSettings {
            return this.readField(40, codegen.SharedModel.Meta.Forge.ForgeSettings, 2);
        }
        public get RecipesById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Forge.Static.ForgeArtifactRecipe> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Forge.Static.ForgeArtifactRecipe);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Forge.Static {
    export class ForgeArtifactRecipe extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Forge.Static.ForgeArtifactRecipe";
        static get size() { return 32 + 8; }
        public static address = 56499496;
        public static fieldNames: string[] = ["Id", "ArtifactSetKindId", "OutputRankVariationId", "Price"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ArtifactSetKindId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get OutputRankVariationId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Price(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(32, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Forge {
    export class ForgeSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Forge.ForgeSettings";
        static get size() { return 40 + 8; }
        public static address = 56499288;
        public static fieldNames: string[] = ["Enabled", "ActiveRecipes", "FirstTimeReward", "Probabilities"];
        public get Enabled(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get ActiveRecipes(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public get FirstTimeReward(): codegen.SharedModel.Meta.Forge.ForgeRewards {
            return this.readField(32, codegen.SharedModel.Meta.Forge.ForgeRewards, 2);
        }
        public get Probabilities(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<number>> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, "double"));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Forge {
    export class ForgeRewards extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Forge.ForgeRewards";
        static get size() { return 16 + 8; }
        public static address = 57033472;
        public static fieldNames: string[] = ["Rewards"];
        public get Rewards(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Village {
    export class StaticVillageData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Village.StaticVillageData";
        static get size() { return 56 + 8; }
        public static address = 56557448;
        public static fieldNames: string[] = ["Settings", "BuildingTypes", "CapitolBonusByStatKind", "CapitolBonusUpgradePrices", "GemMineRemindLevel", "_buildingTypeById"];
        public get Settings(): codegen.SharedModel.Meta.Village.VillageSettings {
            return this.readField(16, codegen.SharedModel.Meta.Village.VillageSettings, 2);
        }
        public get BuildingTypes(): System.Collections.Generic.List<codegen.SharedModel.Meta.Village.BuildingType> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Village.BuildingType);
        }
        public get CapitolBonusByStatKind(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Meta.Artifacts.BonusValue>> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.Artifacts.BonusValue));
        }
        public get CapitolBonusUpgradePrices(): System.Collections.Generic.List<codegen.SharedModel.Meta.Account.Resources> {
            return this.readField(40, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Account.Resources);
        }
        public get GemMineRemindLevel(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get _buildingTypeById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Village.BuildingType> {
            return this.readField(56, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Village.BuildingType);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Village {
    export class VillageSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Village.VillageSettings";
        static get size() { return 17 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56557624;
        public static fieldNames: string[] = ["ChristmasTreeEnabled", "UnlockAndRevealLevels_1_7_Enabled"];
        public get ChristmasTreeEnabled(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get UnlockAndRevealLevels_1_7_Enabled(): boolean {
            return this.readTypePrimitive(17, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Village {
    export class BuildingType extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Village.BuildingType";
        static get size() { return 24 + 8; }
        public static address = 56556656;
        public static fieldNames: string[] = ["Id", "GroupId", "LevelInfos"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get GroupId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get LevelInfos(): System.Collections.Generic.List<codegen.SharedModel.Meta.Village.BuildingLevelInfo> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Village.BuildingLevelInfo);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Village {
    export class BuildingLevelInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Village.BuildingLevelInfo";
        static get size() { return 32 + 8; }
        public static address = 56556272;
        public static fieldNames: string[] = ["Price", "Condition", "GemsMineInfo"];
        public get Price(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(16, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get Condition(): codegen.SharedModel.Meta.Village.BuildingOpenCondition {
            return this.readField(24, codegen.SharedModel.Meta.Village.BuildingOpenCondition, 2);
        }
        public get GemsMineInfo(): codegen.SharedModel.Meta.Village.GemsMineInfo {
            return this.readField(32, codegen.SharedModel.Meta.Village.GemsMineInfo, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Village {
    export class BuildingOpenCondition extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Village.BuildingOpenCondition";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56556408;
        public static fieldNames: string[] = ["UserLevelRequired", "RevealUserLevel"];
        public get UserLevelRequired(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get RevealUserLevel(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Village {
    export class GemsMineInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Village.GemsMineInfo";
        static get size() { return 24 + il2js.NativeStruct.sizeof("double"); }
        public static address = 56556960;
        public static fieldNames: string[] = ["GemsCapacity", "GemsPerHour"];
        public get GemsCapacity(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get GemsPerHour(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.MagicShop {
    export class StaticMagicShopData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.MagicShop.StaticMagicShopData";
        static get size() { return 96 + 8; }
        public static address = 56514768;
        public static fieldNames: string[] = ["Settings", "InitialSlotsCount", "RefreshPrice", "SlotPriceByCount", "ItemChanceByLevelByType", "RankChanceByLevelByType", "SetChanceByLevelByType", "KindChanceByLevelByType", "RarityChanceByLevelByType", "HeroSellPricesByType", "ItemChanceByLevelByTypeWithoutAncientShard"];
        public get Settings(): codegen.SharedModel.Meta.MagicShop.MagicShopSettings {
            return this.readField(16, codegen.SharedModel.Meta.MagicShop.MagicShopSettings, 2);
        }
        public get InitialSlotsCount(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get RefreshPrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(32, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get SlotPriceByCount(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Account.Resources> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Account.Resources);
        }
        public get ItemChanceByLevelByType(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, number>> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", "double"));
        }
        public get RankChanceByLevelByType(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, number>> {
            return this.readField(56, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", "double"));
        }
        public get SetChanceByLevelByType(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, number>> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", "double"));
        }
        public get KindChanceByLevelByType(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, number>> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", "double"));
        }
        public get RarityChanceByLevelByType(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, number>> {
            return this.readField(80, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", "double"));
        }
        public get HeroSellPricesByType(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Meta.Account.Resources>> {
            return this.readField(88, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.Account.Resources));
        }
        public get ItemChanceByLevelByTypeWithoutAncientShard(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, number>> {
            return this.readField(96, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", "double"));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.MagicShop {
    export class MagicShopSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.MagicShop.MagicShopSettings";
        static get size() { return 28 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56514224;
        public static fieldNames: string[] = ["Enabled", "RefreshSec", "MaxSlots", "AncientShardLimitPerMonth"];
        public get Enabled(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get RefreshSec(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get MaxSlots(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get AncientShardLimitPerMonth(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Shards {
    export class StaticShardData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Shards.StaticShardData";
        static get size() { return 32 + 8; }
        public static address = 56546424;
        public static fieldNames: string[] = ["ShardSettings", "ShardTypes", "_shardTypesById"];
        public get ShardSettings(): codegen.SharedModel.Meta.Shards.ShardSettings {
            return this.readField(16, codegen.SharedModel.Meta.Shards.ShardSettings, 2);
        }
        public get ShardTypes(): System.Collections.Generic.List<codegen.SharedModel.Meta.Shards.ShardType> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Shards.ShardType);
        }
        public get _shardTypesById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Shards.ShardType> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Shards.ShardType);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Shards {
    export class ShardSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Shards.ShardSettings";
        static get size() { return 40 + 8; }
        public static address = 56546048;
        public static fieldNames: string[] = ["SummonHeroIds", "MysteryClickerUserLevelLimit", "MultiSummonEnabled", "ShowDropRate", "ShardDropRules", "DisabledHeroIdsByShardTypeId"];
        public get SummonHeroIds(): System.Internal.ManagedArray<number> {
            return this.readField(16, System.Internal.ManagedArray, 2, "int");
        }
        public get MysteryClickerUserLevelLimit(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get MultiSummonEnabled(): boolean {
            return this.readTypePrimitive(28, "bool", 1);
        }
        public get ShowDropRate(): boolean {
            return this.readTypePrimitive(29, "bool", 1);
        }
        public get ShardDropRules(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Meta.Shards.ShardDropRule>> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.Shards.ShardDropRule));
        }
        public get DisabledHeroIdsByShardTypeId(): System.Collections.Generic.Dictionary<number, System.Internal.ManagedArray<number>> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Internal.ManagedArray, "int"));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Shards {
    export class ShardDropRule extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Shards.ShardDropRule";
        static get size() { return 24 + il2js.NativeStruct.sizeof("double"); }
        public static address = 57078848;
        public static fieldNames: string[] = ["Rarity", "Chance"];
        public get Rarity(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Chance(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Shards {
    export class ShardType extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Shards.ShardType";
        static get size() { return 88 + 8; }
        public static address = 56546208;
        public static fieldNames: string[] = ["Id", "Name", "Description", "Price", "ActivationPrice", "ApplicableElements", "DropRules", "HeroChancesByIdByRarity", "_baseHeroRarities", "_dropRulesByRarities"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Name(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(24, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get Description(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(32, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get Price(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(40, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get ActivationPrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(48, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get ApplicableElements(): System.Collections.Generic.List<number> {
            return this.readField(56, System.Collections.Generic.List, 2, "int");
        }
        public get DropRules(): System.Collections.Generic.List<codegen.SharedModel.Meta.Shards.ShardDropRule> {
            return this.readField(64, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Shards.ShardDropRule);
        }
        public get HeroChancesByIdByRarity(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, number>> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", "double"));
        }
        public get _baseHeroRarities(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(80, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get _dropRulesByRarities(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Shards.ShardDropRule> {
            return this.readField(88, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Shards.ShardDropRule);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.TrainingCamp {
    export class StaticTrainingCampData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.TrainingCamp.StaticTrainingCampData";
        static get size() { return 24 + 8; }
        public static address = 56552776;
        public static fieldNames: string[] = ["LevelPriceBySlot", "XpByHeroGradeBySlotLevel"];
        public get LevelPriceBySlot(): System.Collections.Generic.List<System.Collections.Generic.List<codegen.SharedModel.Meta.Account.Resources>> {
            return this.readField(16, System.Collections.Generic.List, 2, bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.Account.Resources));
        }
        public get XpByHeroGradeBySlotLevel(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, number>> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", "int"));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Data {
    export class StaticQuestData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Data.StaticQuestData";
        static get size() { return 48 + 8; }
        public static address = 57074176;
        public static fieldNames: string[] = ["PeriodicQuestData", "ChallengeQuestData", "RecommendedQuestData", "AdvancedDailyQuestData", "Settings"];
        public get PeriodicQuestData(): codegen.SharedModel.Meta.PeriodicQuests.Data.StaticPeriodicQuestData {
            return this.readField(16, codegen.SharedModel.Meta.PeriodicQuests.Data.StaticPeriodicQuestData, 2);
        }
        public get ChallengeQuestData(): codegen.SharedModel.Meta.Quests.Data.ChallengeQuestData {
            return this.readField(24, codegen.SharedModel.Meta.Quests.Data.ChallengeQuestData, 2);
        }
        public get RecommendedQuestData(): codegen.SharedModel.Meta.Quests.RecommendedQuests.RecommendedQuestData {
            return this.readField(32, codegen.SharedModel.Meta.Quests.RecommendedQuests.RecommendedQuestData, 2);
        }
        public get AdvancedDailyQuestData(): codegen.SharedModel.Meta.Quests.AdvancedDailyQuests.AdvancedDailyQuestData {
            return this.readField(40, codegen.SharedModel.Meta.Quests.AdvancedDailyQuests.AdvancedDailyQuestData, 2);
        }
        public get Settings(): codegen.SharedModel.Meta.Quests.Data.QuestSettings {
            return this.readField(48, codegen.SharedModel.Meta.Quests.Data.QuestSettings, 2);
        }
        public static get WizardSummonHeroPrototypeId(): number {
            return this.readTypePrimitive(0, "int", 1);
        }
        public static get WizardCompleteFirstBattleQuestId(): number {
            return this.readTypePrimitive(4, "int", 1);
        }
        public static get WizardCompleteSecondBattleQuestId(): number {
            return this.readTypePrimitive(8, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.PeriodicQuests.Data {
    export class StaticPeriodicQuestData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.PeriodicQuests.Data.StaticPeriodicQuestData";
        static get size() { return 40 + 8; }
        public static address = 56529472;
        public static fieldNames: string[] = ["DurationInHoursByGroupId", "RandomDailyQuestPrototypeIdsByQuestPackId", "RandomQuestsCountByQuestPackId"];
        public get DurationInHoursByGroupId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get RandomDailyQuestPrototypeIdsByQuestPackId(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<number>> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, "int"));
        }
        public get RandomQuestsCountByQuestPackId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Data {
    export class ChallengeQuestData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Data.ChallengeQuestData";
        static get size() { return 48 + 8; }
        public static address = 56535528;
        public static fieldNames: string[] = ["CategoryInfosV1", "CategoryInfosV2", "ArtifactChallengesV2PartsByV1Parts", "CategoryInfoV1ById", "CategoryInfoV2ById"];
        public get CategoryInfosV1(): System.Collections.Generic.List<codegen.SharedModel.Meta.Quests.Data.ChallengeCategoryInfo> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Quests.Data.ChallengeCategoryInfo);
        }
        public get CategoryInfosV2(): System.Collections.Generic.List<codegen.SharedModel.Meta.Quests.Data.ChallengeCategoryInfo> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Quests.Data.ChallengeCategoryInfo);
        }
        public get ArtifactChallengesV2PartsByV1Parts(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get CategoryInfoV1ById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Quests.Data.ChallengeCategoryInfo> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Quests.Data.ChallengeCategoryInfo);
        }
        public get CategoryInfoV2ById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Quests.Data.ChallengeCategoryInfo> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Quests.Data.ChallengeCategoryInfo);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Data {
    export class ChallengeCategoryInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Data.ChallengeCategoryInfo";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56535408;
        public static fieldNames: string[] = ["Id", "PartsCount"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get PartsCount(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.RecommendedQuests {
    export class RecommendedQuestData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.RecommendedQuests.RecommendedQuestData";
        static get size() { return 16 + 8; }
        public static address = 56538792;
        public static fieldNames: string[] = ["GroupInfos"];
        public get GroupInfos(): System.Collections.Generic.List<codegen.SharedModel.Meta.Quests.RecommendedQuests.RecommendedQuestGroupInfo> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Quests.RecommendedQuests.RecommendedQuestGroupInfo);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.RecommendedQuests {
    export class RecommendedQuestGroupInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.RecommendedQuests.RecommendedQuestGroupInfo";
        static get size() { return 24 + 8; }
        public static address = 56538984;
        public static fieldNames: string[] = ["GroupId", "Reward"];
        public get GroupId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Reward(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(24, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.AdvancedDailyQuests {
    export class AdvancedDailyQuestData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.AdvancedDailyQuests.AdvancedDailyQuestData";
        static get size() { return 32 + 8; }
        public static address = 56530896;
        public static fieldNames: string[] = ["MilestoneTotalSteps", "CompleteAllDailyQuestsPrototypeId", "Milestones"];
        public get MilestoneTotalSteps(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public get CompleteAllDailyQuestsPrototypeId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Milestones(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.UserPrizes.UserPrize>> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", codegen.SharedModel.Meta.UserPrizes.UserPrize));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Data {
    export class QuestSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Data.QuestSettings";
        static get size() { return 80 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56536792;
        public static fieldNames: string[] = ["SkipWizard", "SkipFeatureWizard", "SkipStoryline", "ChallengesV2Enabled", "ChallengesV3Enabled", "GivePrizeFromPrototypeByQuestCategoryId", "AchievementsEnabled", "RecommendedQuestsEnabled", "LastStageForGroup1RecommendedQuests", "AchievementsReBalanceEnabled", "StagesToRecordArtifactStatsFor", "StagesToRecordResourceStatsFor", "RegionsToRecordResourceStatsFor", "StagesToRecordAutoBattleWinsFor", "MinStageToRecordAccessoryKindsFor"];
        public get SkipWizard(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get SkipFeatureWizard(): boolean {
            return this.readTypePrimitive(17, "bool", 1);
        }
        public get SkipStoryline(): boolean {
            return this.readTypePrimitive(18, "bool", 1);
        }
        public get ChallengesV2Enabled(): boolean {
            return this.readTypePrimitive(19, "bool", 1);
        }
        public get ChallengesV3Enabled(): boolean {
            return this.readTypePrimitive(20, "bool", 1);
        }
        public get GivePrizeFromPrototypeByQuestCategoryId(): System.Collections.Generic.Dictionary<number, boolean> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", "bool");
        }
        public get AchievementsEnabled(): boolean {
            return this.readTypePrimitive(32, "bool", 1);
        }
        public get RecommendedQuestsEnabled(): boolean {
            return this.readTypePrimitive(33, "bool", 1);
        }
        public get LastStageForGroup1RecommendedQuests(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public get AchievementsReBalanceEnabled(): boolean {
            return this.readTypePrimitive(40, "bool", 1);
        }
        public get StagesToRecordArtifactStatsFor(): System.Internal.ManagedArray<number> {
            return this.readField(48, System.Internal.ManagedArray, 2, "int");
        }
        public get StagesToRecordResourceStatsFor(): System.Internal.ManagedArray<number> {
            return this.readField(56, System.Internal.ManagedArray, 2, "int");
        }
        public get RegionsToRecordResourceStatsFor(): System.Internal.ManagedArray<number> {
            return this.readField(64, System.Internal.ManagedArray, 2, "int");
        }
        public get StagesToRecordAutoBattleWinsFor(): System.Internal.ManagedArray<number> {
            return this.readField(72, System.Internal.ManagedArray, 2, "int");
        }
        public get MinStageToRecordAccessoryKindsFor(): number {
            return this.readTypePrimitive(80, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle.Arena {
    export class StaticArenaData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.Arena.StaticArenaData";
        static get size() { return 96 + 8; }
        public static address = 56482696;
        public static fieldNames: string[] = ["LeagueInfos", "RefreshPrice", "StartPrice", "MaxDailyRatedDefeats", "EnemyListLength", "OpponentFreeRefreshTimeSec", "PlatinumLeagueCapacity", "MaxDailyFreeTokens", "FreeTokensPerHour", "HeroSlotsCount", "OpponentRefreshPriceGems", "MinArenaPoints", "MaxArenaPoints", "PlatinumLeagueEnabled", "PlatinumLeagueSameOpponentCooldownSeconds", "PlatinumLeagueSameOpponentCooldownBattles", "LeagueInfoById"];
        public get LeagueInfos(): System.Collections.Generic.List<codegen.SharedModel.Meta.Battle.Arena.ArenaLeagueInfo> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Battle.Arena.ArenaLeagueInfo);
        }
        public get RefreshPrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(24, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get StartPrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(32, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get MaxDailyRatedDefeats(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get EnemyListLength(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public get OpponentFreeRefreshTimeSec(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get PlatinumLeagueCapacity(): number {
            return this.readTypePrimitive(52, "int", 1);
        }
        public get MaxDailyFreeTokens(): number {
            return this.readTypePrimitive(56, "int", 1);
        }
        public get FreeTokensPerHour(): number {
            return this.readTypePrimitive(60, "int", 1);
        }
        public get HeroSlotsCount(): number {
            return this.readTypePrimitive(64, "int", 1);
        }
        public get OpponentRefreshPriceGems(): number {
            return this.readTypePrimitive(68, "int", 1);
        }
        public get MinArenaPoints(): number {
            return this.readTypePrimitive(72, "int", 1);
        }
        public get MaxArenaPoints(): number {
            return this.readTypePrimitive(76, "int", 1);
        }
        public get PlatinumLeagueEnabled(): boolean {
            return this.readTypePrimitive(80, "bool", 1);
        }
        public get PlatinumLeagueSameOpponentCooldownSeconds(): number {
            return this.readTypePrimitive(84, "int", 1);
        }
        public get PlatinumLeagueSameOpponentCooldownBattles(): number {
            return this.readTypePrimitive(88, "int", 1);
        }
        public get LeagueInfoById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Battle.Arena.ArenaLeagueInfo> {
            return this.readField(96, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Battle.Arena.ArenaLeagueInfo);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle.Arena {
    export class StaticStandardArenaData extends codegen.SharedModel.Meta.Battle.Arena.StaticArenaData {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.Arena.StaticStandardArenaData";
        static get size() { return 124 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56482872;
        public static fieldNames: string[] = [...codegen.SharedModel.Meta.Battle.Arena.StaticArenaData.fieldNames, "DowngradeToZeroLeagueDays", "SuperLeagueWeeklyPrizes", "WeeklyRewardsUtcHour", "NewPlatinumWeeklyRewardsEnabled"];
        public get DowngradeToZeroLeagueDays(): number {
            return this.readTypePrimitive(104, "int", 1);
        }
        public get SuperLeagueWeeklyPrizes(): System.Internal.ManagedArray<codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(112, System.Internal.ManagedArray, 2, codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public get WeeklyRewardsUtcHour(): number {
            return this.readTypePrimitive(120, "int", 1);
        }
        public get NewPlatinumWeeklyRewardsEnabled(): boolean {
            return this.readTypePrimitive(124, "bool", 1);
        }
        public static staticMethods = {
            ...codegen.SharedModel.Meta.Battle.Arena.StaticArenaData.staticMethods
        };
    }
}
export namespace codegen.SharedModel.Meta.Battle.Arena {
    export class ArenaLeagueInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.Arena.ArenaLeagueInfo";
        static get size() { return 128 + 8; }
        public static address = 56481200;
        public static fieldNames: string[] = ["Id", "MinPoints", "BattleBonuses", "Reward", "FlexibleReward", "RegularFlexibleReward", "RegularRigidReward", "WeeklyFirstRewardsNew", "WeeklySecondRewardsNew", "WeeklyThirdRewardsNew", "WeeklyFirstRewardsOld", "WeeklySecondRewardsOld", "WeeklyThirdRewardsOld"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get MinPoints(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get BattleBonuses(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(24, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public get Reward(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(32, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get FlexibleReward(): codegen.SharedModel.Meta.Stages.FlexibleReward {
            return this.readField(40, codegen.SharedModel.Meta.Stages.FlexibleReward, 2);
        }
        public get RegularFlexibleReward(): codegen.SharedModel.Meta.Stages.FlexibleReward {
            return this.readField(48, codegen.SharedModel.Meta.Stages.FlexibleReward, 2);
        }
        public get RegularRigidReward(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(56, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get WeeklyFirstRewardsNew(): codegen.SharedModel.Meta.Battle.Arena.ArenaSplitWeeklyReward {
            return this.readField(88, codegen.SharedModel.Meta.Battle.Arena.ArenaSplitWeeklyReward, 2);
        }
        public get WeeklySecondRewardsNew(): codegen.SharedModel.Meta.Battle.Arena.ArenaSplitWeeklyReward {
            return this.readField(96, codegen.SharedModel.Meta.Battle.Arena.ArenaSplitWeeklyReward, 2);
        }
        public get WeeklyThirdRewardsNew(): codegen.SharedModel.Meta.Battle.Arena.ArenaSplitWeeklyReward {
            return this.readField(104, codegen.SharedModel.Meta.Battle.Arena.ArenaSplitWeeklyReward, 2);
        }
        public get WeeklyFirstRewardsOld(): codegen.SharedModel.Meta.Battle.Arena.ArenaSplitWeeklyRewardOld {
            return this.readField(112, codegen.SharedModel.Meta.Battle.Arena.ArenaSplitWeeklyRewardOld, 2);
        }
        public get WeeklySecondRewardsOld(): codegen.SharedModel.Meta.Battle.Arena.ArenaSplitWeeklyRewardOld {
            return this.readField(120, codegen.SharedModel.Meta.Battle.Arena.ArenaSplitWeeklyRewardOld, 2);
        }
        public get WeeklyThirdRewardsOld(): codegen.SharedModel.Meta.Battle.Arena.ArenaSplitWeeklyRewardOld {
            return this.readField(128, codegen.SharedModel.Meta.Battle.Arena.ArenaSplitWeeklyRewardOld, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle.Arena {
    export class ArenaSplitWeeklyReward extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.Arena.ArenaSplitWeeklyReward";
        static get size() { return 24 + 8; }
        public static address = 56481648;
        public static fieldNames: string[] = ["FixedPrizes", "FlexibleReward"];
        public get FixedPrizes(): System.Collections.Generic.List<codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public get FlexibleReward(): codegen.SharedModel.Meta.Stages.FlexibleReward {
            return this.readField(24, codegen.SharedModel.Meta.Stages.FlexibleReward, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle.Arena {
    export class ArenaSplitWeeklyRewardOld extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.Arena.ArenaSplitWeeklyRewardOld";
        static get size() { return 24 + 8; }
        public static address = 56481752;
        public static fieldNames: string[] = ["FixedPrizes", "FlexibleReward"];
        public get FixedPrizes(): System.Collections.Generic.List<codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public get FlexibleReward(): codegen.SharedModel.Meta.Stages.FlexibleReward {
            return this.readField(24, codegen.SharedModel.Meta.Stages.FlexibleReward, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle.Arena.Dtos {
    export class StaticArena3X3Data extends codegen.SharedModel.Meta.Battle.Arena.StaticArenaData {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.Arena.Dtos.StaticArena3X3Data";
        static get size() { return 128 + 8; }
        public static address = 56482560;
        public static fieldNames: string[] = [...codegen.SharedModel.Meta.Battle.Arena.StaticArenaData.fieldNames, "ShopItems", "Settings", "BattlesInARow", "GroupBoundaryLimitsByLeagueId"];
        public get ShopItems(): System.Collections.Generic.List<codegen.SharedModel.Meta.Battle.Arena3x3.StaticArena3x3ShopItemData> {
            return this.readField(104, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Battle.Arena3x3.StaticArena3x3ShopItemData);
        }
        public get Settings(): codegen.SharedModel.Meta.Battle.Arena3x3.Arena3X3Settings {
            return this.readField(112, codegen.SharedModel.Meta.Battle.Arena3x3.Arena3X3Settings, 2);
        }
        public get BattlesInARow(): number {
            return this.readTypePrimitive(120, "int", 1);
        }
        public get GroupBoundaryLimitsByLeagueId(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Battle.Arena3x3.ArenaLeagueGroupBoundariesInfo> {
            return this.readField(128, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Battle.Arena3x3.ArenaLeagueGroupBoundariesInfo);
        }
        public static staticMethods = {
            ...codegen.SharedModel.Meta.Battle.Arena.StaticArenaData.staticMethods
        };
    }
}
export namespace codegen.SharedModel.Meta.Battle.Arena3x3 {
    export class StaticArena3x3ShopItemData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.Arena3x3.StaticArena3x3ShopItemData";
        static get size() { return 48 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56483592;
        public static fieldNames: string[] = ["OrderById", "Id", "ArenaLeagueId", "Prize", "Price", "PurchaseCooldownInSec"];
        public get OrderById(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Id(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get ArenaLeagueId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Prize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(32, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get Price(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(40, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get PurchaseCooldownInSec(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle.Arena3x3 {
    export class Arena3X3Settings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.Arena3x3.Arena3X3Settings";
        static get size() { return 144 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56483456;
        public static fieldNames: string[] = ["Enabled", "EnabledArena3X3Shop", "BordersRefreshType", "RefreshLeaguesTimeoutInHours", "RefreshPriceGems", "OpponentFreeRefreshTimeSec", "StartPriceTokens", "MidOpponentGroupSize", "LowOpponentGroupSize", "TopOpponentGroupSize", "RequiredLevel", "UpdateLeagueBordersDelaySeconds", "BattleLogLength", "RefillItemInboxLifetimeDays", "StoreOldStatusesDelayHours", "LeagueRewardEnabled", "LeaguesInfo", "MaxDailyFreeTokens", "RefreshOpponentsImproved", "MaxDailyPointsDelta", "NewPointsFormulaEnabled", "LeagueRewardRequiredBattles"];
        public get Enabled(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get EnabledArena3X3Shop(): boolean {
            return this.readTypePrimitive(17, "bool", 1);
        }
        public get BordersRefreshType(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get RefreshLeaguesTimeoutInHours(): number {
            return this.readTypePrimitive(40, "double", 1);
        }
        public get RefreshPriceGems(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get OpponentFreeRefreshTimeSec(): number {
            return this.readTypePrimitive(52, "int", 1);
        }
        public get StartPriceTokens(): number {
            return this.readTypePrimitive(56, "int", 1);
        }
        public get MidOpponentGroupSize(): number {
            return this.readTypePrimitive(60, "int", 1);
        }
        public get LowOpponentGroupSize(): number {
            return this.readTypePrimitive(64, "int", 1);
        }
        public get TopOpponentGroupSize(): number {
            return this.readTypePrimitive(68, "int", 1);
        }
        public get RequiredLevel(): number {
            return this.readTypePrimitive(72, "int", 1);
        }
        public get UpdateLeagueBordersDelaySeconds(): number {
            return this.readTypePrimitive(80, "double", 1);
        }
        public get BattleLogLength(): number {
            return this.readTypePrimitive(88, "int", 1);
        }
        public get RefillItemInboxLifetimeDays(): number {
            return this.readTypePrimitive(96, "double", 1);
        }
        public get StoreOldStatusesDelayHours(): number {
            return this.readTypePrimitive(104, "double", 1);
        }
        public get LeagueRewardEnabled(): boolean {
            return this.readTypePrimitive(112, "bool", 1);
        }
        public get LeaguesInfo(): codegen.SharedModel.Meta.Battle.Arena3x3.Arena3X3LeaguesInfo {
            return this.readField(120, codegen.SharedModel.Meta.Battle.Arena3x3.Arena3X3LeaguesInfo, 2);
        }
        public get MaxDailyFreeTokens(): number {
            return this.readTypePrimitive(128, "int", 1);
        }
        public get RefreshOpponentsImproved(): boolean {
            return this.readTypePrimitive(132, "bool", 1);
        }
        public get MaxDailyPointsDelta(): number {
            return this.readTypePrimitive(136, "int", 1);
        }
        public get NewPointsFormulaEnabled(): boolean {
            return this.readTypePrimitive(140, "bool", 1);
        }
        public get LeagueRewardRequiredBattles(): number {
            return this.readTypePrimitive(144, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle.Arena3x3 {
    export class Arena3X3LeaguesInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.Arena3x3.Arena3X3LeaguesInfo";
        static get size() { return 144 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57019416;
        public static fieldNames: string[] = ["BronzeIICapacity", "BronzeIIICapacity", "BronzeIVCapacity", "SilverICapacity", "SilverIICapacity", "SilverIIICapacity", "SilverIVCapacity", "GoldICapacity", "GoldIICapacity", "GoldIIICapacity", "GoldIVCapacity", "BronzeIUpCount", "BronzeIIUpCount", "BronzeIIDownCount", "BronzeIIIUpCount", "BronzeIIIDownCount", "BronzeIVUpCount", "BronzeIVDownCount", "SilverIUpCount", "SilverIDownCount", "SilverIIUpCount", "SilverIIDownCount", "SilverIIIUpCount", "SilverIIIDownCount", "SilverIVUpCount", "SilverIVDownCount", "GoldIUpCount", "GoldIDownCount", "GoldIIUpCount", "GoldIIDownCount", "GoldIIIUpCount", "GoldIIIDownCount", "GoldIVDownCount"];
        public get BronzeIICapacity(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get BronzeIIICapacity(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get BronzeIVCapacity(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get SilverICapacity(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get SilverIICapacity(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get SilverIIICapacity(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public get SilverIVCapacity(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get GoldICapacity(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public get GoldIICapacity(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get GoldIIICapacity(): number {
            return this.readTypePrimitive(52, "int", 1);
        }
        public get GoldIVCapacity(): number {
            return this.readTypePrimitive(56, "int", 1);
        }
        public get BronzeIUpCount(): number {
            return this.readTypePrimitive(60, "int", 1);
        }
        public get BronzeIIUpCount(): number {
            return this.readTypePrimitive(64, "int", 1);
        }
        public get BronzeIIDownCount(): number {
            return this.readTypePrimitive(68, "int", 1);
        }
        public get BronzeIIIUpCount(): number {
            return this.readTypePrimitive(72, "int", 1);
        }
        public get BronzeIIIDownCount(): number {
            return this.readTypePrimitive(76, "int", 1);
        }
        public get BronzeIVUpCount(): number {
            return this.readTypePrimitive(80, "int", 1);
        }
        public get BronzeIVDownCount(): number {
            return this.readTypePrimitive(84, "int", 1);
        }
        public get SilverIUpCount(): number {
            return this.readTypePrimitive(88, "int", 1);
        }
        public get SilverIDownCount(): number {
            return this.readTypePrimitive(92, "int", 1);
        }
        public get SilverIIUpCount(): number {
            return this.readTypePrimitive(96, "int", 1);
        }
        public get SilverIIDownCount(): number {
            return this.readTypePrimitive(100, "int", 1);
        }
        public get SilverIIIUpCount(): number {
            return this.readTypePrimitive(104, "int", 1);
        }
        public get SilverIIIDownCount(): number {
            return this.readTypePrimitive(108, "int", 1);
        }
        public get SilverIVUpCount(): number {
            return this.readTypePrimitive(112, "int", 1);
        }
        public get SilverIVDownCount(): number {
            return this.readTypePrimitive(116, "int", 1);
        }
        public get GoldIUpCount(): number {
            return this.readTypePrimitive(120, "int", 1);
        }
        public get GoldIDownCount(): number {
            return this.readTypePrimitive(124, "int", 1);
        }
        public get GoldIIUpCount(): number {
            return this.readTypePrimitive(128, "int", 1);
        }
        public get GoldIIDownCount(): number {
            return this.readTypePrimitive(132, "int", 1);
        }
        public get GoldIIIUpCount(): number {
            return this.readTypePrimitive(136, "int", 1);
        }
        public get GoldIIIDownCount(): number {
            return this.readTypePrimitive(140, "int", 1);
        }
        public get GoldIVDownCount(): number {
            return this.readTypePrimitive(144, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle.Arena3x3 {
    export class ArenaLeagueGroupBoundariesInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.Arena3x3.ArenaLeagueGroupBoundariesInfo";
        static get size() { return 36 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57016904;
        public static fieldNames: string[] = ["LowGroupBoundaryMin", "LowGroupBoundaryMax", "MidGroupBoundaryMin", "MidGroupBoundaryMax", "HighGroupBoundaryMin", "HighGroupBoundaryMax"];
        public get LowGroupBoundaryMin(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get LowGroupBoundaryMax(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get MidGroupBoundaryMin(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get MidGroupBoundaryMax(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get HighGroupBoundaryMin(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get HighGroupBoundaryMax(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.DailyRewards.Data {
    export class StaticDailyRewardData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.DailyRewards.Data.StaticDailyRewardData";
        static get size() { return 24 + 8; }
        public static address = 56496488;
        public static fieldNames: string[] = ["Settings", "Programs"];
        public get Settings(): codegen.SharedModel.Meta.LoyaltyProgram.Data.LoyaltyProgramSettings {
            return this.readField(16, codegen.SharedModel.Meta.LoyaltyProgram.Data.LoyaltyProgramSettings, 2);
        }
        public get Programs(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Meta.DailyRewards.Data.DailyRewardProgramDay>> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.DailyRewards.Data.DailyRewardProgramDay));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.LoyaltyProgram.Data {
    export class LoyaltyProgramSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.LoyaltyProgram.Data.LoyaltyProgramSettings";
        static get size() { return 48 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56513400;
        public static fieldNames: string[] = ["LoyaltyProgramEnabled", "RequiredLevel", "Daily90StartDayForOldUsers", "ActiveLoyaltyPrograms", "EnabledDailyRewardPrograms", "SkipTrackingDailyReward"];
        public get LoyaltyProgramEnabled(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get RequiredLevel(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Daily90StartDayForOldUsers(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get ActiveLoyaltyPrograms(): System.Collections.Generic.List<number> {
            return this.readField(32, System.Collections.Generic.List, 2, "int");
        }
        public get EnabledDailyRewardPrograms(): System.Collections.Generic.List<codegen.SharedModel.Meta.LoyaltyProgram.Data.DailyRewardProgramSettings> {
            return this.readField(40, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.LoyaltyProgram.Data.DailyRewardProgramSettings);
        }
        public get SkipTrackingDailyReward(): boolean {
            return this.readTypePrimitive(48, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.LoyaltyProgram.Data {
    export class DailyRewardProgramSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.LoyaltyProgram.Data.DailyRewardProgramSettings";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57047656;
        public static fieldNames: string[] = ["Type", "RewardHeroTypeId"];
        public get Type(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get RewardHeroTypeId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.DailyRewards.Data {
    export class DailyRewardProgramDay extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.DailyRewards.Data.DailyRewardProgramDay";
        static get size() { return 32 + 8; }
        public static address = 56496216;
        public static fieldNames: string[] = ["Id", "Day", "Prize", "Text"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Day(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Prize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(24, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get Text(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(32, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Inbox {
    export class StaticInboxData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Inbox.StaticInboxData";
        static get size() { return 48 + il2js.NativeStruct.sizeof("double"); }
        public static address = 56512896;
        public static fieldNames: string[] = ["MaxInboxItemsCount", "ItemLifeTimeDaysByTypeId", "TokensLifeTimeDaysByTypeId", "Tokens3X3LifeTimeDaysByTypeId", "ItemWithTokensLifeTimeDays"];
        public get MaxInboxItemsCount(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ItemLifeTimeDaysByTypeId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get TokensLifeTimeDaysByTypeId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get Tokens3X3LifeTimeDaysByTypeId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get ItemWithTokensLifeTimeDays(): number {
            return this.readTypePrimitive(48, "double", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AbTests {
    export class StaticAbTestData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AbTests.StaticAbTestData";
        static get size() { return 24 + 8; }
        public static address = 56464376;
        public static fieldNames: string[] = ["AbTestsById", "Settings"];
        public get AbTestsById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.AbTests.AbTestType> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.AbTests.AbTestType);
        }
        public get Settings(): codegen.SharedModel.Meta.AbTests.AbTestSettings {
            return this.readField(24, codegen.SharedModel.Meta.AbTests.AbTestSettings, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AbTests {
    export class AbTestType extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AbTests.AbTestType";
        static get size() { return 88 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56463800;
        public static fieldNames: string[] = ["Id", "StartTime", "ProbabilityByGroupId", "SummonImproveByGroupId", "BonusesByGroupId", "UserLevelByGroupId", "UserLevelsByGroupId", "Delayed"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get StartTime(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public get ProbabilityByGroupId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", "double");
        }
        public get SummonImproveByGroupId(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Meta.AbTests.ShardImproveInfo>> {
            return this.readField(56, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.AbTests.ShardImproveInfo));
        }
        public get BonusesByGroupId(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public get UserLevelByGroupId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get UserLevelsByGroupId(): System.Collections.Generic.Dictionary<number, System.Internal.ManagedArray<number>> {
            return this.readField(80, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Internal.ManagedArray, "int"));
        }
        public get Delayed(): boolean {
            return this.readTypePrimitive(88, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AbTests {
    export class ShardImproveInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AbTests.ShardImproveInfo";
        static get size() { return 44 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56464072;
        public static fieldNames: string[] = ["ShardTypeId", "Tries", "IncreaseChance", "IncreaseChanceCap", "GeometricProgression", "ImproveRarity"];
        public get ShardTypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Tries(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get IncreaseChance(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public get IncreaseChanceCap(): number {
            return this.readTypePrimitive(32, "double", 1);
        }
        public get GeometricProgression(): boolean {
            return this.readTypePrimitive(40, "bool", 1);
        }
        public get ImproveRarity(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AbTests {
    export class AbTestSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AbTests.AbTestSettings";
        static get size() { return 32 + 8; }
        public static address = 56463232;
        public static fieldNames: string[] = ["StoryDifficultyFormationIndexForB", "ActiveTests", "ProbabilitiesForAbTest"];
        public get StoryDifficultyFormationIndexForB(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ActiveTests(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public get ProbabilitiesForAbTest(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, number>> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", "double"));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.SessionChests {
    export class StaticSessionChestData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.SessionChests.StaticSessionChestData";
        static get size() { return 16 + 8; }
        public static address = 56544440;
        public static fieldNames: string[] = ["UserPrizeByMinutes"];
        public get UserPrizeByMinutes(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Masteries {
    export class StaticMasteryData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Masteries.StaticMasteryData";
        static get size() { return 72 + 8; }
        public static address = 56515528;
        public static fieldNames: string[] = ["ResetPrice", "Settings", "MasteryTypes", "MasteryLimits", "MasteryBonusById", "MaxMasteriesCount", "MaxMasteryPoints", "MasteryById"];
        public get ResetPrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(16, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get Settings(): codegen.SharedModel.Meta.Masteries.MasterySettings {
            return this.readField(24, codegen.SharedModel.Meta.Masteries.MasterySettings, 2);
        }
        public get MasteryTypes(): System.Collections.Generic.List<codegen.SharedModel.Meta.Masteries.MasteryType> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Masteries.MasteryType);
        }
        public get MasteryLimits(): System.Collections.Generic.List<codegen.SharedModel.Meta.Masteries.MasteryLimit> {
            return this.readField(40, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Masteries.MasteryLimit);
        }
        public get MasteryBonusById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetStatBonus> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Artifacts.Sets.ArtifactSetStatBonus);
        }
        public get MaxMasteriesCount(): number {
            return this.readTypePrimitive(56, "int", 1);
        }
        public get MaxMasteryPoints(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get MasteryById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Masteries.MasteryType> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Masteries.MasteryType);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Masteries {
    export class MasterySettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Masteries.MasterySettings";
        static get size() { return 48 + 8; }
        public static address = 57049664;
        public static fieldNames: string[] = ["Enabled", "ResetMasteriesEnabled", "BuyPointsEnabled", "ResetEnabled", "ResetPriceInGems", "BuyPointsPriceInGems", "_resetPrice", "_buyPointsPrice"];
        public get Enabled(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get ResetMasteriesEnabled(): boolean {
            return this.readTypePrimitive(17, "bool", 1);
        }
        public get BuyPointsEnabled(): boolean {
            return this.readTypePrimitive(18, "bool", 1);
        }
        public get ResetEnabled(): boolean {
            return this.readTypePrimitive(19, "bool", 1);
        }
        public get ResetPriceInGems(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public get BuyPointsPriceInGems(): number {
            return this.readTypePrimitive(32, "double", 1);
        }
        public get _resetPrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(40, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get _buyPointsPrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(48, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Masteries {
    export class MasteryType extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Masteries.MasteryType";
        static get size() { return 56 + 8; }
        public static address = 57049864;
        public static fieldNames: string[] = ["Id", "Price", "ParentIds", "ChildIds", "_parents", "_childs"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Price(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get ParentIds(): System.Collections.Generic.List<number> {
            return this.readField(32, System.Collections.Generic.List, 2, "int");
        }
        public get ChildIds(): System.Collections.Generic.List<number> {
            return this.readField(40, System.Collections.Generic.List, 2, "int");
        }
        public get _parents(): System.Collections.Generic.List<codegen.SharedModel.Meta.Masteries.MasteryType> {
            return this.readField(48, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Masteries.MasteryType);
        }
        public get _childs(): System.Collections.Generic.List<codegen.SharedModel.Meta.Masteries.MasteryType> {
            return this.readField(56, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Masteries.MasteryType);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Masteries {
    export class MasteryLimit extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Masteries.MasteryLimit";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56515072;
        public static fieldNames: string[] = ["MaxInRow", "MaxInTree"];
        public get MaxInRow(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get MaxInTree(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.LoyaltyProgram.Data {
    export class StaticLoyaltyProgramData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.LoyaltyProgram.Data.StaticLoyaltyProgramData";
        static get size() { return 24 + 8; }
        public static address = 56513640;
        public static fieldNames: string[] = ["Settings", "LoyaltyProgramDaysByProgramTypeId"];
        public get Settings(): codegen.SharedModel.Meta.LoyaltyProgram.Data.LoyaltyProgramSettings {
            return this.readField(16, codegen.SharedModel.Meta.LoyaltyProgram.Data.LoyaltyProgramSettings, 2);
        }
        public get LoyaltyProgramDaysByProgramTypeId(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Meta.LoyaltyProgram.Data.LoyaltyProgramDay>> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.LoyaltyProgram.Data.LoyaltyProgramDay));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.LoyaltyProgram.Data {
    export class LoyaltyProgramDay extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.LoyaltyProgram.Data.LoyaltyProgramDay";
        static get size() { return 32 + 8; }
        public static address = 56513072;
        public static fieldNames: string[] = ["Id", "Day", "Prize", "Text"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Day(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Prize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(24, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get Text(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(32, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class StaticAllianceData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.StaticAllianceData";
        static get size() { return 96 + 8; }
        public static address = 56472440;
        public static fieldNames: string[] = ["Settings", "AchievementTypes", "BossTypes", "BossRewards", "BossRewardConditions", "BossBattleStartPrice", "BossRefreshTime", "BossBattleHeroSlotsCount", "ActivityRewards", "RemindLevel", "BossHeroTypeIds"];
        public get Settings(): codegen.SharedModel.Meta.Alliances.AllianceSettings {
            return this.readField(16, codegen.SharedModel.Meta.Alliances.AllianceSettings, 2);
        }
        public get AchievementTypes(): System.Collections.Generic.List<codegen.SharedModel.Meta.Alliances.AllianceAchievementType> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Alliances.AllianceAchievementType);
        }
        public get BossTypes(): System.Collections.Generic.List<codegen.SharedModel.Meta.Alliances.Boss.AllianceBossType> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Alliances.Boss.AllianceBossType);
        }
        public get BossRewards(): System.Collections.Generic.List<codegen.SharedModel.Meta.Alliances.Boss.AllianceBossReward> {
            return this.readField(40, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Alliances.Boss.AllianceBossReward);
        }
        public get BossRewardConditions(): System.Collections.Generic.List<codegen.SharedModel.Meta.Alliances.Boss.AllianceBossRewardRange> {
            return this.readField(48, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Alliances.Boss.AllianceBossRewardRange);
        }
        public get BossBattleStartPrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(56, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get BossRefreshTime(): System.TimeSpan {
            return this.readField(64, System.TimeSpan, 2);
        }
        public get BossBattleHeroSlotsCount(): number {
            return this.readTypePrimitive(72, "int", 1);
        }
        public get ActivityRewards(): System.Collections.Generic.List<codegen.SharedModel.Meta.Stages.FlexibleReward> {
            return this.readField(80, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Stages.FlexibleReward);
        }
        public get RemindLevel(): number {
            return this.readTypePrimitive(88, "int", 1);
        }
        public get BossHeroTypeIds(): System.Collections.Generic.List<number> {
            return this.readField(96, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class AllianceSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.AllianceSettings";
        static get size() { return 352 + 8; }
        public static address = 56468760;
        public static fieldNames: string[] = ["Enabled", "AchievementStorageSyncCooldownSeconds", "RevealUserLevel", "CreationPriceGems", "CreationRequiredUserLevel", "MaximumInvitationCount", "MaximumRequestsCount", "MaximumUserPendingRequestsNumber", "DeletionPeriodHours", "AllianceSize", "MaxDeputyCount", "NameCharactersLimit", "NameCharactersMin", "AbbreviationCharactersLimit", "AbbreviationCharactersMin", "DescriptionCharactersLimit", "MessageCharactersLimit", "MaxBossKeys", "FreeBossKeyHours", "StartPriceKeys", "BossLifetimeDays", "RefreshTimeHoursUtc", "BEventNormalizeAllianceSpreadingSeconds", "BEventNormalizeAllianceConcurrencyLevel", "RequiredActivityStars", "ActivityRecalcDelayMinutes", "ActivityDegreeOfParallelism", "ActivityRefreshDays", "StoreActivityInfoDays", "MaxAllianceActivityStars", "StoreRequestsDays", "RenamePriceInGems", "ChangeAbbreviationPriceInGems", "RenameDelayHours", "ChangeAbbreviationDelayHours", "MaxSearchAllianceCount", "SearchAllianceCount", "SegmentsBlockLength", "UpdateAlliancesSearchDataDelaySeconds", "RefreshThisSegmentAlliancesSearchDataDelaySeconds", "UpdateFullSearchStartDelaySeconds", "AllianceChatEnabled", "LogOnSearch", "ActionPointsByLeaderLastSignInDaysPassed", "ActionPointsByMembersCount", "RatioByMedalTypes", "DailyActivityInfoSettings", "InactiveUserStatusDelayDays", "DemotionInactiveLeaderDelayDays", "CvcSettings", "ImprovementsSettings", "_renamePrice", "_changeAbbreviationPrice"];
        public get Enabled(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get AchievementStorageSyncCooldownSeconds(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public get RevealUserLevel(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get CreationPriceGems(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public get CreationRequiredUserLevel(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get MaximumInvitationCount(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public get MaximumRequestsCount(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get MaximumUserPendingRequestsNumber(): number {
            return this.readTypePrimitive(52, "int", 1);
        }
        public get DeletionPeriodHours(): number {
            return this.readTypePrimitive(56, "double", 1);
        }
        public get AllianceSize(): number {
            return this.readTypePrimitive(64, "int", 1);
        }
        public get MaxDeputyCount(): number {
            return this.readTypePrimitive(68, "int", 1);
        }
        public get NameCharactersLimit(): number {
            return this.readTypePrimitive(72, "int", 1);
        }
        public get NameCharactersMin(): number {
            return this.readTypePrimitive(76, "int", 1);
        }
        public get AbbreviationCharactersLimit(): number {
            return this.readTypePrimitive(80, "int", 1);
        }
        public get AbbreviationCharactersMin(): number {
            return this.readTypePrimitive(84, "int", 1);
        }
        public get DescriptionCharactersLimit(): number {
            return this.readTypePrimitive(88, "int", 1);
        }
        public get MessageCharactersLimit(): number {
            return this.readTypePrimitive(92, "int", 1);
        }
        public get MaxBossKeys(): number {
            return this.readTypePrimitive(96, "int", 1);
        }
        public get FreeBossKeyHours(): number {
            return this.readTypePrimitive(104, "double", 1);
        }
        public get StartPriceKeys(): number {
            return this.readTypePrimitive(112, "int", 1);
        }
        public get BossLifetimeDays(): number {
            return this.readTypePrimitive(120, "double", 1);
        }
        public get RefreshTimeHoursUtc(): number {
            return this.readTypePrimitive(128, "double", 1);
        }
        public get BEventNormalizeAllianceSpreadingSeconds(): number {
            return this.readTypePrimitive(136, "int", 1);
        }
        public get BEventNormalizeAllianceConcurrencyLevel(): number {
            return this.readTypePrimitive(140, "int", 1);
        }
        public get RequiredActivityStars(): number {
            return this.readTypePrimitive(144, "int", 1);
        }
        public get ActivityRecalcDelayMinutes(): number {
            return this.readTypePrimitive(152, "double", 1);
        }
        public get ActivityDegreeOfParallelism(): number {
            return this.readTypePrimitive(160, "int", 1);
        }
        public get ActivityRefreshDays(): number {
            return this.readTypePrimitive(168, "double", 1);
        }
        public get StoreActivityInfoDays(): number {
            return this.readTypePrimitive(176, "double", 1);
        }
        public get MaxAllianceActivityStars(): number {
            return this.readTypePrimitive(184, "int", 1);
        }
        public get StoreRequestsDays(): number {
            return this.readTypePrimitive(192, "double", 1);
        }
        public get RenamePriceInGems(): number {
            return this.readTypePrimitive(200, "double", 1);
        }
        public get ChangeAbbreviationPriceInGems(): number {
            return this.readTypePrimitive(208, "double", 1);
        }
        public get RenameDelayHours(): number {
            return this.readTypePrimitive(216, "double", 1);
        }
        public get ChangeAbbreviationDelayHours(): number {
            return this.readTypePrimitive(224, "double", 1);
        }
        public get MaxSearchAllianceCount(): number {
            return this.readTypePrimitive(232, "int", 1);
        }
        public get SearchAllianceCount(): number {
            return this.readTypePrimitive(236, "int", 1);
        }
        public get SegmentsBlockLength(): number {
            return this.readTypePrimitive(240, "byte", 1);
        }
        public get UpdateAlliancesSearchDataDelaySeconds(): number {
            return this.readTypePrimitive(248, "double", 1);
        }
        public get RefreshThisSegmentAlliancesSearchDataDelaySeconds(): number {
            return this.readTypePrimitive(256, "double", 1);
        }
        public get UpdateFullSearchStartDelaySeconds(): number {
            return this.readTypePrimitive(264, "double", 1);
        }
        public get AllianceChatEnabled(): boolean {
            return this.readTypePrimitive(272, "bool", 1);
        }
        public get LogOnSearch(): boolean {
            return this.readTypePrimitive(273, "bool", 1);
        }
        public get ActionPointsByLeaderLastSignInDaysPassed(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(280, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get ActionPointsByMembersCount(): System.Internal.ManagedArray<number> {
            return this.readField(288, System.Internal.ManagedArray, 2, "int");
        }
        public get RatioByMedalTypes(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, number>> {
            return this.readField(296, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", "int"));
        }
        public get DailyActivityInfoSettings(): codegen.SharedModel.Meta.Alliances.DailyActivityInfoSettings {
            return this.readField(304, codegen.SharedModel.Meta.Alliances.DailyActivityInfoSettings, 2);
        }
        public get InactiveUserStatusDelayDays(): number {
            return this.readTypePrimitive(312, "double", 1);
        }
        public get DemotionInactiveLeaderDelayDays(): number {
            return this.readTypePrimitive(320, "double", 1);
        }
        public get CvcSettings(): codegen.SharedModel.Meta.CvcTournament.CvcSettings {
            return this.readField(328, codegen.SharedModel.Meta.CvcTournament.CvcSettings, 2);
        }
        public get ImprovementsSettings(): codegen.SharedModel.Meta.Alliances.ImprovementsSettings {
            return this.readField(336, codegen.SharedModel.Meta.Alliances.ImprovementsSettings, 2);
        }
        public get _renamePrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(344, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get _changeAbbreviationPrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(352, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class DailyActivityInfoSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.DailyActivityInfoSettings";
        static get size() { return 72 + il2js.NativeStruct.sizeof("double"); }
        public static address = 57003464;
        public static fieldNames: string[] = ["TwoStarsOnlineTimeMs", "TwoStarsClanDungeonBossCount", "TwoStarsStoryAndDungeonBattlesCount", "TwoStarsArenaBattlesCount", "ThreeStarsOnlineTimeMs", "ThreeStarsClanDungeonBossCount", "ThreeStarsStoryAndDungeonBattlesCount", "ThreeStarsArenaBattlesCount"];
        public get TwoStarsOnlineTimeMs(): number {
            return this.readTypePrimitive(16, "double", 1);
        }
        public get TwoStarsClanDungeonBossCount(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public get TwoStarsStoryAndDungeonBattlesCount(): number {
            return this.readTypePrimitive(32, "double", 1);
        }
        public get TwoStarsArenaBattlesCount(): number {
            return this.readTypePrimitive(40, "double", 1);
        }
        public get ThreeStarsOnlineTimeMs(): number {
            return this.readTypePrimitive(48, "double", 1);
        }
        public get ThreeStarsClanDungeonBossCount(): number {
            return this.readTypePrimitive(56, "double", 1);
        }
        public get ThreeStarsStoryAndDungeonBattlesCount(): number {
            return this.readTypePrimitive(64, "double", 1);
        }
        public get ThreeStarsArenaBattlesCount(): number {
            return this.readTypePrimitive(72, "double", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.CvcTournament {
    export class CvcSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.CvcTournament.CvcSettings";
        static get size() { return 41 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57003552;
        public static fieldNames: string[] = ["Enabled", "CalcTiersMinutesPriorStart", "MembersCountToParticipate", "StarsCountToParticipate", "EnableMilestoneReachedLogging", "EnableAddPointsLogging"];
        public get Enabled(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get CalcTiersMinutesPriorStart(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public get MembersCountToParticipate(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get StarsCountToParticipate(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public get EnableMilestoneReachedLogging(): boolean {
            return this.readTypePrimitive(40, "bool", 1);
        }
        public get EnableAddPointsLogging(): boolean {
            return this.readTypePrimitive(41, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class ImprovementsSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.ImprovementsSettings";
        static get size() { return 80 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57003664;
        public static fieldNames: string[] = ["AllianceFilteringEnabled", "AllianceRequiredPowerEnabled", "AllianceSwapEnabled", "AllianceInvitationsRejectionEnabled", "AllianceQuickJoinEnabled", "AllianceServerQuickJoinEnabled", "AlliancePromotionEnabled", "SearchResultsSortingEnabled", "AppropriateAlliancesSortingEnabled", "FilteredSearchResultsCount", "PromotionActionPoints", "PromotionActiveHours", "PromotionCooldownHours", "AllianceMinExistenceDaysForPromotion", "AllianceMinMembersForPromotion", "MaxAlliancePowerForFilter", "MaxRatingPointsForFilter", "LoggedFilteredAlliancesCount"];
        public get AllianceFilteringEnabled(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get AllianceRequiredPowerEnabled(): boolean {
            return this.readTypePrimitive(17, "bool", 1);
        }
        public get AllianceSwapEnabled(): boolean {
            return this.readTypePrimitive(18, "bool", 1);
        }
        public get AllianceInvitationsRejectionEnabled(): boolean {
            return this.readTypePrimitive(19, "bool", 1);
        }
        public get AllianceQuickJoinEnabled(): boolean {
            return this.readTypePrimitive(20, "bool", 1);
        }
        public get AllianceServerQuickJoinEnabled(): boolean {
            return this.readTypePrimitive(21, "bool", 1);
        }
        public get AlliancePromotionEnabled(): boolean {
            return this.readTypePrimitive(22, "bool", 1);
        }
        public get SearchResultsSortingEnabled(): boolean {
            return this.readTypePrimitive(23, "bool", 1);
        }
        public get AppropriateAlliancesSortingEnabled(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public get FilteredSearchResultsCount(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get PromotionActionPoints(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get PromotionActiveHours(): number {
            return this.readTypePrimitive(40, "double", 1);
        }
        public get PromotionCooldownHours(): number {
            return this.readTypePrimitive(48, "double", 1);
        }
        public get AllianceMinExistenceDaysForPromotion(): number {
            return this.readTypePrimitive(56, "double", 1);
        }
        public get AllianceMinMembersForPromotion(): number {
            return this.readTypePrimitive(64, "double", 1);
        }
        public get MaxAlliancePowerForFilter(): number {
            return this.readTypePrimitive(72, "int", 1);
        }
        public get MaxRatingPointsForFilter(): number {
            return this.readTypePrimitive(76, "int", 1);
        }
        public get LoggedFilteredAlliancesCount(): number {
            return this.readTypePrimitive(80, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class AllianceAchievementType extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.AllianceAchievementType";
        static get size() { return 40 + 8; }
        public static address = 56466024;
        public static fieldNames: string[] = ["TypeId", "Name", "Description", "LevelInfos"];
        public get TypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Name(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(24, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get Description(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(32, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get LevelInfos(): System.Collections.Generic.List<codegen.SharedModel.Meta.Alliances.AllianceAchievementLevelInfo> {
            return this.readField(40, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Alliances.AllianceAchievementLevelInfo);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class AllianceAchievementLevelInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.AllianceAchievementLevelInfo";
        static get size() { return 32 + il2js.NativeStruct.sizeof("long"); }
        public static address = 56465808;
        public static fieldNames: string[] = ["Value", "RatingBonus"];
        public get Value(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get RatingBonus(): number {
            return this.readTypePrimitive(32, "long", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances.Boss {
    export class AllianceBossType extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.Boss.AllianceBossType";
        static get size() { return 40 + 8; }
        public static address = 56470312;
        public static fieldNames: string[] = ["Id", "Health", "HeroTypeId", "Level", "RewardTypeIdByRange", "StageIdByElement"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Health(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get HeroTypeId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Level(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get RewardTypeIdByRange(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get StageIdByElement(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances.Boss {
    export class AllianceBossReward extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.Boss.AllianceBossReward";
        static get size() { return 32 + 8; }
        public static address = 57003880;
        public static fieldNames: string[] = ["TypeId", "Range", "FlexibleReward"];
        public get TypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Range(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get FlexibleReward(): codegen.SharedModel.Meta.Stages.FlexibleReward {
            return this.readField(32, codegen.SharedModel.Meta.Stages.FlexibleReward, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances.Boss {
    export class AllianceBossRewardRange extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.Boss.AllianceBossRewardRange";
        static get size() { return 32 + il2js.NativeStruct.sizeof("double"); }
        public static address = 56469832;
        public static fieldNames: string[] = ["RangeId", "LowPercent", "HighPercent"];
        public get RangeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get LowPercent(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public get HighPercent(): number {
            return this.readTypePrimitive(32, "double", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Notifications {
    export class StaticNotificationData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Notifications.StaticNotificationData";
        static get size() { return 32 + 8; }
        public static address = 56518968;
        public static fieldNames: string[] = ["Settings", "DisabledTypeIds", "Messages"];
        public get Settings(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Notifications.NotificationSettingsGroupData> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Notifications.NotificationSettingsGroupData);
        }
        public get DisabledTypeIds(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public get Messages(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Common.Localization.SharedLTextKey> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Common.Localization.SharedLTextKey);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Notifications {
    export class NotificationSettingsGroupData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Notifications.NotificationSettingsGroupData";
        static get size() { return 32 + il2js.NativeStruct.sizeof("long"); }
        public static address = 56517576;
        public static fieldNames: string[] = ["NotificationTypes", "Name", "Revision"];
        public get NotificationTypes(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public get Name(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(24, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get Revision(): number {
            return this.readTypePrimitive(32, "long", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.DailyUpdates {
    export class StaticDailyUpdateData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.DailyUpdates.StaticDailyUpdateData";
        static get size() { return 24 + 8; }
        public static address = 57029504;
        public static fieldNames: string[] = ["Types", "_types"];
        public get Types(): System.Collections.Generic.List<codegen.SharedModel.Meta.DailyUpdates.Entities.DailyUpdateType> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.DailyUpdates.Entities.DailyUpdateType);
        }
        public get _types(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.DailyUpdates.Entities.DailyUpdateType> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.DailyUpdates.Entities.DailyUpdateType);
        }
        public static staticMethods = {
            ".cctor": () => new il2js.MethodInfo(56696904)
        };
    }
}
export namespace codegen.SharedModel.Meta.DailyUpdates.Entities {
    export class DailyUpdateType extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.DailyUpdates.Entities.DailyUpdateType";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56497016;
        public static fieldNames: string[] = ["Id", "PeriodDays"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get PeriodDays(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ReferralProgram.Data {
    export class StaticReferralProgramData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ReferralProgram.Data.StaticReferralProgramData";
        static get size() { return 72 + 8; }
        public static address = 56540528;
        public static fieldNames: string[] = ["ProgressRewards", "AllSlotsFullReward", "ReferralNoviceReward", "Settings", "InfluencerRewardTypes", "RewardsByReferralLevel", "InfluencerRewardsByTypeId", "MilestoneLevels"];
        public get ProgressRewards(): System.Collections.Generic.List<codegen.SharedModel.Meta.ReferralProgram.Data.ReferralReward> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.ReferralProgram.Data.ReferralReward);
        }
        public get AllSlotsFullReward(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(24, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get ReferralNoviceReward(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(32, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get Settings(): codegen.SharedModel.Meta.ReferralProgram.Data.ReferralProgramSettings {
            return this.readField(40, codegen.SharedModel.Meta.ReferralProgram.Data.ReferralProgramSettings, 2);
        }
        public get InfluencerRewardTypes(): System.Collections.Generic.List<codegen.SharedModel.Meta.ReferralProgram.Data.InfluencerRewardType> {
            return this.readField(48, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.ReferralProgram.Data.InfluencerRewardType);
        }
        public get RewardsByReferralLevel(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(56, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public get InfluencerRewardsByTypeId(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public get MilestoneLevels(): System.Internal.ManagedArray<number> {
            return this.readField(72, System.Internal.ManagedArray, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ReferralProgram.Data {
    export class ReferralReward extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ReferralProgram.Data.ReferralReward";
        static get size() { return 24 + 8; }
        public static address = 56540184;
        public static fieldNames: string[] = ["Level", "Prize"];
        public get Level(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Prize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(24, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ReferralProgram.Data {
    export class ReferralProgramSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ReferralProgram.Data.ReferralProgramSettings";
        static get size() { return 32 + 8; }
        public static address = 56540080;
        public static fieldNames: string[] = ["Enabled", "FeatureUnlockLevelRequired", "IdomooIntegrationSettings", "BlackMarketItemsToInbox"];
        public get Enabled(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get FeatureUnlockLevelRequired(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get IdomooIntegrationSettings(): codegen.SharedModel.Meta.ReferralProgram.Data.IdomooIntegrationSettings {
            return this.readField(24, codegen.SharedModel.Meta.ReferralProgram.Data.IdomooIntegrationSettings, 2);
        }
        public get BlackMarketItemsToInbox(): System.Internal.ManagedArray<number> {
            return this.readField(32, System.Internal.ManagedArray, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ReferralProgram.Data {
    export class IdomooIntegrationSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ReferralProgram.Data.IdomooIntegrationSettings";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56539720;
        public static fieldNames: string[] = ["Status"];
        public get Status(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ReferralProgram.Data {
    export class InfluencerRewardType extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ReferralProgram.Data.InfluencerRewardType";
        static get size() { return 24 + 8; }
        public static address = 56539872;
        public static fieldNames: string[] = ["Id", "Prize"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Prize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(24, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AmazonIntegration {
    export class StaticAmazonIntegrationData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AmazonIntegration.StaticAmazonIntegrationData";
        static get size() { return 24 + 8; }
        public static address = 56474040;
        public static fieldNames: string[] = ["Settings", "Periods"];
        public get Settings(): codegen.SharedModel.Meta.AmazonIntegration.AmazonIntegrationSettings {
            return this.readField(16, codegen.SharedModel.Meta.AmazonIntegration.AmazonIntegrationSettings, 2);
        }
        public get Periods(): System.Collections.Generic.List<codegen.SharedModel.Meta.AmazonIntegration.AmazonIntegrationPeriod> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.AmazonIntegration.AmazonIntegrationPeriod);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AmazonIntegration {
    export class AmazonIntegrationSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AmazonIntegration.AmazonIntegrationSettings";
        static get size() { return 89 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56473584;
        public static fieldNames: string[] = ["Enabled", "DefaultAboutAmazonPrimeUrl", "AboutAmazonPrimeUrlByRegion", "DefaultAboutContentDropsUrl", "AboutContentDropsUrlByRegion", "IntegrationServiceUrl", "AmazonNotificationServiceUrl", "ExternalCallsEnabled", "ExtendedLoggingEnabled"];
        public get Enabled(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get DefaultAboutAmazonPrimeUrl(): string {
            return this.readField(40, System.String, 2);
        }
        public get AboutAmazonPrimeUrlByRegion(): System.Collections.Generic.List<codegen.SharedModel.Meta.AmazonIntegration.UrlByRegion> {
            return this.readField(48, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.AmazonIntegration.UrlByRegion);
        }
        public get DefaultAboutContentDropsUrl(): string {
            return this.readField(56, System.String, 2);
        }
        public get AboutContentDropsUrlByRegion(): System.Collections.Generic.List<codegen.SharedModel.Meta.AmazonIntegration.UrlByRegion> {
            return this.readField(64, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.AmazonIntegration.UrlByRegion);
        }
        public get IntegrationServiceUrl(): string {
            return this.readField(72, System.String, 2);
        }
        public get AmazonNotificationServiceUrl(): string {
            return this.readField(80, System.String, 2);
        }
        public get ExternalCallsEnabled(): boolean {
            return this.readTypePrimitive(88, "bool", 1);
        }
        public get ExtendedLoggingEnabled(): boolean {
            return this.readTypePrimitive(89, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AmazonIntegration {
    export class UrlByRegion extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AmazonIntegration.UrlByRegion";
        static get size() { return 24 + 8; }
        public static address = 56474112;
        public static fieldNames: string[] = ["Region", "Url"];
        public get Region(): string {
            return this.readField(16, System.String, 2);
        }
        public get Url(): string {
            return this.readField(24, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AmazonIntegration {
    export class AmazonIntegrationPeriod extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AmazonIntegration.AmazonIntegrationPeriod";
        static get size() { return 32 + 8; }
        public static address = 56473208;
        public static fieldNames: string[] = ["PeriodId", "Prize", "OfferId"];
        public get PeriodId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Prize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(24, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get OfferId(): string {
            return this.readField(32, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BattlePasses {
    export class StaticBattlePassData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BattlePasses.StaticBattlePassData";
        static get size() { return 24 + 8; }
        public static address = 56486496;
        public static fieldNames: string[] = ["BattlePasses", "Last"];
        public get BattlePasses(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.BattlePasses.BattlePass> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.BattlePasses.BattlePass);
        }
        public get Last(): codegen.SharedModel.Meta.BattlePasses.BattlePass {
            return this.readField(24, codegen.SharedModel.Meta.BattlePasses.BattlePass, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BattlePasses {
    export class BattlePass extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BattlePasses.BattlePass";
        static get size() { return 112 + 8; }
        public static address = 57020240;
        public static fieldNames: string[] = ["LogoPath", "AdminsOnly", "Start", "DurationDays", "Id", "ForceStop", "DefaultPoints", "GroupId", "Season", "Levels", "PriceIdByPaymentTypeId", "Intro"];
        public get LogoPath(): string {
            return this.readField(16, System.String, 2);
        }
        public get AdminsOnly(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public get Start(): Date {
            return this.readField(64, System.DateTime, 2);
        }
        public get DurationDays(): number {
            return this.readTypePrimitive(72, "int", 1);
        }
        public get Id(): number {
            return this.readTypePrimitive(76, "int", 1);
        }
        public get ForceStop(): boolean {
            return this.readTypePrimitive(80, "bool", 1);
        }
        public get DefaultPoints(): number {
            return this.readTypePrimitive(84, "int", 1);
        }
        public get GroupId(): number {
            return this.readTypePrimitive(88, "int", 1);
        }
        public get Season(): number {
            return this.readTypePrimitive(92, "int", 1);
        }
        public get Levels(): System.Collections.Generic.List<codegen.SharedModel.Meta.BattlePasses.BattlePassLevel> {
            return this.readField(96, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.BattlePasses.BattlePassLevel);
        }
        public get PriceIdByPaymentTypeId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(104, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get Intro(): codegen.SharedModel.Meta.BattlePasses.BattlePassIntroData {
            return this.readField(112, codegen.SharedModel.Meta.BattlePasses.BattlePassIntroData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BattlePasses {
    export class BattlePassLevel extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BattlePasses.BattlePassLevel";
        static get size() { return 32 + 8; }
        public static address = 56485648;
        public static fieldNames: string[] = ["Id", "Points", "FreeReward", "EliteReward"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Points(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get FreeReward(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(24, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get EliteReward(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(32, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BattlePasses {
    export class BattlePassIntroData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BattlePasses.BattlePassIntroData";
        static get size() { return 48 + 8; }
        public static address = 56485496;
        public static fieldNames: string[] = ["LogoUrl", "CoverBackgroundUrl", "CoverTitleKey", "CoverDescriptionKey", "Pages"];
        public get LogoUrl(): string {
            return this.readField(16, System.String, 2);
        }
        public get CoverBackgroundUrl(): string {
            return this.readField(24, System.String, 2);
        }
        public get CoverTitleKey(): string {
            return this.readField(32, System.String, 2);
        }
        public get CoverDescriptionKey(): string {
            return this.readField(40, System.String, 2);
        }
        public get Pages(): System.Collections.Generic.List<codegen.SharedModel.Meta.BattlePasses.BattlePassIntroPageData> {
            return this.readField(48, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.BattlePasses.BattlePassIntroPageData);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BattlePasses {
    export class BattlePassIntroPageData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BattlePasses.BattlePassIntroPageData";
        static get size() { return 24 + 8; }
        public static address = 56485520;
        public static fieldNames: string[] = ["BackgroundUrl", "DescriptionKey"];
        public get BackgroundUrl(): string {
            return this.readField(16, System.String, 2);
        }
        public get DescriptionKey(): string {
            return this.readField(24, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.CvcTournament.StaticData {
    export class StaticCvcData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.CvcTournament.StaticData.StaticCvcData";
        static get size() { return 80 + 8; }
        public static address = 56496056;
        public static fieldNames: string[] = ["ActivityTypesByGroup", "SwingStepPercents", "TierSizePercents", "PairsRepetitionMaxCount", "MembersCountToParticipate", "StarsCountToParticipate", "MinPointsForReward", "AllianceActivityDays", "ActivityGroupByActivityTypeId", "ActivityTypeIdsByActivityGroup"];
        public get ActivityTypesByGroup(): System.Collections.Generic.List<codegen.SharedModel.Meta.CvcTournament.StaticData.CvcActivityTypesByGroup> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.CvcTournament.StaticData.CvcActivityTypesByGroup);
        }
        public get SwingStepPercents(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "double");
        }
        public get TierSizePercents(): System.Collections.Generic.List<number> {
            return this.readField(32, System.Collections.Generic.List, 2, "double");
        }
        public get PairsRepetitionMaxCount(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get MembersCountToParticipate(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public get StarsCountToParticipate(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get MinPointsForReward(): number {
            return this.readTypePrimitive(56, "long", 1);
        }
        public get AllianceActivityDays(): number {
            return this.readTypePrimitive(64, "int", 1);
        }
        public get ActivityGroupByActivityTypeId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get ActivityTypeIdsByActivityGroup(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.HashSet<number>> {
            return this.readField(80, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.HashSet, "int"));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.CvcTournament.StaticData {
    export class CvcActivityTypesByGroup extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.CvcTournament.StaticData.CvcActivityTypesByGroup";
        static get size() { return 24 + 8; }
        public static address = 56495560;
        public static fieldNames: string[] = ["ActivityGroup", "Types"];
        public get ActivityGroup(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Types(): System.Collections.Generic.List<codegen.SharedModel.Meta.CvcTournament.StaticData.CvcActivityType> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.CvcTournament.StaticData.CvcActivityType);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.CvcTournament.StaticData {
    export class CvcActivityType extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.CvcTournament.StaticData.CvcActivityType";
        static get size() { return 32 + 8; }
        public static address = 56495368;
        public static fieldNames: string[] = ["Id", "NameKey", "Rule"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get NameKey(): string {
            return this.readField(24, System.String, 2);
        }
        public get Rule(): codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventRule {
            return this.readField(32, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventRule, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEventRule extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventRule";
        static get size() { return 88 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57037384;
        public static fieldNames: string[] = ["Artifact", "Hero", "Shard", "Resource", "Arena", "Story", "Dungeon", "Battle", "AllianceBoss", "Points"];
        public get Artifact(): codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventArtifactRule {
            return this.readField(16, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventArtifactRule, 2);
        }
        public get Hero(): codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventHeroRule {
            return this.readField(24, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventHeroRule, 2);
        }
        public get Shard(): codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventShardRule {
            return this.readField(32, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventShardRule, 2);
        }
        public get Resource(): codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventResourceReceiveRule {
            return this.readField(40, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventResourceReceiveRule, 2);
        }
        public get Arena(): codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventArenaRule {
            return this.readField(48, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventArenaRule, 2);
        }
        public get Story(): codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventStoryRule {
            return this.readField(56, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventStoryRule, 2);
        }
        public get Dungeon(): codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventDungeonRule {
            return this.readField(64, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventDungeonRule, 2);
        }
        public get Battle(): codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventBattleRule {
            return this.readField(72, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventBattleRule, 2);
        }
        public get AllianceBoss(): codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventAllianceBossRule {
            return this.readField(80, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventAllianceBossRule, 2);
        }
        public get Points(): number {
            return this.readTypePrimitive(88, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEventArtifactRule extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventArtifactRule";
        static get size() { return 56 + 8; }
        public static address = 57036152;
        public static fieldNames: string[] = ["Rarities"];
        public get Rarities(): System.Collections.Generic.List<number> {
            return this.readField(56, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEventHeroRule extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventHeroRule";
        static get size() { return 40 + 8; }
        public static address = 57036528;
        public static fieldNames: string[] = ["Elements"];
        public get Elements(): System.Collections.Generic.List<number> {
            return this.readField(40, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEventShardRule extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventShardRule";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57037488;
        public static fieldNames: string[] = ["TypeId"];
        public get TypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEventResourceReceiveRule extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventResourceReceiveRule";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57036800;
        public static fieldNames: string[] = ["TypeId"];
        public get TypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEventArenaRule extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventArenaRule";
        static get size() { return 0; }
        public static address = 57035976;
        public static fieldNames: string[] = [];
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEventStoryRule extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventStoryRule";
        static get size() { return 24 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57037584;
        public static fieldNames: string[] = ["DifficultyId", "RegionTypeId", "IsBoss"];
        public get DifficultyId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get RegionTypeId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get IsBoss(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEventDungeonRule extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventDungeonRule";
        static get size() { return 0; }
        public static address = 57036440;
        public static fieldNames: string[] = [];
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEventBattleRule extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventBattleRule";
        static get size() { return 24 + 8; }
        public static address = 57036296;
        public static fieldNames: string[] = ["RegionTypeIds"];
        public get RegionTypeIds(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEventAllianceBossRule extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventAllianceBossRule";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57035848;
        public static fieldNames: string[] = ["RewardTypeId"];
        public get RewardTypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AutoOpen {
    export class StaticAutoOpenGroupsData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AutoOpen.StaticAutoOpenGroupsData";
        static get size() { return 32 + 8; }
        public static address = 56480168;
        public static fieldNames: string[] = ["GroupTypes", "GroupTypesB", "GroupTypesC"];
        public get GroupTypes(): System.Collections.Generic.List<codegen.SharedModel.Meta.AutoOpen.Groups.AutoOpenGroupType> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.AutoOpen.Groups.AutoOpenGroupType);
        }
        public get GroupTypesB(): System.Collections.Generic.List<codegen.SharedModel.Meta.AutoOpen.Groups.AutoOpenGroupType> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.AutoOpen.Groups.AutoOpenGroupType);
        }
        public get GroupTypesC(): System.Collections.Generic.List<codegen.SharedModel.Meta.AutoOpen.Groups.AutoOpenGroupType> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.AutoOpen.Groups.AutoOpenGroupType);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AutoOpen.Groups {
    export class AutoOpenGroupType extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AutoOpen.Groups.AutoOpenGroupType";
        static get size() { return 24 + 8; }
        public static address = 56478520;
        public static fieldNames: string[] = ["Id", "Conditions"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Conditions(): System.Collections.Generic.List<codegen.SharedModel.Meta.AutoOpen.Groups.Condition> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.AutoOpen.Groups.Condition);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AutoOpen.Groups {
    export class Condition extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AutoOpen.Groups.Condition";
        static get size() { return 64 + 8; }
        public static address = 57013648;
        public static fieldNames: string[] = ["Level", "LifeTimeValue", "RegistrationDays", "LastSessionDays", "Depositor", "DepositAmounts"];
        public get Level(): codegen.SharedModel.Meta.AutoOpen.Conditions.LevelCondition {
            return this.readField(16, codegen.SharedModel.Meta.AutoOpen.Conditions.LevelCondition, 2);
        }
        public get LifeTimeValue(): codegen.SharedModel.Meta.AutoOpen.Conditions.LifeTimeValueCondition {
            return this.readField(24, codegen.SharedModel.Meta.AutoOpen.Conditions.LifeTimeValueCondition, 2);
        }
        public get RegistrationDays(): codegen.SharedModel.Meta.AutoOpen.Conditions.DaysSinceRegistrationCondition {
            return this.readField(32, codegen.SharedModel.Meta.AutoOpen.Conditions.DaysSinceRegistrationCondition, 2);
        }
        public get LastSessionDays(): codegen.SharedModel.Meta.AutoOpen.Conditions.DaysSinceLastSessionCondition {
            return this.readField(40, codegen.SharedModel.Meta.AutoOpen.Conditions.DaysSinceLastSessionCondition, 2);
        }
        public get Depositor(): codegen.SharedModel.Meta.AutoOpen.Conditions.DepositorCondition {
            return this.readField(56, codegen.SharedModel.Meta.AutoOpen.Conditions.DepositorCondition, 2);
        }
        public get DepositAmounts(): codegen.SharedModel.Meta.AutoOpen.Conditions.DepositAmountsCondition {
            return this.readField(64, codegen.SharedModel.Meta.AutoOpen.Conditions.DepositAmountsCondition, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AutoOpen.Conditions {
    export class LevelCondition extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AutoOpen.Conditions.LevelCondition";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57014840;
        public static fieldNames: string[] = ["Min", "Max"];
        public get Min(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Max(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AutoOpen.Conditions {
    export class LifeTimeValueCondition extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AutoOpen.Conditions.LifeTimeValueCondition";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57014984;
        public static fieldNames: string[] = ["Min", "Max"];
        public get Min(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Max(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AutoOpen.Conditions {
    export class DaysSinceRegistrationCondition extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AutoOpen.Conditions.DaysSinceRegistrationCondition";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57014704;
        public static fieldNames: string[] = ["Min"];
        public get Min(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AutoOpen.Conditions {
    export class DaysSinceLastSessionCondition extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AutoOpen.Conditions.DaysSinceLastSessionCondition";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57014568;
        public static fieldNames: string[] = ["Min"];
        public get Min(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AutoOpen.Conditions {
    export class DepositorCondition extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AutoOpen.Conditions.DepositorCondition";
        static get size() { return 16 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57014464;
        public static fieldNames: string[] = ["ShouldBeDepositor"];
        public get ShouldBeDepositor(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AutoOpen.Conditions {
    export class DepositAmountsCondition extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AutoOpen.Conditions.DepositAmountsCondition";
        static get size() { return 0; }
        public static address = 57014784;
        public static fieldNames: string[] = [];
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Artifacts.ArtifactStorage {
    export class ArtifactStorageResolver extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.ArtifactStorage.ArtifactStorageResolver";
        static get size() { return 0; }
        public static address = 57009952;
        public static fieldNames: string[] = [];
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model {
    export class AppModel extends codegen.Client.App.SingleInstance<codegen.Client.Model.AppModel> {
        public static [TypeName] = "codegen.Client.Model.AppModel";
        static get size() { return 344 + 8; }
        public static address = 57113568;
        public static fieldNames: string[] = [...codegen.Client.App.SingleInstance.fieldNames, "StaticDataManager", "Client", "UserId", "IsNewUser", "_userWrapper"];
        public get StaticDataManager(): codegen.Client.Model.Gameplay.StaticData.ClientStaticDataManager {
            return this.readField(96, codegen.Client.Model.Gameplay.StaticData.ClientStaticDataManager, 2);
        }
        public get Client(): codegen.SharedModel.Common.Device.ClientInfo {
            return this.readField(312, codegen.SharedModel.Common.Device.ClientInfo, 2);
        }
        public get UserId(): number {
            return this.readTypePrimitive(328, "long", 1);
        }
        public get IsNewUser(): boolean {
            return this.readTypePrimitive(336, "bool", 1);
        }
        public get _userWrapper(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(344, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public static staticMethods = {
            ...codegen.Client.App.SingleInstance.staticMethods,
            ".cctor": () => new il2js.MethodInfo(56872248),
            "Initialize": () => new il2js.MethodInfo(56872352),
            "InitializeUser": () => new il2js.MethodInfo(56872480),
            "TrackAdvertisingEvent": () => new il2js.MethodInfo(56872560)
        };
    }
}
export namespace codegen.Client.Model.Guard {
    export class UserWrapper extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Guard.UserWrapper";
        static get size() { return 440 + 8; }
        public static address = 57113384;
        public static fieldNames: string[] = ["User", "Social", "Account", "Heroes", "TrainingCamp", "Artifacts", "BlackMarket", "Stages", "Village", "Forge", "MagicShop", "Normalization", "Shards", "Inbox", "Chat", "Payment", "Subscriptions", "Quests", "PeriodicQuests", "UserGameSettings", "Arena", "UserEffect", "Loyalty", "Capitol", "Messages", "LocalNotification", "AbTest", "HourlyGiftsWrapper", "CommonDataWrapper", "Alliance", "StatsDataWrapper", "MonthlyLoyaltyProgram", "RateGame", "HeroRatingWrapper", "RecommendedQuests", "GlobalEvents", "SoloEvents", "Tournaments", "ReferralProgram", "Battle", "AutoBattle", "Fractions", "DailyUpdates", "Performance", "ServerEvents", "BattlePass", "AutoOpen", "Amazon", "Arena3x3", "Gifts", "ServerLogs", "DoomTower", "GiftLink", "CvcTournament"];
        public get User(): codegen.Client.Model.Gameplay.User.User {
            return this.readField(16, codegen.Client.Model.Gameplay.User.User, 2);
        }
        public get Social(): codegen.Client.Model.Gameplay.Social.SocialWrapperReadOnly {
            return this.readField(24, codegen.Client.Model.Gameplay.Social.SocialWrapperReadOnly, 2);
        }
        public get Account(): codegen.Client.Model.Gameplay.Account.AccountWrapperReadOnly {
            return this.readField(32, codegen.Client.Model.Gameplay.Account.AccountWrapperReadOnly, 2);
        }
        public get Heroes(): codegen.Client.Model.Gameplay.Heroes.HeroesWrapper {
            return this.readField(40, codegen.Client.Model.Gameplay.Heroes.HeroesWrapper, 2);
        }
        public get TrainingCamp(): codegen.Client.Model.Gameplay.TrainingCamp.TrainingCampWrapperReadOnly {
            return this.readField(48, codegen.Client.Model.Gameplay.TrainingCamp.TrainingCampWrapperReadOnly, 2);
        }
        public get Artifacts(): codegen.Client.Model.Gameplay.Artifacts.EquipmentWrapperReadonly {
            return this.readField(56, codegen.Client.Model.Gameplay.Artifacts.EquipmentWrapperReadonly, 2);
        }
        public get BlackMarket(): codegen.Client.Model.Gameplay.BlackMarket.BlackMarketWrapperReadOnly {
            return this.readField(64, codegen.Client.Model.Gameplay.BlackMarket.BlackMarketWrapperReadOnly, 2);
        }
        public get Stages(): codegen.Client.Model.Gameplay.Stages.StageWrapperReadOnly {
            return this.readField(72, codegen.Client.Model.Gameplay.Stages.StageWrapperReadOnly, 2);
        }
        public get Village(): codegen.Client.Model.Gameplay.Village.VillageWrapperReadOnly {
            return this.readField(80, codegen.Client.Model.Gameplay.Village.VillageWrapperReadOnly, 2);
        }
        public get Forge(): codegen.Client.Model.Gameplay.Forge.ForgeWrapperReadOnly {
            return this.readField(88, codegen.Client.Model.Gameplay.Forge.ForgeWrapperReadOnly, 2);
        }
        public get MagicShop(): codegen.Client.Model.Gameplay.MagicShop.MagicShopWrapperReadOnly {
            return this.readField(96, codegen.Client.Model.Gameplay.MagicShop.MagicShopWrapperReadOnly, 2);
        }
        public get Normalization(): codegen.Client.Model.Gameplay.Normalization.NormalizationWrapper {
            return this.readField(104, codegen.Client.Model.Gameplay.Normalization.NormalizationWrapper, 2);
        }
        public get Shards(): codegen.Client.Model.Gameplay.Shards.ShardWrapperReadOnly {
            return this.readField(112, codegen.Client.Model.Gameplay.Shards.ShardWrapperReadOnly, 2);
        }
        public get Inbox(): codegen.Client.Model.Gameplay.Inbox.InboxWrapperReadOnly {
            return this.readField(120, codegen.Client.Model.Gameplay.Inbox.InboxWrapperReadOnly, 2);
        }
        public get Chat(): codegen.Client.Model.Gameplay.Chat.ChatWrapperReadOnly {
            return this.readField(128, codegen.Client.Model.Gameplay.Chat.ChatWrapperReadOnly, 2);
        }
        public get Payment(): codegen.Client.Model.Gameplay.Payments.PaymentWrapper {
            return this.readField(136, codegen.Client.Model.Gameplay.Payments.PaymentWrapper, 2);
        }
        public get Subscriptions(): codegen.Client.Model.Gameplay.Payments.Subscriptions.SubscriptionsWrapper {
            return this.readField(144, codegen.Client.Model.Gameplay.Payments.Subscriptions.SubscriptionsWrapper, 2);
        }
        public get Quests(): codegen.Client.Model.Gameplay.Quests.QuestWrapperReadOnly {
            return this.readField(152, codegen.Client.Model.Gameplay.Quests.QuestWrapperReadOnly, 2);
        }
        public get PeriodicQuests(): codegen.Client.Model.Gameplay.Quests.PeriodicQuestWrapper {
            return this.readField(160, codegen.Client.Model.Gameplay.Quests.PeriodicQuestWrapper, 2);
        }
        public get UserGameSettings(): codegen.Client.Model.Gameplay.GameSettings.UserGameSettingsWrapperReadOnly {
            return this.readField(168, codegen.Client.Model.Gameplay.GameSettings.UserGameSettingsWrapperReadOnly, 2);
        }
        public get Arena(): codegen.Client.Model.Gameplay.Battle.ArenaWrapperReadOnly {
            return this.readField(176, codegen.Client.Model.Gameplay.Battle.ArenaWrapperReadOnly, 2);
        }
        public get UserEffect(): codegen.Client.Model.Gameplay.Effects.UserEffectWrapperReadOnly {
            return this.readField(184, codegen.Client.Model.Gameplay.Effects.UserEffectWrapperReadOnly, 2);
        }
        public get Loyalty(): codegen.Client.Model.Gameplay.DailyRewards.LoyaltyWrapperReadonly {
            return this.readField(192, codegen.Client.Model.Gameplay.DailyRewards.LoyaltyWrapperReadonly, 2);
        }
        public get Capitol(): codegen.Client.Model.Gameplay.Village.CapitolWrapperReadOnly {
            return this.readField(200, codegen.Client.Model.Gameplay.Village.CapitolWrapperReadOnly, 2);
        }
        public get Messages(): codegen.Client.Model.Gameplay.GlobalMessages.GlobalMessageWrapperReadOnly {
            return this.readField(208, codegen.Client.Model.Gameplay.GlobalMessages.GlobalMessageWrapperReadOnly, 2);
        }
        public get LocalNotification(): codegen.Client.Model.Gameplay.LocalNotifications.LocalNotificationWrapperReadOnly {
            return this.readField(216, codegen.Client.Model.Gameplay.LocalNotifications.LocalNotificationWrapperReadOnly, 2);
        }
        public get AbTest(): codegen.Client.Model.Gameplay.AbTests.UserAbTestWrapperReadOnly {
            return this.readField(224, codegen.Client.Model.Gameplay.AbTests.UserAbTestWrapperReadOnly, 2);
        }
        public get HourlyGiftsWrapper(): codegen.Client.Model.Gameplay.SessionChests.HourlyGiftsWrapperReadonly {
            return this.readField(232, codegen.Client.Model.Gameplay.SessionChests.HourlyGiftsWrapperReadonly, 2);
        }
        public get CommonDataWrapper(): codegen.Client.Model.Gameplay.CommonData.CommonDataWrapperReadonly {
            return this.readField(240, codegen.Client.Model.Gameplay.CommonData.CommonDataWrapperReadonly, 2);
        }
        public get Alliance(): codegen.Client.Model.Gameplay.Alliance.AllianceWrapper {
            return this.readField(248, codegen.Client.Model.Gameplay.Alliance.AllianceWrapper, 2);
        }
        public get StatsDataWrapper(): codegen.Client.Model.Gameplay.Stats.StatsDataWrapperReadonly {
            return this.readField(256, codegen.Client.Model.Gameplay.Stats.StatsDataWrapperReadonly, 2);
        }
        public get MonthlyLoyaltyProgram(): codegen.Client.Model.Gameplay.DailyRewards.MonthlyLoyaltyProgramWrapperReadonly {
            return this.readField(264, codegen.Client.Model.Gameplay.DailyRewards.MonthlyLoyaltyProgramWrapperReadonly, 2);
        }
        public get RateGame(): codegen.Client.Model.Gameplay.RateGame.RateGameWrapper {
            return this.readField(272, codegen.Client.Model.Gameplay.RateGame.RateGameWrapper, 2);
        }
        public get HeroRatingWrapper(): codegen.Client.Model.Gameplay.Heroes.HeroRatingWrapperReadOnly {
            return this.readField(280, codegen.Client.Model.Gameplay.Heroes.HeroRatingWrapperReadOnly, 2);
        }
        public get RecommendedQuests(): codegen.Client.Model.Gameplay.Quests.RecommendedQuestsWrapperReadOnly {
            return this.readField(288, codegen.Client.Model.Gameplay.Quests.RecommendedQuestsWrapperReadOnly, 2);
        }
        public get GlobalEvents(): codegen.Client.Model.Gameplay.GlobalEvents.GlobalEventsWrapper {
            return this.readField(296, codegen.Client.Model.Gameplay.GlobalEvents.GlobalEventsWrapper, 2);
        }
        public get SoloEvents(): codegen.Client.Model.Gameplay.GlobalEvents.SoloEventsWrapper {
            return this.readField(304, codegen.Client.Model.Gameplay.GlobalEvents.SoloEventsWrapper, 2);
        }
        public get Tournaments(): codegen.Client.Model.Gameplay.GlobalEvents.TournamentsWrapper {
            return this.readField(312, codegen.Client.Model.Gameplay.GlobalEvents.TournamentsWrapper, 2);
        }
        public get ReferralProgram(): codegen.Client.Model.Gameplay.ReferralProgram.ReferralProgramWrapperReadonly {
            return this.readField(320, codegen.Client.Model.Gameplay.ReferralProgram.ReferralProgramWrapperReadonly, 2);
        }
        public get Battle(): codegen.Client.Model.Gameplay.Battle.BattleWrapperReadonly {
            return this.readField(328, codegen.Client.Model.Gameplay.Battle.BattleWrapperReadonly, 2);
        }
        public get AutoBattle(): codegen.Client.Model.Gameplay.AutoBattle.AutoBattleWrapper {
            return this.readField(336, codegen.Client.Model.Gameplay.AutoBattle.AutoBattleWrapper, 2);
        }
        public get Fractions(): codegen.Client.Model.Gameplay.FactionWars.FractionsWrapper {
            return this.readField(344, codegen.Client.Model.Gameplay.FactionWars.FractionsWrapper, 2);
        }
        public get DailyUpdates(): codegen.Client.Model.DailyUpdatesLogic.DailyUpdatesWrapperReadonly {
            return this.readField(352, codegen.Client.Model.DailyUpdatesLogic.DailyUpdatesWrapperReadonly, 2);
        }
        public get Performance(): codegen.Client.Model.Gameplay.PerformanceData.PerformanceDataWrapperReadonly {
            return this.readField(360, codegen.Client.Model.Gameplay.PerformanceData.PerformanceDataWrapperReadonly, 2);
        }
        public get ServerEvents(): codegen.Client.Model.Gameplay.ServerEvents.ServerEventsWrapperReadOnly {
            return this.readField(368, codegen.Client.Model.Gameplay.ServerEvents.ServerEventsWrapperReadOnly, 2);
        }
        public get BattlePass(): codegen.Client.Model.Gameplay.BattlePass.BattlePassWrapperReadOnly {
            return this.readField(376, codegen.Client.Model.Gameplay.BattlePass.BattlePassWrapperReadOnly, 2);
        }
        public get AutoOpen(): codegen.Client.Model.Gameplay.AutoOpen.AutoOpenWrapperReadOnly {
            return this.readField(384, codegen.Client.Model.Gameplay.AutoOpen.AutoOpenWrapperReadOnly, 2);
        }
        public get Amazon(): codegen.Client.Model.Gameplay.Amazon.AmazonDataWrapper {
            return this.readField(392, codegen.Client.Model.Gameplay.Amazon.AmazonDataWrapper, 2);
        }
        public get Arena3x3(): codegen.Client.Model.Gameplay.Arena3x3.Arena3x3WrapperReadOnly {
            return this.readField(400, codegen.Client.Model.Gameplay.Arena3x3.Arena3x3WrapperReadOnly, 2);
        }
        public get Gifts(): codegen.Client.Model.Gameplay.Gifts.GiftsWrapperReadonly {
            return this.readField(408, codegen.Client.Model.Gameplay.Gifts.GiftsWrapperReadonly, 2);
        }
        public get ServerLogs(): codegen.Client.Model.Gameplay.ServerLogs.ServerLogsWrapperReadonly {
            return this.readField(416, codegen.Client.Model.Gameplay.ServerLogs.ServerLogsWrapperReadonly, 2);
        }
        public get DoomTower(): codegen.Client.Model.Gameplay.DoomTower.DoomTowerWrapperReadOnly {
            return this.readField(424, codegen.Client.Model.Gameplay.DoomTower.DoomTowerWrapperReadOnly, 2);
        }
        public get GiftLink(): codegen.Client.Model.Gameplay.LinkRewards.GiftLinkRewardsWrapperReadonly {
            return this.readField(432, codegen.Client.Model.Gameplay.LinkRewards.GiftLinkRewardsWrapperReadonly, 2);
        }
        public get CvcTournament(): codegen.Client.Model.Gameplay.CvcTournament.CvcTournamentWrapperReadOnly {
            return this.readField(440, codegen.Client.Model.Gameplay.CvcTournament.CvcTournamentWrapperReadOnly, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.User {
    export class User extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.User.User";
        static get size() { return 32 + 8; }
        public static address = 56444592;
        public static fieldNames: string[] = ["Id", "SocialData", "GameData"];
        public get Id(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get SocialData(): codegen.Client.Model.Gameplay.Social.Data.UserSocialData {
            return this.readField(24, codegen.Client.Model.Gameplay.Social.Data.UserSocialData, 2);
        }
        public get GameData(): codegen.Client.Model.Gameplay.User.Data.UserGameData {
            return this.readField(32, codegen.Client.Model.Gameplay.User.Data.UserGameData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Social.Data {
    export class UserSocialData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Social.Data.UserSocialData";
        static get size() { return 192 + 8; }
        public static address = 57160856;
        public static fieldNames: string[] = ["SocialId", "FullName", "Sex", "Locale", "Email", "IsApproved", "FacebookId", "RegType", "FbPaymentsTestGroup", "RegistrationSourceGroup", "NppAvailable", "BirthDate", "PlariumGlobalId", "SocialName", "SocialEmail", "IncognitoMode", "IsReceivedReengageNotification", "FacebookEmail", "IsLimitedFacebookLogin", "UnbotifySessionId", "GoogleAnalyticsId", "AppleIdOldField", "AppleId", "AppleEmail", "VendorIdentifier", "NetEaseChannelId"];
        public get SocialId(): string {
            return this.readField(16, System.String, 2);
        }
        public get FullName(): string {
            return this.readField(24, System.String, 2);
        }
        public get Sex(): string {
            return this.readField(32, System.String, 2);
        }
        public get Locale(): string {
            return this.readField(40, System.String, 2);
        }
        public get Email(): string {
            return this.readField(48, System.String, 2);
        }
        public get IsApproved(): boolean {
            return this.readTypePrimitive(56, "bool", 1);
        }
        public get FacebookId(): string {
            return this.readField(64, System.String, 2);
        }
        public get RegType(): number {
            return this.readTypePrimitive(72, "int", 1);
        }
        public get FbPaymentsTestGroup(): number {
            return this.readTypePrimitive(76, "int", 1);
        }
        public get RegistrationSourceGroup(): number {
            return this.readTypePrimitive(80, "int", 1);
        }
        public get NppAvailable(): boolean {
            return this.readTypePrimitive(84, "bool", 1);
        }
        public get BirthDate(): Date {
            return this.readField(88, System.DateTime, 2);
        }
        public get PlariumGlobalId(): number {
            return this.readTypePrimitive(96, "long", 1);
        }
        public get SocialName(): string {
            return this.readField(104, System.String, 2);
        }
        public get SocialEmail(): string {
            return this.readField(112, System.String, 2);
        }
        public get IncognitoMode(): boolean {
            return this.readTypePrimitive(120, "bool", 1);
        }
        public get IsReceivedReengageNotification(): boolean {
            return this.readTypePrimitive(121, "bool", 1);
        }
        public get FacebookEmail(): string {
            return this.readField(128, System.String, 2);
        }
        public get IsLimitedFacebookLogin(): boolean {
            return this.readTypePrimitive(136, "bool", 1);
        }
        public get UnbotifySessionId(): string {
            return this.readField(144, System.String, 2);
        }
        public get GoogleAnalyticsId(): System.Internal.ManagedArray<string> {
            return this.readField(152, System.Internal.ManagedArray, 2, System.String);
        }
        public get AppleIdOldField(): string {
            return this.readField(160, System.String, 2);
        }
        public get AppleId(): string {
            return this.readField(168, System.String, 2);
        }
        public get AppleEmail(): string {
            return this.readField(176, System.String, 2);
        }
        public get VendorIdentifier(): string {
            return this.readField(184, System.String, 2);
        }
        public get NetEaseChannelId(): string {
            return this.readField(192, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.User.Data {
    export class UserGameData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.User.Data.UserGameData";
        static get size() { return 344 + 8; }
        public static address = 56444192;
        public static fieldNames: string[] = ["Revision", "DataRevision", "NormalizationTime", "UserGameSettings", "Account", "CommonData", "HeroData", "TrainingCampData", "ArtifactData", "BlackMarketData", "StageData", "VillageData", "ForgeData", "ShardData", "MagicShopData", "InboxData", "UserChatData", "PaymentData", "OfferData", "QuestData", "ArenaData", "EffectData", "DailyRewardData", "BattleData", "GlobalMessagesData", "SessionChestData", "AllianceData", "StatsData", "MonthlyLoyaltyProgramData", "NotificationData", "ReferralProgramData", "DailyUpdateData", "AbTestData", "BattlePassData", "AutoOpenData", "AmazonIntegrationData", "Arena3x3Data", "GiftsData", "GiftLinks", "ServerEventsData", "MigrationData", "CvcData"];
        public get Revision(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get DataRevision(): number {
            return this.readTypePrimitive(24, "long", 1);
        }
        public get NormalizationTime(): Date {
            return this.readField(32, System.DateTime, 2);
        }
        public get UserGameSettings(): codegen.SharedModel.Meta.Settings.UserGameSettings {
            return this.readField(40, codegen.SharedModel.Meta.Settings.UserGameSettings, 2);
        }
        public get Account(): codegen.SharedModel.Meta.Account.UserAccount {
            return this.readField(48, codegen.SharedModel.Meta.Account.UserAccount, 2);
        }
        public get CommonData(): codegen.SharedModel.Meta.CommonData.UserCommonData {
            return this.readField(56, codegen.SharedModel.Meta.CommonData.UserCommonData, 2);
        }
        public get HeroData(): codegen.SharedModel.Meta.Heroes.UserHeroData {
            return this.readField(64, codegen.SharedModel.Meta.Heroes.UserHeroData, 2);
        }
        public get TrainingCampData(): codegen.SharedModel.Meta.TrainingCamp.UserTrainingCampData {
            return this.readField(72, codegen.SharedModel.Meta.TrainingCamp.UserTrainingCampData, 2);
        }
        public get ArtifactData(): codegen.SharedModel.Meta.Artifacts.UserArtifactData {
            return this.readField(80, codegen.SharedModel.Meta.Artifacts.UserArtifactData, 2);
        }
        public get BlackMarketData(): codegen.SharedModel.Meta.BlackMarket.UserBlackMarketData {
            return this.readField(88, codegen.SharedModel.Meta.BlackMarket.UserBlackMarketData, 2);
        }
        public get StageData(): codegen.SharedModel.Meta.Stages.UserStageData {
            return this.readField(96, codegen.SharedModel.Meta.Stages.UserStageData, 2);
        }
        public get VillageData(): codegen.SharedModel.Meta.Village.UserVillageData {
            return this.readField(104, codegen.SharedModel.Meta.Village.UserVillageData, 2);
        }
        public get ForgeData(): codegen.SharedModel.Meta.Forge.UserForgeData {
            return this.readField(112, codegen.SharedModel.Meta.Forge.UserForgeData, 2);
        }
        public get ShardData(): codegen.SharedModel.Meta.Shards.UserShardData {
            return this.readField(120, codegen.SharedModel.Meta.Shards.UserShardData, 2);
        }
        public get MagicShopData(): codegen.SharedModel.Meta.MagicShop.UserMagicShopData {
            return this.readField(128, codegen.SharedModel.Meta.MagicShop.UserMagicShopData, 2);
        }
        public get InboxData(): codegen.SharedModel.Meta.Inbox.UserInboxData {
            return this.readField(136, codegen.SharedModel.Meta.Inbox.UserInboxData, 2);
        }
        public get UserChatData(): codegen.SharedModel.Meta.Chat.UserChatData {
            return this.readField(144, codegen.SharedModel.Meta.Chat.UserChatData, 2);
        }
        public get PaymentData(): codegen.SharedModel.Meta.Payments.UserPaymentData {
            return this.readField(152, codegen.SharedModel.Meta.Payments.UserPaymentData, 2);
        }
        public get OfferData(): codegen.SharedModel.Meta.Offers.UserOfferData {
            return this.readField(160, codegen.SharedModel.Meta.Offers.UserOfferData, 2);
        }
        public get QuestData(): codegen.SharedModel.Meta.Quests.Data.UserQuestData {
            return this.readField(168, codegen.SharedModel.Meta.Quests.Data.UserQuestData, 2);
        }
        public get ArenaData(): codegen.SharedModel.Meta.Battle.Arena.UserArenaData {
            return this.readField(176, codegen.SharedModel.Meta.Battle.Arena.UserArenaData, 2);
        }
        public get EffectData(): codegen.SharedModel.Meta.Effects.UserEffectData {
            return this.readField(184, codegen.SharedModel.Meta.Effects.UserEffectData, 2);
        }
        public get DailyRewardData(): codegen.SharedModel.Meta.DailyRewards.Data.UserDailyRewardData {
            return this.readField(192, codegen.SharedModel.Meta.DailyRewards.Data.UserDailyRewardData, 2);
        }
        public get BattleData(): codegen.SharedModel.Meta.Battle.UserBattleData {
            return this.readField(200, codegen.SharedModel.Meta.Battle.UserBattleData, 2);
        }
        public get GlobalMessagesData(): codegen.SharedModel.Meta.GlobalMessages.UserGlobalMessageData {
            return this.readField(208, codegen.SharedModel.Meta.GlobalMessages.UserGlobalMessageData, 2);
        }
        public get SessionChestData(): codegen.SharedModel.Meta.SessionChests.UserSessionChestData {
            return this.readField(216, codegen.SharedModel.Meta.SessionChests.UserSessionChestData, 2);
        }
        public get AllianceData(): codegen.SharedModel.Meta.Alliances.UserAllianceData {
            return this.readField(224, codegen.SharedModel.Meta.Alliances.UserAllianceData, 2);
        }
        public get StatsData(): codegen.SharedModel.Meta.Stats.UserStatsData {
            return this.readField(232, codegen.SharedModel.Meta.Stats.UserStatsData, 2);
        }
        public get MonthlyLoyaltyProgramData(): codegen.SharedModel.Meta.LoyaltyProgram.Data.UserLoyaltyProgramData {
            return this.readField(240, codegen.SharedModel.Meta.LoyaltyProgram.Data.UserLoyaltyProgramData, 2);
        }
        public get NotificationData(): codegen.SharedModel.Meta.Notifications.UserNotificationData {
            return this.readField(248, codegen.SharedModel.Meta.Notifications.UserNotificationData, 2);
        }
        public get ReferralProgramData(): codegen.SharedModel.Meta.ReferralProgram.Data.UserReferralProgramData {
            return this.readField(256, codegen.SharedModel.Meta.ReferralProgram.Data.UserReferralProgramData, 2);
        }
        public get DailyUpdateData(): codegen.SharedModel.Meta.DailyUpdates.UserDailyUpdateData {
            return this.readField(264, codegen.SharedModel.Meta.DailyUpdates.UserDailyUpdateData, 2);
        }
        public get AbTestData(): codegen.SharedModel.Meta.AbTests.UserAbTestData {
            return this.readField(272, codegen.SharedModel.Meta.AbTests.UserAbTestData, 2);
        }
        public get BattlePassData(): codegen.SharedModel.Meta.BattlePasses.UserBattlePassData {
            return this.readField(280, codegen.SharedModel.Meta.BattlePasses.UserBattlePassData, 2);
        }
        public get AutoOpenData(): codegen.SharedModel.Meta.AutoOpen.UserAutoOpenData {
            return this.readField(288, codegen.SharedModel.Meta.AutoOpen.UserAutoOpenData, 2);
        }
        public get AmazonIntegrationData(): codegen.SharedModel.Meta.AmazonIntegration.UserAmazonIntegrationData {
            return this.readField(296, codegen.SharedModel.Meta.AmazonIntegration.UserAmazonIntegrationData, 2);
        }
        public get Arena3x3Data(): codegen.SharedModel.Meta.Battle.Arena3x3.UserArena3X3Data {
            return this.readField(304, codegen.SharedModel.Meta.Battle.Arena3x3.UserArena3X3Data, 2);
        }
        public get GiftsData(): codegen.SharedModel.Meta.Gifts.Data.UserGiftData {
            return this.readField(312, codegen.SharedModel.Meta.Gifts.Data.UserGiftData, 2);
        }
        public get GiftLinks(): codegen.SharedModel.Meta.GiftLinkRewards.GiftLinkRewardsData {
            return this.readField(320, codegen.SharedModel.Meta.GiftLinkRewards.GiftLinkRewardsData, 2);
        }
        public get ServerEventsData(): codegen.SharedModel.Meta.ServerEvents.UserServerEventsData {
            return this.readField(328, codegen.SharedModel.Meta.ServerEvents.UserServerEventsData, 2);
        }
        public get MigrationData(): codegen.SharedModel.Common.UserMigration.UserMigrationData {
            return this.readField(336, codegen.SharedModel.Common.UserMigration.UserMigrationData, 2);
        }
        public get CvcData(): codegen.SharedModel.Meta.CvcTournament.User.UserCvcData {
            return this.readField(344, codegen.SharedModel.Meta.CvcTournament.User.UserCvcData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Settings {
    export class UserGameSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Settings.UserGameSettings";
        static get size() { return 56 + 8; }
        public static address = 56545272;
        public static fieldNames: string[] = ["LocaleName", "Name", "Avatar", "CustomAvatarUrl", "ChangeNameCount", "ChangeAvatarCount", "Avatars"];
        public get LocaleName(): string {
            return this.readField(16, System.String, 2);
        }
        public get Name(): string {
            return this.readField(24, System.String, 2);
        }
        public get Avatar(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get CustomAvatarUrl(): string {
            return this.readField(40, System.String, 2);
        }
        public get ChangeNameCount(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get ChangeAvatarCount(): number {
            return this.readTypePrimitive(52, "int", 1);
        }
        public get Avatars(): System.Collections.Generic.List<codegen.SharedModel.Meta.Settings.Avatar> {
            return this.readField(56, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Settings.Avatar);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Settings {
    export class Avatar extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Settings.Avatar";
        static get size() { return 20 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56996064;
        public static fieldNames: string[] = ["Id", "Seen"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Seen(): boolean {
            return this.readTypePrimitive(20, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Account {
    export class UserAccount extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Account.UserAccount";
        static get size() { return 161 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56464728;
        public static fieldNames: string[] = ["IsAdmin", "ModeratorRole", "TotalPower", "Level", "Experience", "FullExperience", "CurrentLevelInGameTimeMs", "Resources", "ResourcesGained", "ResourcesSpent", "GemsAdded", "GemsSpent", "FreeDailyTokensAdded", "InfluencerInfo", "MilestoneRewards", "CollectedLoadingPrizeIndices", "TicketsLastRefreshTime", "DailyArena3X3TokensLastRefreshTime", "IdfaPopupShown", "FbRequiredFullLoginShown"];
        public get IsAdmin(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get ModeratorRole(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get TotalPower(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public get Level(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get Experience(): number {
            return this.readTypePrimitive(40, "long", 1);
        }
        public get FullExperience(): number {
            return this.readTypePrimitive(48, "long", 1);
        }
        public get CurrentLevelInGameTimeMs(): number {
            return this.readTypePrimitive(56, "long", 1);
        }
        public get Resources(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(72, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get ResourcesGained(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(80, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get ResourcesSpent(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(88, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get GemsAdded(): number {
            return this.readTypePrimitive(96, "double", 1);
        }
        public get GemsSpent(): number {
            return this.readTypePrimitive(104, "double", 1);
        }
        public get FreeDailyTokensAdded(): number {
            return this.readTypePrimitive(112, "double", 1);
        }
        public get InfluencerInfo(): codegen.SharedModel.Meta.Tournaments.InfluencerInfo {
            return this.readField(120, codegen.SharedModel.Meta.Tournaments.InfluencerInfo, 2);
        }
        public get MilestoneRewards(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(128, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public get CollectedLoadingPrizeIndices(): System.Collections.Generic.List<number> {
            return this.readField(136, System.Collections.Generic.List, 2, "int");
        }
        public get TicketsLastRefreshTime(): Date {
            return this.readField(144, System.DateTime, 2);
        }
        public get DailyArena3X3TokensLastRefreshTime(): Date {
            return this.readField(152, System.DateTime, 2);
        }
        public get IdfaPopupShown(): boolean {
            return this.readTypePrimitive(160, "bool", 1);
        }
        public get FbRequiredFullLoginShown(): boolean {
            return this.readTypePrimitive(161, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Tournaments {
    export class InfluencerInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Tournaments.InfluencerInfo";
        static get size() { return 16 + 8; }
        public static address = 56552416;
        public static fieldNames: string[] = ["ChannelName"];
        public get ChannelName(): string {
            return this.readField(16, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.CommonData {
    export class UserCommonData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.CommonData.UserCommonData";
        static get size() { return 252 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56493248;
        public static fieldNames: string[] = ["RegistrationTime", "LastActivityTime", "LastSignInTime", "SessionsCount", "TotalInGameTimeMs", "InGameTimeMs", "LastUserSessions", "SignInDates", "LastSessionOpenedTime", "RegistrationIp", "LastSignInIp", "ClientInfo", "UserSkippedWizard", "UserSkippedStoryline", "TimeZone", "DayInARow", "RateShownCount", "RatedValue", "LastRewardedClientVersion", "LoyaltyProgramDayByTypeId", "FacebookBusinessIds", "AccountIsDeleting", "TodayLoginsCount"];
        public get RegistrationTime(): Date {
            return this.readField(16, System.DateTime, 2);
        }
        public get LastActivityTime(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public get LastSignInTime(): Date {
            return this.readField(32, System.DateTime, 2);
        }
        public get SessionsCount(): number {
            return this.readTypePrimitive(56, "int", 1);
        }
        public get TotalInGameTimeMs(): number {
            return this.readTypePrimitive(64, "long", 1);
        }
        public get InGameTimeMs(): number {
            return this.readTypePrimitive(72, "long", 1);
        }
        public get LastUserSessions(): System.Collections.Generic.List<codegen.SharedModel.Meta.Sessions.UserSessionInfo> {
            return this.readField(80, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Sessions.UserSessionInfo);
        }
        public get SignInDates(): System.Collections.Generic.List<Date> {
            return this.readField(88, System.Collections.Generic.List, 2, System.DateTime);
        }
        public get LastSessionOpenedTime(): Date {
            return this.readField(112, System.DateTime, 2);
        }
        public get RegistrationIp(): string {
            return this.readField(136, System.String, 2);
        }
        public get LastSignInIp(): string {
            return this.readField(144, System.String, 2);
        }
        public get ClientInfo(): codegen.SharedModel.Common.Device.ClientInfo {
            return this.readField(152, codegen.SharedModel.Common.Device.ClientInfo, 2);
        }
        public get UserSkippedWizard(): boolean {
            return this.readTypePrimitive(160, "bool", 1);
        }
        public get UserSkippedStoryline(): boolean {
            return this.readTypePrimitive(161, "bool", 1);
        }
        public get TimeZone(): number {
            return this.readTypePrimitive(184, "double", 1);
        }
        public get DayInARow(): number {
            return this.readTypePrimitive(192, "int", 1);
        }
        public get RateShownCount(): number {
            return this.readTypePrimitive(216, "int", 1);
        }
        public get RatedValue(): number {
            return this.readTypePrimitive(220, "int", 1);
        }
        public get LastRewardedClientVersion(): string {
            return this.readField(224, System.String, 2);
        }
        public get LoyaltyProgramDayByTypeId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(232, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get FacebookBusinessIds(): System.Collections.Generic.Dictionary<string, string> {
            return this.readField(240, System.Collections.Generic.Dictionary, 2, System.String, System.String);
        }
        public get AccountIsDeleting(): boolean {
            return this.readTypePrimitive(248, "bool", 1);
        }
        public get TodayLoginsCount(): number {
            return this.readTypePrimitive(252, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Sessions {
    export class UserSessionInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Sessions.UserSessionInfo";
        static get size() { return 64 + 8; }
        public static address = 56544584;
        public static fieldNames: string[] = ["StartTime", "InGameTimeMs", "UserHostAddress"];
        public get StartTime(): Date {
            return this.readField(16, System.DateTime, 2);
        }
        public get InGameTimeMs(): number {
            return this.readTypePrimitive(56, "long", 1);
        }
        public get UserHostAddress(): string {
            return this.readField(64, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Common.Device {
    export class ClientInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Common.Device.ClientInfo";
        static get size() { return 376 + 8; }
        public static address = 56991456;
        public static fieldNames: string[] = ["PlatformId", "PlatformVersion", "ClientType", "DeviceName", "DeviceCodeName", "DeviceAdvertisingId", "DeviceLocale", "DeviceFullLocale", "IpAddress", "ClientName", "ClientVersion", "ClientRevision", "Obsolete", "ScreenPixelsX", "ScreenPixelsY", "Dpix", "Dpiy", "CoresCount", "CpuName", "GpuName", "GpuMemory", "DeviceMemory", "AvailableMemoryInBytes", "AnimationEnabled", "HdEnabled", "HighFrameRateEnabled", "Fps", "UserInfos", "DeviceUniqueIdentifier", "WelcomeScreenGroup", "InputUrl", "HostType", "UserAgent", "MacAddress", "PlariumPlayVersion", "PlariumPlayBuildVersion", "FirebaseInstallId", "HeapSize", "OsName", "BrowserName", "BrowserVersion", "InstallerPackageName", "UserMacAddress", "CpuArchitecture"];
        public get PlatformId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get PlatformVersion(): string {
            return this.readField(24, System.String, 2);
        }
        public get ClientType(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get DeviceName(): string {
            return this.readField(40, System.String, 2);
        }
        public get DeviceCodeName(): string {
            return this.readField(48, System.String, 2);
        }
        public get DeviceAdvertisingId(): string {
            return this.readField(56, System.String, 2);
        }
        public get DeviceLocale(): string {
            return this.readField(64, System.String, 2);
        }
        public get DeviceFullLocale(): string {
            return this.readField(72, System.String, 2);
        }
        public get IpAddress(): string {
            return this.readField(80, System.String, 2);
        }
        public get ClientName(): string {
            return this.readField(96, System.String, 2);
        }
        public get ClientVersion(): string {
            return this.readField(104, System.String, 2);
        }
        public get ClientRevision(): number {
            return this.readTypePrimitive(112, "long", 1);
        }
        public get Obsolete(): boolean {
            return this.readTypePrimitive(120, "bool", 1);
        }
        public get ScreenPixelsX(): number {
            return this.readTypePrimitive(124, "int", 1);
        }
        public get ScreenPixelsY(): number {
            return this.readTypePrimitive(128, "int", 1);
        }
        public get Dpix(): number {
            return this.readTypePrimitive(132, "float", 1);
        }
        public get Dpiy(): number {
            return this.readTypePrimitive(136, "float", 1);
        }
        public get CoresCount(): number {
            return this.readTypePrimitive(140, "int", 1);
        }
        public get CpuName(): string {
            return this.readField(144, System.String, 2);
        }
        public get GpuName(): string {
            return this.readField(152, System.String, 2);
        }
        public get GpuMemory(): number {
            return this.readTypePrimitive(160, "int", 1);
        }
        public get DeviceMemory(): number {
            return this.readTypePrimitive(164, "int", 1);
        }
        public get AvailableMemoryInBytes(): number {
            return this.readTypePrimitive(168, "long", 1);
        }
        public get AnimationEnabled(): number {
            return this.readTypePrimitive(176, "int", 1);
        }
        public get HdEnabled(): number {
            return this.readTypePrimitive(180, "int", 1);
        }
        public get HighFrameRateEnabled(): number {
            return this.readTypePrimitive(184, "int", 1);
        }
        public get Fps(): number {
            return this.readTypePrimitive(188, "int", 1);
        }
        public get UserInfos(): System.Collections.Generic.List<codegen.SharedModel.Common.Device.ClientInfo_UserInfo> {
            return this.readField(192, System.Collections.Generic.List, 2, codegen.SharedModel.Common.Device.ClientInfo_UserInfo);
        }
        public get DeviceUniqueIdentifier(): string {
            return this.readField(200, System.String, 2);
        }
        public get WelcomeScreenGroup(): number {
            return this.readTypePrimitive(208, "int", 1);
        }
        public get InputUrl(): string {
            return this.readField(216, System.String, 2);
        }
        public get HostType(): string {
            return this.readField(232, System.String, 2);
        }
        public get UserAgent(): string {
            return this.readField(248, System.String, 2);
        }
        public get MacAddress(): string {
            return this.readField(272, System.String, 2);
        }
        public get PlariumPlayVersion(): string {
            return this.readField(296, System.String, 2);
        }
        public get PlariumPlayBuildVersion(): string {
            return this.readField(304, System.String, 2);
        }
        public get FirebaseInstallId(): string {
            return this.readField(312, System.String, 2);
        }
        public get HeapSize(): string {
            return this.readField(320, System.String, 2);
        }
        public get OsName(): string {
            return this.readField(328, System.String, 2);
        }
        public get BrowserName(): string {
            return this.readField(344, System.String, 2);
        }
        public get BrowserVersion(): string {
            return this.readField(352, System.String, 2);
        }
        public get InstallerPackageName(): string {
            return this.readField(360, System.String, 2);
        }
        public get UserMacAddress(): string {
            return this.readField(368, System.String, 2);
        }
        public get CpuArchitecture(): string {
            return this.readField(376, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Common.Device {
    export class ClientInfo_UserInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Common.Device.ClientInfo_UserInfo";
        static get size() { return 24 + 8; }
        public static address = 56460056;
        public static fieldNames: string[] = ["ClusterId", "UserSocialId"];
        public get ClusterId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get UserSocialId(): string {
            return this.readField(24, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Heroes {
    export class UserHeroData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Heroes.UserHeroData";
        static get size() { return 104 + 8; }
        public static address = 56511792;
        public static fieldNames: string[] = ["LastHeroId", "HeroById", "InventorySlotsCount", "StorageSlotsCount", "BattlePresets", "SeenHeroTypeIds", "OwnedHeroTypeIds", "HeroRatingByHeroTypeId", "FuseInfosByOutputHeroId", "FusedHeroesCountById", "SeenFuseDateByHeroTypeId", "HeroParts", "SeenHeroPartsCountById"];
        public get LastHeroId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get HeroById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Heroes.Hero> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Heroes.Hero);
        }
        public get InventorySlotsCount(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get StorageSlotsCount(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public get BattlePresets(): System.Collections.Generic.Dictionary<number, System.Internal.ManagedArray<number>> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Internal.ManagedArray, "int"));
        }
        public get SeenHeroTypeIds(): System.Collections.Generic.List<number> {
            return this.readField(48, System.Collections.Generic.List, 2, "int");
        }
        public get OwnedHeroTypeIds(): System.Collections.Generic.List<number> {
            return this.readField(56, System.Collections.Generic.List, 2, "int");
        }
        public get HeroRatingByHeroTypeId(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.HeroesRating.HeroRatingData> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.HeroesRating.HeroRatingData);
        }
        public get FuseInfosByOutputHeroId(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Meta.Heroes.FuseHeroInfo>> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.Heroes.FuseHeroInfo));
        }
        public get FusedHeroesCountById(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(80, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get SeenFuseDateByHeroTypeId(): System.Collections.Generic.Dictionary<number, Date> {
            return this.readField(88, System.Collections.Generic.Dictionary, 2, "int", System.DateTime);
        }
        public get HeroParts(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(96, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get SeenHeroPartsCountById(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(104, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Heroes {
    export class Hero extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Heroes.Hero";
        static get size() { return 88 + 8; }
        public static address = 57038944;
        public static fieldNames: string[] = ["_type", "Id", "TypeId", "Grade", "Level", "Experience", "FullExperience", "Locked", "InStorage", "Marker", "Skills", "MasteryData"];
        public get _type(): codegen.SharedModel.Meta.Heroes.HeroType {
            return this.readField(16, codegen.SharedModel.Meta.Heroes.HeroType, 2);
        }
        public get Id(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get TypeId(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get Grade(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get Level(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public get Experience(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get FullExperience(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public get Locked(): boolean {
            return this.readTypePrimitive(48, "bool", 1);
        }
        public get InStorage(): boolean {
            return this.readTypePrimitive(49, "bool", 1);
        }
        public get Marker(): number {
            return this.readTypePrimitive(72, "int", 1);
        }
        public get Skills(): System.Collections.Generic.List<codegen.SharedModel.Meta.Skills.Skill> {
            return this.readField(80, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Skills.Skill);
        }
        public get MasteryData(): codegen.SharedModel.Meta.Masteries.HeroMasteryData {
            return this.readField(88, codegen.SharedModel.Meta.Masteries.HeroMasteryData, 2);
        }
        public static staticMethods = {
            "CanReceiveMasteryPoints": () => new il2js.MethodInfo(56889288),
            ".ctor": () => new il2js.MethodInfo(56697632)
        };
    }
}
export namespace codegen.SharedModel.Meta.Skills {
    export class Skill extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Skills.Skill";
        static get size() { return 32 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57038816;
        public static fieldNames: string[] = ["_type", "Id", "TypeId", "Level"];
        public get _type(): codegen.SharedModel.Meta.Skills.SkillType {
            return this.readField(16, codegen.SharedModel.Meta.Skills.SkillType, 2);
        }
        public get Id(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get TypeId(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get Level(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Masteries {
    export class HeroMasteryData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Masteries.HeroMasteryData";
        static get size() { return 40 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57048568;
        public static fieldNames: string[] = ["CurrentAmount", "TotalAmount", "Masteries", "ResetCount"];
        public get CurrentAmount(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get TotalAmount(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get Masteries(): System.Collections.Generic.List<number> {
            return this.readField(32, System.Collections.Generic.List, 2, "int");
        }
        public get ResetCount(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.HeroesRating {
    export class HeroRatingData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.HeroesRating.HeroRatingData";
        static get size() { return 24 + 8; }
        public static address = 56369832;
        public static fieldNames: string[] = ["LastRateTime", "MarksByRating"];
        public get LastRateTime(): Date {
            return this.readField(16, System.DateTime, 2);
        }
        public get MarksByRating(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Heroes {
    export class FuseHeroInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Heroes.FuseHeroInfo";
        static get size() { return 48 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57034672;
        public static fieldNames: string[] = ["Count"];
        public get Count(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.TrainingCamp {
    export class UserTrainingCampData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.TrainingCamp.UserTrainingCampData";
        static get size() { return 16 + 8; }
        public static address = 56552896;
        public static fieldNames: string[] = ["Slots"];
        public get Slots(): System.Collections.Generic.List<codegen.SharedModel.Meta.TrainingCamp.TrainingCampSlotInfo> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.TrainingCamp.TrainingCampSlotInfo);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.TrainingCamp {
    export class TrainingCampSlotInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.TrainingCamp.TrainingCampSlotInfo";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57094136;
        public static fieldNames: string[] = ["Index", "Level", "HeroId"];
        public get Index(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Level(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get HeroId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Artifacts {
    export class UserArtifactData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.UserArtifactData";
        static get size() { return 96 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56478192;
        public static fieldNames: string[] = ["UserId", "NextArtifactId", "UpgradeRandoms", "Artifacts", "ArtifactDataByHeroId", "NextArtifactRevisionId", "UpdatedArtifacts", "DeletedArtifactIds", "StorageMigrationState"];
        public get UserId(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get NextArtifactId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get UpgradeRandoms(): System.Collections.Generic.List<codegen.SharedModel.Common.Math.FixedRandom> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Common.Math.FixedRandom);
        }
        public get Artifacts(): System.Collections.Generic.List<codegen.SharedModel.Meta.Artifacts.Artifact> {
            return this.readField(40, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Artifacts.Artifact);
        }
        public get ArtifactDataByHeroId(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Artifacts.HeroArtifactData> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Artifacts.HeroArtifactData);
        }
        public get NextArtifactRevisionId(): number {
            return this.readTypePrimitive(56, "int", 1);
        }
        public get UpdatedArtifacts(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Artifacts.Artifact> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Artifacts.Artifact);
        }
        public get DeletedArtifactIds(): System.Collections.Generic.List<number> {
            return this.readField(72, System.Collections.Generic.List, 2, "int");
        }
        public get StorageMigrationState(): number {
            return this.readTypePrimitive(96, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Artifacts {
    export class HeroArtifactData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Artifacts.HeroArtifactData";
        static get size() { return 16 + 8; }
        public static address = 56476216;
        public static fieldNames: string[] = ["ArtifactIdByKind"];
        public get ArtifactIdByKind(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BlackMarket {
    export class UserBlackMarketData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BlackMarket.UserBlackMarketData";
        static get size() { return 16 + 8; }
        public static address = 56489216;
        public static fieldNames: string[] = ["Items"];
        public get Items(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.BlackMarket.BmiBox> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.BlackMarket.BmiBox);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BlackMarket {
    export class BmiBox extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BlackMarket.BmiBox";
        static get size() { return 32 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57022072;
        public static fieldNames: string[] = ["Count", "ExpiryDates", "IsSeen"];
        public get Count(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ExpiryDates(): System.Collections.Generic.List<Date> {
            return this.readField(24, System.Collections.Generic.List, 2, System.DateTime);
        }
        public get IsSeen(): boolean {
            return this.readTypePrimitive(32, "bool", 1);
        }
        public static staticMethods = {
            "<Add>b__7_1": () => new il2js.MethodInfo(56587736),
            "RemoveActiveItem": () => new il2js.MethodInfo(56874448),
            "<Add>b__7_0": () => new il2js.MethodInfo(56478176),
            "<RemoveActiveItem>b__8_2": () => new il2js.MethodInfo(56696576),
            "RemoveActiveItem_1": () => new il2js.MethodInfo(56696688)
        };
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class UserStageData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.UserStageData";
        static get size() { return 88 + 8; }
        public static address = 56550504;
        public static fieldNames: string[] = ["LastBattleTime", "BattleResultsByStageId", "CollectedRewards", "CollectedFractionWarRewards", "FractionWarMainRewardTaken", "FreeStageData", "SelectedDifficulty", "MaxSeenDifficultyId", "MaxSeenDifficultyPopupId", "DoomTowerData", "_starsByDifficulty"];
        public get LastBattleTime(): Date {
            return this.readField(16, System.DateTime, 2);
        }
        public get BattleResultsByStageId(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Stages.StageStats> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Stages.StageStats);
        }
        public get CollectedRewards(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<number>> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, "int"));
        }
        public get CollectedFractionWarRewards(): System.Collections.Generic.List<number> {
            return this.readField(40, System.Collections.Generic.List, 2, "int");
        }
        public get FractionWarMainRewardTaken(): boolean {
            return this.readTypePrimitive(48, "bool", 1);
        }
        public get FreeStageData(): codegen.SharedModel.Meta.Stages.FreeStageData {
            return this.readField(56, codegen.SharedModel.Meta.Stages.FreeStageData, 2);
        }
        public get SelectedDifficulty(): number {
            return this.readTypePrimitive(64, "int", 1);
        }
        public get MaxSeenDifficultyId(): number {
            return this.readTypePrimitive(68, "int", 1);
        }
        public get MaxSeenDifficultyPopupId(): number {
            return this.readTypePrimitive(72, "int", 1);
        }
        public get DoomTowerData(): codegen.SharedModel.Meta.Stages.UserDoomTowerData {
            return this.readField(80, codegen.SharedModel.Meta.Stages.UserDoomTowerData, 2);
        }
        public get _starsByDifficulty(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(88, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class StageStats extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.StageStats";
        static get size() { return 56 + 8; }
        public static address = 57088608;
        public static fieldNames: string[] = ["Passed", "BestTimeInSeconds", "Stars", "BattleResults", "LastBattleTime", "BestBattleTime"];
        public get Passed(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get BestTimeInSeconds(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Stars(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get BattleResults(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get LastBattleTime(): Date {
            return this.readField(48, System.DateTime, 2);
        }
        public get BestBattleTime(): Date {
            return this.readField(56, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class FreeStageData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.FreeStageData";
        static get size() { return 24 + 8; }
        public static address = 56548120;
        public static fieldNames: string[] = ["FreeAreaTypeIds", "FreeRegionTypeIds"];
        public get FreeAreaTypeIds(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public get FreeRegionTypeIds(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages {
    export class UserDoomTowerData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.UserDoomTowerData";
        static get size() { return 72 + 8; }
        public static address = 56550424;
        public static fieldNames: string[] = ["SelectedDifficulty", "MaxSeenDifficultyId", "SeenDoomTower", "SeenRatingArchive", "StartTimeByDifficulty", "SeenSecretChambers", "StageIndicator"];
        public get SelectedDifficulty(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get MaxSeenDifficultyId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get SeenDoomTower(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public get SeenRatingArchive(): boolean {
            return this.readTypePrimitive(25, "bool", 1);
        }
        public get StartTimeByDifficulty(): System.Collections.Generic.Dictionary<number, Date> {
            return this.readField(56, System.Collections.Generic.Dictionary, 2, "int", System.DateTime);
        }
        public get SeenSecretChambers(): System.Collections.Generic.List<number> {
            return this.readField(64, System.Collections.Generic.List, 2, "int");
        }
        public get StageIndicator(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Village {
    export class UserVillageData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Village.UserVillageData";
        static get size() { return 48 + 8; }
        public static address = 56557544;
        public static fieldNames: string[] = ["BuildingByTypeId", "ProducedGemsCount", "LastGemsCollectTime", "ExcessGemMineHours", "CapitolBonusLevelByStatByElement"];
        public get BuildingByTypeId(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Village.Building> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Village.Building);
        }
        public get ProducedGemsCount(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get LastGemsCollectTime(): Date {
            return this.readField(32, System.DateTime, 2);
        }
        public get ExcessGemMineHours(): number {
            return this.readTypePrimitive(40, "double", 1);
        }
        public get CapitolBonusLevelByStatByElement(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, number>> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", "int"));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Village {
    export class Building extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Village.Building";
        static get size() { return 24 + 8; }
        public static address = 56556040;
        public static fieldNames: string[] = ["Id", "Level", "_type"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Level(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get _type(): codegen.SharedModel.Meta.Village.BuildingType {
            return this.readField(24, codegen.SharedModel.Meta.Village.BuildingType, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Forge {
    export class UserForgeData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Forge.UserForgeData";
        static get size() { return 16 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56500040;
        public static fieldNames: string[] = ["FirstTimeRewardTaken"];
        public get FirstTimeRewardTaken(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Shards {
    export class UserShardData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Shards.UserShardData";
        static get size() { return 24 + 8; }
        public static address = 56546488;
        public static fieldNames: string[] = ["Shards", "SummonResults"];
        public get Shards(): System.Collections.Generic.List<codegen.SharedModel.Meta.Shards.Shard> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Shards.Shard);
        }
        public get SummonResults(): System.Collections.Generic.List<codegen.SharedModel.Meta.Shards.ShardSummonResult> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Shards.ShardSummonResult);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Shards {
    export class Shard extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Shards.Shard";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57078752;
        public static fieldNames: string[] = ["TypeId", "Count"];
        public get TypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Count(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Shards {
    export class ShardSummonResult extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Shards.ShardSummonResult";
        static get size() { return 28 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57079432;
        public static fieldNames: string[] = ["ShardTypeId", "Rarity", "Count", "LastHeroId"];
        public get ShardTypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Rarity(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Count(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get LastHeroId(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.MagicShop {
    export class UserMagicShopData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.MagicShop.UserMagicShopData";
        static get size() { return 48 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56514840;
        public static fieldNames: string[] = ["LastItemId", "Items", "LastRefreshTime", "SlotCount", "AncientShardPurchaseLastMonth", "AncientShardPurchaseCount"];
        public get LastItemId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Items(): System.Collections.Generic.List<codegen.SharedModel.Meta.MagicShop.MagicShopItem> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.MagicShop.MagicShopItem);
        }
        public get LastRefreshTime(): Date {
            return this.readField(32, System.DateTime, 2);
        }
        public get SlotCount(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get AncientShardPurchaseLastMonth(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public get AncientShardPurchaseCount(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.MagicShop {
    export class MagicShopItem extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.MagicShop.MagicShopItem";
        static get size() { return 40 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56514152;
        public static fieldNames: string[] = ["Id", "TypeId", "Prize", "Price", "IsRare"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get TypeId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Prize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(24, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get Price(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(32, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get IsRare(): boolean {
            return this.readTypePrimitive(40, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Inbox {
    export class UserInboxData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Inbox.UserInboxData";
        static get size() { return 32 + 8; }
        public static address = 56513032;
        public static fieldNames: string[] = ["_ids", "LastItemId", "Items"];
        public get _ids(): System.Collections.Generic.HashSet<number> {
            return this.readField(16, System.Collections.Generic.HashSet, 2, "int");
        }
        public get LastItemId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Items(): System.Collections.Generic.List<codegen.SharedModel.Meta.Inbox.InboxItem> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Inbox.InboxItem);
        }
        public static staticMethods = {
            "<GetAdded>b__5_0": () => new il2js.MethodInfo(56892264)
        };
    }
}
export namespace codegen.SharedModel.Meta.Inbox {
    export class InboxItem extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Inbox.InboxItem";
        static get size() { return 48 + 8; }
        public static address = 56994072;
        public static fieldNames: string[] = ["Id", "TypeId", "IsRead", "GivenTime", "ValidTill", "Prize"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get TypeId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get IsRead(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public get GivenTime(): Date {
            return this.readField(32, System.DateTime, 2);
        }
        public get ValidTill(): Date {
            return this.readField(40, System.DateTime, 2);
        }
        public get Prize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(48, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Chat {
    export class UserChatData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Chat.UserChatData";
        static get size() { return 24 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56490200;
        public static fieldNames: string[] = ["CurrentRoom", "IsModerator"];
        public get CurrentRoom(): codegen.SharedModel.Meta.Chat.ChatRoomName {
            return this.readField(16, codegen.SharedModel.Meta.Chat.ChatRoomName, 2);
        }
        public get IsModerator(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Chat {
    export class ChatRoomName extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Chat.ChatRoomName";
        static get size() { return 28 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56489888;
        public static fieldNames: string[] = ["Prefix", "Group", "Number"];
        public get Prefix(): string {
            return this.readField(16, System.String, 2);
        }
        public get Group(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Number(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public static staticMethods = {
            ".ctor": () => new il2js.MethodInfo(56696888)
        };
    }
}
export namespace codegen.SharedModel.Meta.Payments {
    export class UserPaymentData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Payments.UserPaymentData";
        static get size() { return 64 + 8; }
        public static address = 56528400;
        public static fieldNames: string[] = ["LastPaymentId", "Payments", "Subscriptions", "GooglePointsPayments", "PaymentsForTracker"];
        public get LastPaymentId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Payments(): System.Collections.Generic.List<codegen.SharedModel.Meta.Payments.Payment> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Payments.Payment);
        }
        public get Subscriptions(): System.Collections.Generic.List<codegen.SharedModel.Meta.Subscriptions.Data.Subscription> {
            return this.readField(48, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Subscriptions.Data.Subscription);
        }
        public get GooglePointsPayments(): System.Collections.Generic.List<codegen.SharedModel.Meta.Payments.Payment> {
            return this.readField(56, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Payments.Payment);
        }
        public get PaymentsForTracker(): System.Collections.Generic.List<codegen.SharedModel.Meta.Payments.Payment> {
            return this.readField(64, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Payments.Payment);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Payments {
    export class Payment extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Payments.Payment";
        static get size() { return 160 + 8; }
        public static address = 57057896;
        public static fieldNames: string[] = ["Id", "BillingTxId", "ClientTxId", "Price", "OriginalCurrency", "ClosedManually", "OfferInfo", "SubscriptionInfo", "BattlePassInfo", "GooglePointsInfo", "Time", "Taxes"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get BillingTxId(): string {
            return this.readField(24, System.String, 2);
        }
        public get ClientTxId(): string {
            return this.readField(32, System.String, 2);
        }
        public get Price(): codegen.SharedModel.Meta.Payments.Data.BillingPrice {
            return this.readField(40, codegen.SharedModel.Meta.Payments.Data.BillingPrice, 2);
        }
        public get OriginalCurrency(): string {
            return this.readField(48, System.String, 2);
        }
        public get ClosedManually(): boolean {
            return this.readTypePrimitive(72, "bool", 1);
        }
        public get OfferInfo(): codegen.SharedModel.Meta.Payments.OfferPaymentInfo {
            return this.readField(80, codegen.SharedModel.Meta.Payments.OfferPaymentInfo, 2);
        }
        public get SubscriptionInfo(): codegen.SharedModel.Meta.Payments.SubscriptionPaymentInfo {
            return this.readField(88, codegen.SharedModel.Meta.Payments.SubscriptionPaymentInfo, 2);
        }
        public get BattlePassInfo(): codegen.SharedModel.Meta.Payments.BattlePassPaymentInfo {
            return this.readField(96, codegen.SharedModel.Meta.Payments.BattlePassPaymentInfo, 2);
        }
        public get GooglePointsInfo(): codegen.SharedModel.Meta.Payments.GooglePointsPaymentInfo {
            return this.readField(104, codegen.SharedModel.Meta.Payments.GooglePointsPaymentInfo, 2);
        }
        public get Time(): Date {
            return this.readField(112, System.DateTime, 2);
        }
        public get Taxes(): codegen.SharedModel.Meta.Payments.Data.TaxData {
            return this.readField(160, codegen.SharedModel.Meta.Payments.Data.TaxData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Payments.Data {
    export class BillingPrice extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Payments.Data.BillingPrice";
        static get size() { return 64 + 8; }
        public static address = 56525744;
        public static fieldNames: string[] = ["Id", "UnitedPriceId", "AppId", "ClusterId", "SocialNetworkId", "BundleId", "IsPromoted", "Amounts", "_usd"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get UnitedPriceId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get AppId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get ClusterId(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get SocialNetworkId(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get BundleId(): string {
            return this.readField(40, System.String, 2);
        }
        public get IsPromoted(): boolean {
            return this.readTypePrimitive(48, "bool", 1);
        }
        public get Amounts(): System.Internal.ManagedArray<codegen.SharedModel.Meta.Payments.Data.BillingPriceAmount> {
            return this.readField(56, System.Internal.ManagedArray, 2, codegen.SharedModel.Meta.Payments.Data.BillingPriceAmount);
        }
        public get _usd(): codegen.SharedModel.Meta.Payments.Data.BillingPriceAmount {
            return this.readField(64, codegen.SharedModel.Meta.Payments.Data.BillingPriceAmount, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Payments.Data {
    export class BillingPriceAmount extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Payments.Data.BillingPriceAmount";
        static get size() { return 24 + 8; }
        public static address = 57056952;
        public static fieldNames: string[] = ["Amount", "Currency"];
        public get Amount(): number {
            return this.readTypePrimitive(16, "double", 1);
        }
        public get Currency(): string {
            return this.readField(24, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Payments {
    export class OfferPaymentInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Payments.OfferPaymentInfo";
        static get size() { return 160 + 8; }
        public static address = 57058168;
        public static fieldNames: string[] = ["PromoOfferId", "TypeId", "Revision", "AggressiveData", "TriggerData", "RetentionData", "ComboOfferData", "InboxItems", "IsOverdue", "OrderId", "Exposure", "ChainOffer"];
        public get PromoOfferId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get TypeId(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get Revision(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get AggressiveData(): codegen.SharedModel.Meta.Offers.Dto.AggressiveOfferDto {
            return this.readField(64, codegen.SharedModel.Meta.Offers.Dto.AggressiveOfferDto, 2);
        }
        public get TriggerData(): codegen.SharedModel.Meta.Offers.Dto.TriggerOfferDto {
            return this.readField(72, codegen.SharedModel.Meta.Offers.Dto.TriggerOfferDto, 2);
        }
        public get RetentionData(): codegen.SharedModel.Meta.Offers.Dto.RetentionOfferDto {
            return this.readField(80, codegen.SharedModel.Meta.Offers.Dto.RetentionOfferDto, 2);
        }
        public get ComboOfferData(): codegen.SharedModel.Meta.Offers.ComboOfferDto {
            return this.readField(88, codegen.SharedModel.Meta.Offers.ComboOfferDto, 2);
        }
        public get InboxItems(): System.Collections.Generic.List<codegen.SharedModel.Meta.Inbox.InboxItem> {
            return this.readField(96, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Inbox.InboxItem);
        }
        public get IsOverdue(): boolean {
            return this.readTypePrimitive(120, "bool", 1);
        }
        public get OrderId(): string {
            return this.readField(144, System.String, 2);
        }
        public get Exposure(): number {
            return this.readTypePrimitive(152, "int", 1);
        }
        public get ChainOffer(): codegen.SharedModel.Meta.Offers.Dto.ChainOfferDto {
            return this.readField(160, codegen.SharedModel.Meta.Offers.Dto.ChainOfferDto, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers.Dto {
    export class AggressiveOfferDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.Dto.AggressiveOfferDto";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57053040;
        public static fieldNames: string[] = ["PromotionId", "PromotionRunId"];
        public get PromotionId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get PromotionRunId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers.Dto {
    export class TriggerOfferDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.Dto.TriggerOfferDto";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57054416;
        public static fieldNames: string[] = ["TypeId", "Revision", "RuleId"];
        public get TypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Revision(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get RuleId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers.Dto {
    export class RetentionOfferDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.Dto.RetentionOfferDto";
        static get size() { return 16 + 8; }
        public static address = 57054176;
        public static fieldNames: string[] = ["PrizePerDay"];
        public get PrizePerDay(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Payments.UnitedPrize> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Payments.UnitedPrize);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Payments {
    export class UnitedPrize extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Payments.UnitedPrize";
        static get size() { return 24 + 8; }
        public static address = 57058728;
        public static fieldNames: string[] = ["PrimaryPrize", "SecondaryPrize"];
        public get PrimaryPrize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(16, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get SecondaryPrize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(24, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers {
    export class ComboOfferDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.ComboOfferDto";
        static get size() { return 28 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57052952;
        public static fieldNames: string[] = ["PackId", "PromotionId", "PromotionRunId", "Index"];
        public get PackId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get PromotionId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get PromotionRunId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Index(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers.Dto {
    export class ChainOfferDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.Dto.ChainOfferDto";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57053168;
        public static fieldNames: string[] = ["PromotionId", "RunId", "ChainId"];
        public get PromotionId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get RunId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get ChainId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Payments {
    export class SubscriptionPaymentInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Payments.SubscriptionPaymentInfo";
        static get size() { return 48 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56528184;
        public static fieldNames: string[] = ["Id", "TypeId", "DurationInMonth", "IsFreeTrial", "Operation", "Exposure", "BuyDate", "SubscriptionDepositIndex"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get TypeId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get DurationInMonth(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get IsFreeTrial(): boolean {
            return this.readTypePrimitive(28, "bool", 1);
        }
        public get Operation(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get Exposure(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public get BuyDate(): Date {
            return this.readField(40, System.DateTime, 2);
        }
        public get SubscriptionDepositIndex(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Payments {
    export class BattlePassPaymentInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Payments.BattlePassPaymentInfo";
        static get size() { return 40 + 8; }
        public static address = 56525184;
        public static fieldNames: string[] = ["BattlePassId", "BattlePassPaymentTypeId", "IsOverdue", "Exposure", "BoughtLevels", "Prize"];
        public get BattlePassId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get BattlePassPaymentTypeId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get IsOverdue(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public get Exposure(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get BoughtLevels(): System.Collections.Generic.List<number> {
            return this.readField(32, System.Collections.Generic.List, 2, "int");
        }
        public get Prize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(40, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Payments {
    export class GooglePointsPaymentInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Payments.GooglePointsPaymentInfo";
        static get size() { return 24 + 8; }
        public static address = 56526488;
        public static fieldNames: string[] = ["Points", "IsSeen", "Prize"];
        public get Points(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get IsSeen(): boolean {
            return this.readTypePrimitive(20, "bool", 1);
        }
        public get Prize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(24, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Payments.Data {
    export class TaxData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Payments.Data.TaxData";
        static get size() { return 0; }
        public static address = 56526336;
        public static fieldNames: string[] = [];
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Subscriptions.Data {
    export class Subscription extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Subscriptions.Data.Subscription";
        static get size() { return 96 + 8; }
        public static address = 57057920;
        public static fieldNames: string[] = ["Id", "GroupId", "IsActive", "BuyDate", "ExpirationDate", "BillingTxId", "PurchasingPlatformId", "Prize"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get GroupId(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get IsActive(): boolean {
            return this.readTypePrimitive(32, "bool", 1);
        }
        public get BuyDate(): Date {
            return this.readField(40, System.DateTime, 2);
        }
        public get ExpirationDate(): Date {
            return this.readField(48, System.DateTime, 2);
        }
        public get BillingTxId(): string {
            return this.readField(64, System.String, 2);
        }
        public get PurchasingPlatformId(): number {
            return this.readTypePrimitive(88, "int", 1);
        }
        public get Prize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(96, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers {
    export class UserOfferData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.UserOfferData";
        static get size() { return 40 + 8; }
        public static address = 56524456;
        public static fieldNames: string[] = ["LastOfferId", "OpenOffers", "GiveOffers", "SeenIndicatorsOfferIds"];
        public get LastOfferId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get OpenOffers(): System.Collections.Generic.List<codegen.SharedModel.Meta.Offers.UserOffer> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Offers.UserOffer);
        }
        public get GiveOffers(): System.Collections.Generic.List<codegen.SharedModel.Meta.Offers.UserOffer> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Offers.UserOffer);
        }
        public get SeenIndicatorsOfferIds(): System.Collections.Generic.List<number> {
            return this.readField(40, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers {
    export class UserOffer extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.UserOffer";
        static get size() { return 224 + 8; }
        public static address = 57054584;
        public static fieldNames: string[] = ["Id", "PromoOfferId", "PriceId", "Price", "BillingTransactionId", "Revision", "TypeId", "StateId", "PurchaseLimit", "Prize", "PurchaseDates", "RetentionData", "ProgressData", "TriggerData", "AggressiveData", "ChainOfferData", "FreeOfferData", "ComboOfferData", "DynamicPriceData", "UserGroupLabel", "InterfaceSettingsJson", "_interfaceSettings"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get PromoOfferId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get PriceId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Price(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(32, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get BillingTransactionId(): string {
            return this.readField(40, System.String, 2);
        }
        public get Revision(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get TypeId(): number {
            return this.readTypePrimitive(80, "int", 1);
        }
        public get StateId(): number {
            return this.readTypePrimitive(84, "int", 1);
        }
        public get PurchaseLimit(): number {
            return this.readTypePrimitive(88, "int", 1);
        }
        public get Prize(): codegen.SharedModel.Meta.Payments.UnitedPrize {
            return this.readField(96, codegen.SharedModel.Meta.Payments.UnitedPrize, 2);
        }
        public get PurchaseDates(): System.Collections.Generic.List<Date> {
            return this.readField(136, System.Collections.Generic.List, 2, System.DateTime);
        }
        public get RetentionData(): codegen.SharedModel.Meta.Offers.UserOfferRetentionData {
            return this.readField(144, codegen.SharedModel.Meta.Offers.UserOfferRetentionData, 2);
        }
        public get ProgressData(): codegen.SharedModel.Meta.Offers.UserOfferProgressData {
            return this.readField(152, codegen.SharedModel.Meta.Offers.UserOfferProgressData, 2);
        }
        public get TriggerData(): codegen.SharedModel.Meta.Offers.Dto.TriggerOfferDto {
            return this.readField(160, codegen.SharedModel.Meta.Offers.Dto.TriggerOfferDto, 2);
        }
        public get AggressiveData(): codegen.SharedModel.Meta.Offers.Dto.AggressiveOfferDto {
            return this.readField(168, codegen.SharedModel.Meta.Offers.Dto.AggressiveOfferDto, 2);
        }
        public get ChainOfferData(): codegen.SharedModel.Meta.Offers.Dto.ChainOfferDto {
            return this.readField(176, codegen.SharedModel.Meta.Offers.Dto.ChainOfferDto, 2);
        }
        public get FreeOfferData(): codegen.SharedModel.Meta.Offers.FreeOfferDto {
            return this.readField(184, codegen.SharedModel.Meta.Offers.FreeOfferDto, 2);
        }
        public get ComboOfferData(): codegen.SharedModel.Meta.Offers.ComboOfferDto {
            return this.readField(192, codegen.SharedModel.Meta.Offers.ComboOfferDto, 2);
        }
        public get DynamicPriceData(): codegen.SharedModel.Meta.Offers.UserOfferDynamicPriceData {
            return this.readField(200, codegen.SharedModel.Meta.Offers.UserOfferDynamicPriceData, 2);
        }
        public get UserGroupLabel(): string {
            return this.readField(208, System.String, 2);
        }
        public get InterfaceSettingsJson(): string {
            return this.readField(216, System.String, 2);
        }
        public get _interfaceSettings(): codegen.SharedModel.Meta.Offers.Dto.InterfaceSettingsDto {
            return this.readField(224, codegen.SharedModel.Meta.Offers.Dto.InterfaceSettingsDto, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers {
    export class UserOfferRetentionData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.UserOfferRetentionData";
        static get size() { return 16 + 8; }
        public static address = 57055984;
        public static fieldNames: string[] = ["PrizePerDay"];
        public get PrizePerDay(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Offers.UserOfferPrizeInfo> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Offers.UserOfferPrizeInfo);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers {
    export class UserOfferPrizeInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.UserOfferPrizeInfo";
        static get size() { return 16 + 8; }
        public static address = 57056160;
        public static fieldNames: string[] = ["Prize"];
        public get Prize(): codegen.SharedModel.Meta.Payments.UnitedPrize {
            return this.readField(16, codegen.SharedModel.Meta.Payments.UnitedPrize, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers {
    export class UserOfferProgressData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.UserOfferProgressData";
        static get size() { return 16 + 8; }
        public static address = 57055752;
        public static fieldNames: string[] = ["PrizePerLevel"];
        public get PrizePerLevel(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Offers.UserOfferPrizeInfo> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Offers.UserOfferPrizeInfo);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers {
    export class FreeOfferDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.FreeOfferDto";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57054488;
        public static fieldNames: string[] = ["RunId"];
        public get RunId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers {
    export class UserOfferDynamicPriceData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.UserOfferDynamicPriceData";
        static get size() { return 32 + 8; }
        public static address = 57056072;
        public static fieldNames: string[] = ["PricesScale", "CooldownPurchaseLimit", "PurchasesCountBeforeCooldown", "LastRefreshDate"];
        public get PricesScale(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Account.Resources> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Account.Resources);
        }
        public get CooldownPurchaseLimit(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get PurchasesCountBeforeCooldown(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get LastRefreshDate(): Date {
            return this.readField(32, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers.Dto {
    export class InterfaceSettingsDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.Dto.InterfaceSettingsDto";
        static get size() { return 136 + 8; }
        public static address = 56521832;
        public static fieldNames: string[] = ["Tab", "Discount", "ImageBundle", "IconBundle", "TitleId", "ProgressPackageIconPerLevel", "Order", "ProgressOfferOrderDto", "RetentionOfferOrderDto"];
        public get Tab(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Discount(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get ImageBundle(): string {
            return this.readField(32, System.String, 2);
        }
        public get IconBundle(): string {
            return this.readField(40, System.String, 2);
        }
        public get TitleId(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get ProgressPackageIconPerLevel(): System.Collections.Generic.Dictionary<number, string> {
            return this.readField(112, System.Collections.Generic.Dictionary, 2, "int", System.String);
        }
        public get Order(): codegen.SharedModel.Meta.Offers.Dto.UserPrizeOrder {
            return this.readField(120, codegen.SharedModel.Meta.Offers.Dto.UserPrizeOrder, 2);
        }
        public get ProgressOfferOrderDto(): codegen.SharedModel.Meta.Offers.Dto.ProgressUserPrizeOrderDto {
            return this.readField(128, codegen.SharedModel.Meta.Offers.Dto.ProgressUserPrizeOrderDto, 2);
        }
        public get RetentionOfferOrderDto(): codegen.SharedModel.Meta.Offers.Dto.RetentionUserPrizeOrderDto {
            return this.readField(136, codegen.SharedModel.Meta.Offers.Dto.RetentionUserPrizeOrderDto, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers.Dto {
    export class UserPrizeOrder extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.Dto.UserPrizeOrder";
        static get size() { return 32 + 8; }
        public static address = 56523488;
        public static fieldNames: string[] = ["ResourcesOrder", "BlackMarketOrder", "HeroOrder"];
        public get ResourcesOrder(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get BlackMarketOrder(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get HeroOrder(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers.Dto {
    export class ProgressUserPrizeOrderDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.Dto.ProgressUserPrizeOrderDto";
        static get size() { return 16 + 8; }
        public static address = 56522792;
        public static fieldNames: string[] = ["OrderPerLevel"];
        public get OrderPerLevel(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Offers.Dto.UserPrizeOrder> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Offers.Dto.UserPrizeOrder);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers.Dto {
    export class RetentionUserPrizeOrderDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.Dto.RetentionUserPrizeOrderDto";
        static get size() { return 24 + 8; }
        public static address = 56522856;
        public static fieldNames: string[] = ["OrderPerDay", "EveryDayPrizeOrder"];
        public get OrderPerDay(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Offers.Dto.UserPrizeOrder> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Offers.Dto.UserPrizeOrder);
        }
        public get EveryDayPrizeOrder(): codegen.SharedModel.Meta.Offers.Dto.UserPrizeOrder {
            return this.readField(24, codegen.SharedModel.Meta.Offers.Dto.UserPrizeOrder, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Data {
    export class UserQuestData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Data.UserQuestData";
        static get size() { return 104 + 8; }
        public static address = 57074368;
        public static fieldNames: string[] = ["LastQuestId", "OpenedStates", "FluentData", "PeriodicData", "ChallengesData", "AchievementsData", "RecommendedQuestsData", "GlobalEventsData", "NoviceTournamentData", "InfluencerTournamentData", "BattlePassData", "AdvancedDailyData"];
        public get LastQuestId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get OpenedStates(): System.Collections.Generic.List<codegen.SharedModel.Meta.Quests.Data.QuestState> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Quests.Data.QuestState);
        }
        public get FluentData(): codegen.SharedModel.Meta.Quests.Data.UserQuestDataFluent {
            return this.readField(32, codegen.SharedModel.Meta.Quests.Data.UserQuestDataFluent, 2);
        }
        public get PeriodicData(): codegen.SharedModel.Meta.PeriodicQuests.Data.UserData.UserQuestDataPeriodic {
            return this.readField(40, codegen.SharedModel.Meta.PeriodicQuests.Data.UserData.UserQuestDataPeriodic, 2);
        }
        public get ChallengesData(): codegen.SharedModel.Meta.Quests.Data.UserQuestDataChallenges {
            return this.readField(48, codegen.SharedModel.Meta.Quests.Data.UserQuestDataChallenges, 2);
        }
        public get AchievementsData(): codegen.SharedModel.Meta.Quests.Data.UserQuestDataAchievements {
            return this.readField(56, codegen.SharedModel.Meta.Quests.Data.UserQuestDataAchievements, 2);
        }
        public get RecommendedQuestsData(): codegen.SharedModel.Meta.Quests.RecommendedQuests.UserRecommendedQuestData {
            return this.readField(64, codegen.SharedModel.Meta.Quests.RecommendedQuests.UserRecommendedQuestData, 2);
        }
        public get GlobalEventsData(): codegen.SharedModel.Meta.Quests.Data.UserQuestDataGlobalEvent {
            return this.readField(72, codegen.SharedModel.Meta.Quests.Data.UserQuestDataGlobalEvent, 2);
        }
        public get NoviceTournamentData(): codegen.SharedModel.Meta.Quests.Data.UserQuestDataNoviceTournament {
            return this.readField(80, codegen.SharedModel.Meta.Quests.Data.UserQuestDataNoviceTournament, 2);
        }
        public get InfluencerTournamentData(): codegen.SharedModel.Meta.Quests.Data.UserQuestDataInfluencerTournament {
            return this.readField(88, codegen.SharedModel.Meta.Quests.Data.UserQuestDataInfluencerTournament, 2);
        }
        public get BattlePassData(): codegen.SharedModel.Meta.Quests.Data.UserQuestBattlePassData {
            return this.readField(96, codegen.SharedModel.Meta.Quests.Data.UserQuestBattlePassData, 2);
        }
        public get AdvancedDailyData(): codegen.SharedModel.Meta.Quests.Data.UserQuestAdvancedDailyData {
            return this.readField(104, codegen.SharedModel.Meta.Quests.Data.UserQuestAdvancedDailyData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Data {
    export class QuestState extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Data.QuestState";
        static get size() { return 184 + 8; }
        public static address = 56537232;
        public static fieldNames: string[] = ["QuestId", "PrototypeId", "IsRead", "IsForced", "PrizeGiven", "StateId", "TimeOpened", "Completions", "Prizes", "Prize", "GlobalEventTakenRewardIds"];
        public get QuestId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get PrototypeId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get IsRead(): boolean {
            return this.readTypePrimitive(32, "bool", 1);
        }
        public get IsForced(): boolean {
            return this.readTypePrimitive(33, "bool", 1);
        }
        public get PrizeGiven(): boolean {
            return this.readTypePrimitive(36, "bool", 1);
        }
        public get StateId(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get TimeOpened(): Date {
            return this.readField(48, System.DateTime, 2);
        }
        public get Completions(): System.Collections.Generic.List<codegen.SharedModel.Meta.Quests.Completions.QuestCompletion> {
            return this.readField(120, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Quests.Completions.QuestCompletion);
        }
        public get Prizes(): System.Collections.Generic.List<codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(128, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public get Prize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(136, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get GlobalEventTakenRewardIds(): System.Collections.Generic.List<number> {
            return this.readField(184, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class QuestCompletion extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.QuestCompletion";
        static get size() { return 160 + 8; }
        public static address = 57061560;
        public static fieldNames: string[] = ["StateId", "ByClient", "ByAction", "Periodic", "ByBattle", "ByArtifact", "ByQuest", "ByHero", "ByCapitolBonus", "ByArena", "ByLoot", "ByMastery", "ByFuse", "ByAllianceActivity", "BySoloEvent", "ByTournament", "ByResourceSpent", "ByForge", "ByCvc"];
        public get StateId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ByClient(): codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByClient {
            return this.readField(24, codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByClient, 2);
        }
        public get ByAction(): codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByAction {
            return this.readField(32, codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByAction, 2);
        }
        public get Periodic(): codegen.SharedModel.Meta.PeriodicQuests.QuestCompletionPeriodic {
            return this.readField(40, codegen.SharedModel.Meta.PeriodicQuests.QuestCompletionPeriodic, 2);
        }
        public get ByBattle(): codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByBattle {
            return this.readField(48, codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByBattle, 2);
        }
        public get ByArtifact(): codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByArtifact {
            return this.readField(56, codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByArtifact, 2);
        }
        public get ByQuest(): codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByQuest {
            return this.readField(64, codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByQuest, 2);
        }
        public get ByHero(): codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByHero {
            return this.readField(72, codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByHero, 2);
        }
        public get ByCapitolBonus(): codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByCapitolBonus {
            return this.readField(80, codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByCapitolBonus, 2);
        }
        public get ByArena(): codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByArena {
            return this.readField(88, codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByArena, 2);
        }
        public get ByLoot(): codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByLoot {
            return this.readField(96, codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByLoot, 2);
        }
        public get ByMastery(): codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByMastery {
            return this.readField(104, codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByMastery, 2);
        }
        public get ByFuse(): codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByFuse {
            return this.readField(112, codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByFuse, 2);
        }
        public get ByAllianceActivity(): codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByAllianceActivity {
            return this.readField(120, codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByAllianceActivity, 2);
        }
        public get BySoloEvent(): codegen.SharedModel.Meta.Quests.Completions.QuestCompletionBySoloEvent {
            return this.readField(128, codegen.SharedModel.Meta.Quests.Completions.QuestCompletionBySoloEvent, 2);
        }
        public get ByTournament(): codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByTournament {
            return this.readField(136, codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByTournament, 2);
        }
        public get ByResourceSpent(): codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByResourceSpent {
            return this.readField(144, codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByResourceSpent, 2);
        }
        public get ByForge(): codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByForge {
            return this.readField(152, codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByForge, 2);
        }
        public get ByCvc(): codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByCvc {
            return this.readField(160, codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByCvc, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class QuestCompletionByClient extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByClient";
        static get size() { return 32 + il2js.NativeStruct.sizeof("long"); }
        public static address = 57065128;
        public static fieldNames: string[] = ["CountRequired", "CountCollected", "Code", "Param"];
        public get CountRequired(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get CountCollected(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Code(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Param(): number {
            return this.readTypePrimitive(32, "long", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class QuestCompletionByAction extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByAction";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57062240;
        public static fieldNames: string[] = ["CountRequired", "CountCollected", "Code"];
        public get CountRequired(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get CountCollected(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Code(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.PeriodicQuests {
    export class QuestCompletionPeriodic extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.PeriodicQuests.QuestCompletionPeriodic";
        static get size() { return 24 + il2js.NativeStruct.sizeof("long"); }
        public static address = 57061160;
        public static fieldNames: string[] = ["QuestData", "CurrentPoints"];
        public get QuestData(): codegen.SharedModel.Meta.PeriodicQuests.Data.PeriodicQuestData {
            return this.readField(16, codegen.SharedModel.Meta.PeriodicQuests.Data.PeriodicQuestData, 2);
        }
        public get CurrentPoints(): number {
            return this.readTypePrimitive(24, "long", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.PeriodicQuests.Data {
    export class PeriodicQuestData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.PeriodicQuests.Data.PeriodicQuestData";
        static get size() { return 32 + 8; }
        public static address = 57059304;
        public static fieldNames: string[] = ["PrototypeId", "NeedCollectPoints", "Filter", "Prize"];
        public get PrototypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get NeedCollectPoints(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Filter(): codegen.SharedModel.Meta.PeriodicQuests.Data.PeriodicQuestFilter {
            return this.readField(24, codegen.SharedModel.Meta.PeriodicQuests.Data.PeriodicQuestFilter, 2);
        }
        public get Prize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(32, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.PeriodicQuests.Data {
    export class PeriodicQuestFilter extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.PeriodicQuests.Data.PeriodicQuestFilter";
        static get size() { return 72 + 8; }
        public static address = 57059240;
        public static fieldNames: string[] = ["PrototypeId", "BlackMarketItemIds", "QuestCategoryIds", "QuestCategoryIgnoredIds", "PeriodicQuestGroupIds", "QuestPrototypeIds"];
        public get PrototypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get BlackMarketItemIds(): System.Collections.Generic.List<number> {
            return this.readField(40, System.Collections.Generic.List, 2, "int");
        }
        public get QuestCategoryIds(): System.Collections.Generic.List<number> {
            return this.readField(48, System.Collections.Generic.List, 2, "int");
        }
        public get QuestCategoryIgnoredIds(): System.Collections.Generic.List<number> {
            return this.readField(56, System.Collections.Generic.List, 2, "int");
        }
        public get PeriodicQuestGroupIds(): System.Collections.Generic.List<number> {
            return this.readField(64, System.Collections.Generic.List, 2, "int");
        }
        public get QuestPrototypeIds(): System.Collections.Generic.List<number> {
            return this.readField(72, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class QuestCompletionByBattle extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByBattle";
        static get size() { return 208 + 8; }
        public static address = 57064544;
        public static fieldNames: string[] = ["CountRequired", "CountCollected", "AreaTypeIds", "ArtifactStatKey", "UserEffectKindIds", "UserAppliedStatusEffectTypeIds"];
        public get CountRequired(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get CountCollected(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get AreaTypeIds(): System.Internal.ManagedArray<number> {
            return this.readField(96, System.Internal.ManagedArray, 2, "int");
        }
        public get ArtifactStatKey(): codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactStatKey {
            return this.readField(160, codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactStatKey, 2);
        }
        public get UserEffectKindIds(): System.Collections.Generic.List<number> {
            return this.readField(200, System.Collections.Generic.List, 2, "int");
        }
        public get UserAppliedStatusEffectTypeIds(): System.Collections.Generic.List<number> {
            return this.readField(208, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class QuestCompletionByArtifact extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByArtifact";
        static get size() { return 144 + 8; }
        public static address = 57063864;
        public static fieldNames: string[] = ["CountRequired", "CountCollected", "UpgradeToLevels", "StatKey", "KindIdsOnOneHero", "StatsRequired"];
        public get CountRequired(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get CountCollected(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get UpgradeToLevels(): System.Internal.ManagedArray<number> {
            return this.readField(24, System.Internal.ManagedArray, 2, "int");
        }
        public get StatKey(): codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactStatKey {
            return this.readField(88, codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactStatKey, 2);
        }
        public get KindIdsOnOneHero(): System.Collections.Generic.List<number> {
            return this.readField(104, System.Collections.Generic.List, 2, "int");
        }
        public get StatsRequired(): codegen.SharedModel.Meta.Heroes.BattleStats {
            return this.readField(144, codegen.SharedModel.Meta.Heroes.BattleStats, 2);
        }
        public static staticMethods = {
            "<TryGetProgressForManyHeroesHaveManyArtifacts>b__36_0": () => new il2js.MethodInfo(56898744),
            "IsDone": () => new il2js.MethodInfo(56898848)
        };
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class QuestCompletionByQuest extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByQuest";
        static get size() { return 24 + 8; }
        public static address = 57068808;
        public static fieldNames: string[] = ["RequiredPrototypeIds", "CompletedPrototypeIds"];
        public get RequiredPrototypeIds(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public get CompletedPrototypeIds(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class QuestCompletionByHero extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByHero";
        static get size() { return 152 + 8; }
        public static address = 57065816;
        public static fieldNames: string[] = ["CountRequired", "CountCollected", "AscendAllFractionHeroes", "AscendAllElementHeroes"];
        public get CountRequired(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get CountCollected(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get AscendAllFractionHeroes(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(144, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get AscendAllElementHeroes(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(152, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public static staticMethods = {
            "<CalcProgress>b__25_1": () => new il2js.MethodInfo(56899656),
            "<CalcProgress>b__25_2": () => new il2js.MethodInfo(56899784),
            "<CalcProgress>b__25_3": () => new il2js.MethodInfo(56899800),
            "<CalcProgress>b__25_4": () => new il2js.MethodInfo(56899944),
            "CompareStats": () => new il2js.MethodInfo(56900040),
            "IsDone": () => new il2js.MethodInfo(56900136)
        };
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class QuestCompletionByCapitolBonus extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByCapitolBonus";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57065040;
        public static fieldNames: string[] = ["CountRequired", "CountCollected"];
        public get CountRequired(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get CountCollected(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {
            "<CalcProgress>b__8_0": () => new il2js.MethodInfo(56899272),
            "<CalcProgress>b__8_3": () => new il2js.MethodInfo(56899320),
            "IsDone": () => new il2js.MethodInfo(56899416),
            "<CalcProgress>b__8_2": () => new il2js.MethodInfo(57013480)
        };
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class QuestCompletionByArena extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByArena";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57062808;
        public static fieldNames: string[] = ["CountRequired", "CountCollected"];
        public get CountRequired(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get CountCollected(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class QuestCompletionByLoot extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByLoot";
        static get size() { return 128 + 8; }
        public static address = 57068112;
        public static fieldNames: string[] = ["CountRequired", "CountCollected", "SpecificStagesIds", "SpecificRegionTypeIds", "ResourcesTypeIds", "NeedsArtifact", "ArtifactInfo", "ArtifactInfos", "AnyLowOrbExceptArcane", "GainedArtifacts"];
        public get CountRequired(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get CountCollected(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get SpecificStagesIds(): System.Internal.ManagedArray<number> {
            return this.readField(64, System.Internal.ManagedArray, 2, "int");
        }
        public get SpecificRegionTypeIds(): System.Internal.ManagedArray<number> {
            return this.readField(72, System.Internal.ManagedArray, 2, "int");
        }
        public get ResourcesTypeIds(): System.Collections.Generic.List<number> {
            return this.readField(88, System.Collections.Generic.List, 2, "int");
        }
        public get NeedsArtifact(): boolean {
            return this.readTypePrimitive(96, "bool", 1);
        }
        public get ArtifactInfo(): codegen.SharedModel.Meta.Quests.Completions.ArtifactLootInfo {
            return this.readField(104, codegen.SharedModel.Meta.Quests.Completions.ArtifactLootInfo, 2);
        }
        public get ArtifactInfos(): System.Collections.Generic.List<codegen.SharedModel.Meta.Quests.Completions.ArtifactLootInfo> {
            return this.readField(112, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Quests.Completions.ArtifactLootInfo);
        }
        public get AnyLowOrbExceptArcane(): boolean {
            return this.readTypePrimitive(120, "bool", 1);
        }
        public get GainedArtifacts(): System.Collections.Generic.List<codegen.SharedModel.Meta.Artifacts.Artifact> {
            return this.readField(128, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Artifacts.Artifact);
        }
        public static staticMethods = {
            "CalcProgress": () => new il2js.MethodInfo(56582760),
            "<TryGetProgressForAccessoryKindsFromSpider>b__23_0": () => new il2js.MethodInfo(56901024),
            "<TryGetProgressForAccessoryKindsFromSpider>b__23_3": () => new il2js.MethodInfo(56901128),
            "<TryGetProgressForAccessoryKindsFromSpider>b__23_4": () => new il2js.MethodInfo(56901152),
            "<TryGetProgressForAccessoryKindsFromSpider>b__23_9": () => new il2js.MethodInfo(56901344),
            "<TryGetProgressForAccessoryRanksFromSpider>b__21_0": () => new il2js.MethodInfo(56901416),
            "<TryGetProgressForAccessoryRanksFromSpider>b__21_3": () => new il2js.MethodInfo(56901536),
            "<TryGetProgressForResourcesFromSpecificStages>b__25_0": () => new il2js.MethodInfo(56901592),
            "<TryGetProgressForResourcesFromSpecificStages>b__25_3": () => new il2js.MethodInfo(56901760)
        };
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class ArtifactLootInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.ArtifactLootInfo";
        static get size() { return 80 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57061376;
        public static fieldNames: string[] = ["RandomArtifact", "ArtifactStatKey", "ShouldBeDifferent"];
        public get RandomArtifact(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get ArtifactStatKey(): codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactStatKey {
            return this.readField(24, codegen.SharedModel.Meta.Artifacts.Bonuses.ArtifactStatKey, 2);
        }
        public get ShouldBeDifferent(): boolean {
            return this.readTypePrimitive(80, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class QuestCompletionByMastery extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByMastery";
        static get size() { return 40 + 8; }
        public static address = 57068600;
        public static fieldNames: string[] = ["CountRequired", "CountCollected", "MasteriesCount", "HeroIds"];
        public get CountRequired(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get CountCollected(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get MasteriesCount(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public get HeroIds(): System.Collections.Generic.List<number> {
            return this.readField(40, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {
            "<CalcProgress>b__7_0": () => new il2js.MethodInfo(56901864)
        };
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class QuestCompletionByFuse extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByFuse";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57065552;
        public static fieldNames: string[] = ["CountRequired", "CountCollected"];
        public get CountRequired(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get CountCollected(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class QuestCompletionByAllianceActivity extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByAllianceActivity";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57062432;
        public static fieldNames: string[] = ["CountRequired", "CountCollected"];
        public get CountRequired(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get CountCollected(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class QuestCompletionBySoloEvent extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.QuestCompletionBySoloEvent";
        static get size() { return 16 + 8; }
        public static address = 57068960;
        public static fieldNames: string[] = ["EventsProgress"];
        public get EventsProgress(): System.Collections.Generic.List<codegen.SharedModel.Meta.Quests.Data.GlobalEventActionProgress> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Quests.Data.GlobalEventActionProgress);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Data {
    export class GlobalEventActionProgress extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Data.GlobalEventActionProgress";
        static get size() { return 28 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56535736;
        public static fieldNames: string[] = ["Date", "Action", "Points"];
        public get Date(): Date {
            return this.readField(16, System.DateTime, 2);
        }
        public get Action(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Points(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class QuestCompletionByTournament extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByTournament";
        static get size() { return 24 + 8; }
        public static address = 57069160;
        public static fieldNames: string[] = ["GlobalRatingInfo", "Progress"];
        public get GlobalRatingInfo(): codegen.SharedModel.Meta.GlobalRatings.GlobalRatingInfo {
            return this.readField(16, codegen.SharedModel.Meta.GlobalRatings.GlobalRatingInfo, 2);
        }
        public get Progress(): codegen.SharedModel.Meta.Quests.Data.QuestTournamentProgress {
            return this.readField(24, codegen.SharedModel.Meta.Quests.Data.QuestTournamentProgress, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalRatings {
    export class GlobalRatingInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalRatings.GlobalRatingInfo";
        static get size() { return 140 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57037680;
        public static fieldNames: string[] = ["TypeId", "ConditionRule", "Rules", "Reward", "Points", "GlobalRewardTaken", "GlobalPositionRewards", "SeenInfo", "AnyRewardAvailable", "TournamentKindId"];
        public get TypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ConditionRule(): codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventConditionRule {
            return this.readField(32, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventConditionRule, 2);
        }
        public get Rules(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventRule>> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventRule));
        }
        public get Reward(): codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventReward {
            return this.readField(48, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventReward, 2);
        }
        public get Points(): number {
            return this.readTypePrimitive(64, "long", 1);
        }
        public get GlobalRewardTaken(): boolean {
            return this.readTypePrimitive(104, "bool", 1);
        }
        public get GlobalPositionRewards(): System.Collections.Generic.List<codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(112, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public get SeenInfo(): codegen.SharedModel.Meta.Tournaments.SeenTournamentInfo {
            return this.readField(120, codegen.SharedModel.Meta.Tournaments.SeenTournamentInfo, 2);
        }
        public get AnyRewardAvailable(): boolean {
            return this.readTypePrimitive(128, "bool", 1);
        }
        public get TournamentKindId(): number {
            return this.readTypePrimitive(140, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEventConditionRule extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventConditionRule";
        static get size() { return 40 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56503288;
        public static fieldNames: string[] = ["OneOfAnyFractionOnly"];
        public get OneOfAnyFractionOnly(): boolean {
            return this.readTypePrimitive(40, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEventReward extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventReward";
        static get size() { return 40 + 8; }
        public static address = 57036952;
        public static fieldNames: string[] = ["ShopItems", "ProgressionReward", "PositionRewards", "EverydayReward"];
        public get ShopItems(): System.Collections.Generic.List<codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventRewardItem> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventRewardItem);
        }
        public get ProgressionReward(): System.Collections.Generic.List<codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventRewardItem> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventRewardItem);
        }
        public get PositionRewards(): System.Collections.Generic.List<codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public get EverydayReward(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(40, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEventRewardItem extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventRewardItem";
        static get size() { return 40 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57037352;
        public static fieldNames: string[] = ["Id", "Points", "Prize", "Taken"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Points(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Prize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(32, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get Taken(): boolean {
            return this.readTypePrimitive(40, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Tournaments {
    export class SeenTournamentInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Tournaments.SeenTournamentInfo";
        static get size() { return 18 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56366816;
        public static fieldNames: string[] = ["StartSeen", "BracketFinishSeen", "GlobalFinishSeen"];
        public get StartSeen(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get BracketFinishSeen(): boolean {
            return this.readTypePrimitive(17, "bool", 1);
        }
        public get GlobalFinishSeen(): boolean {
            return this.readTypePrimitive(18, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Data {
    export class QuestTournamentProgress extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Data.QuestTournamentProgress";
        static get size() { return 16 + 8; }
        public static address = 57074008;
        public static fieldNames: string[] = ["CompletedStageIds"];
        public get CompletedStageIds(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class QuestCompletionByResourceSpent extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByResourceSpent";
        static get size() { return 36 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57068936;
        public static fieldNames: string[] = ["CountRequired", "CountCollected"];
        public get CountRequired(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get CountCollected(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class QuestCompletionByForge extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByForge";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57065408;
        public static fieldNames: string[] = ["CountRequired", "CountCollected"];
        public get CountRequired(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get CountCollected(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Completions {
    export class QuestCompletionByCvc extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Completions.QuestCompletionByCvc";
        static get size() { return 48 + 8; }
        public static address = 57065312;
        public static fieldNames: string[] = ["AllianceId", "OpponentAllianceId", "TierId", "ActivityPoints", "SwingReward"];
        public get AllianceId(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get OpponentAllianceId(): number {
            return this.readTypePrimitive(24, "long", 1);
        }
        public get TierId(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get ActivityPoints(): System.Collections.Generic.List<codegen.SharedModel.Meta.CvcTournament.Alliance.CvcActivityPoints> {
            return this.readField(40, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.CvcTournament.Alliance.CvcActivityPoints);
        }
        public get SwingReward(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(48, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.CvcTournament.Alliance {
    export class CvcActivityPoints extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.CvcTournament.Alliance.CvcActivityPoints";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57025712;
        public static fieldNames: string[] = ["ActivityTypeId", "Points"];
        public get ActivityTypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Points(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Data {
    export class UserQuestDataFluent extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Data.UserQuestDataFluent";
        static get size() { return 16 + 8; }
        public static address = 56538272;
        public static fieldNames: string[] = ["CompletedQuestIds"];
        public get CompletedQuestIds(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.PeriodicQuests.Data.UserData {
    export class UserQuestDataPeriodic extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.PeriodicQuests.Data.UserData.UserQuestDataPeriodic";
        static get size() { return 16 + 8; }
        public static address = 56530432;
        public static fieldNames: string[] = ["Groups"];
        public get Groups(): System.Collections.Generic.List<codegen.SharedModel.Meta.PeriodicQuests.Data.UserData.UserPeriodicQuestGroupData> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.PeriodicQuests.Data.UserData.UserPeriodicQuestGroupData);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.PeriodicQuests.Data.UserData {
    export class UserPeriodicQuestGroupData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.PeriodicQuests.Data.UserData.UserPeriodicQuestGroupData";
        static get size() { return 72 + 8; }
        public static address = 57060488;
        public static fieldNames: string[] = ["GroupId", "QuestsPackId", "CycleId", "StartTime", "LifeTime", "DeadLine", "PeriodicQuestsData"];
        public get GroupId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get QuestsPackId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get CycleId(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get StartTime(): Date {
            return this.readField(48, System.DateTime, 2);
        }
        public get LifeTime(): System.TimeSpan {
            return this.readField(56, System.TimeSpan, 2);
        }
        public get DeadLine(): Date {
            return this.readField(64, System.DateTime, 2);
        }
        public get PeriodicQuestsData(): System.Collections.Generic.List<codegen.SharedModel.Meta.PeriodicQuests.Data.UserData.UserPeriodicQuestStateData> {
            return this.readField(72, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.PeriodicQuests.Data.UserData.UserPeriodicQuestStateData);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.PeriodicQuests.Data.UserData {
    export class UserPeriodicQuestStateData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.PeriodicQuests.Data.UserData.UserPeriodicQuestStateData";
        static get size() { return 64 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57060616;
        public static fieldNames: string[] = ["QuestId", "IsReceivedBonus", "QuestStateId", "QuestState", "GroupId", "DeadLine", "QuestStaticData", "QuestsPackId"];
        public get QuestId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get IsReceivedBonus(): boolean {
            return this.readTypePrimitive(20, "bool", 1);
        }
        public get QuestStateId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get QuestState(): codegen.SharedModel.Meta.Quests.Data.QuestState {
            return this.readField(32, codegen.SharedModel.Meta.Quests.Data.QuestState, 2);
        }
        public get GroupId(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get DeadLine(): Date {
            return this.readField(48, System.DateTime, 2);
        }
        public get QuestStaticData(): codegen.SharedModel.Meta.PeriodicQuests.Data.PeriodicQuestData {
            return this.readField(56, codegen.SharedModel.Meta.PeriodicQuests.Data.PeriodicQuestData, 2);
        }
        public get QuestsPackId(): number {
            return this.readTypePrimitive(64, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Data {
    export class UserQuestDataChallenges extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Data.UserQuestDataChallenges";
        static get size() { return 16 + 8; }
        public static address = 56538088;
        public static fieldNames: string[] = ["CompletedPrototypeIds"];
        public get CompletedPrototypeIds(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Data {
    export class UserQuestDataAchievements extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Data.UserQuestDataAchievements";
        static get size() { return 16 + 8; }
        public static address = 56537968;
        public static fieldNames: string[] = ["CompletedQuestIds"];
        public get CompletedQuestIds(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.RecommendedQuests {
    export class UserRecommendedQuestData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.RecommendedQuests.UserRecommendedQuestData";
        static get size() { return 44 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56539456;
        public static fieldNames: string[] = ["CompletedPrototypeIds", "LastQuestWeight", "LastCompletedStageId", "UserGroup", "QuestsVersion"];
        public get CompletedPrototypeIds(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public get LastQuestWeight(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get LastCompletedStageId(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get UserGroup(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get QuestsVersion(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public static staticMethods = {
            "GetNextGroup": () => new il2js.MethodInfo(56584232)
        };
    }
}
export namespace codegen.SharedModel.Meta.Quests.Data {
    export class UserQuestDataGlobalEvent extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Data.UserQuestDataGlobalEvent";
        static get size() { return 48 + 8; }
        public static address = 56538472;
        public static fieldNames: string[] = ["QuestCompletedIdsByCategoryId", "SeenSoloEventTeaserPrototypeIds", "SeenTournamentTeaserPrototypeIds", "FirstSeenSoloEventTeaserPrototypeIds", "TournamentPointsByStateId"];
        public get QuestCompletedIdsByCategoryId(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<number>> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, "int"));
        }
        public get SeenSoloEventTeaserPrototypeIds(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public get SeenTournamentTeaserPrototypeIds(): System.Collections.Generic.List<number> {
            return this.readField(32, System.Collections.Generic.List, 2, "int");
        }
        public get FirstSeenSoloEventTeaserPrototypeIds(): System.Collections.Generic.List<number> {
            return this.readField(40, System.Collections.Generic.List, 2, "int");
        }
        public get TournamentPointsByStateId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Data {
    export class UserQuestDataNoviceTournament extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Data.UserQuestDataNoviceTournament";
        static get size() { return 16 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56538600;
        public static fieldNames: string[] = ["Completed"];
        public get Completed(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Data {
    export class UserQuestDataInfluencerTournament extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Data.UserQuestDataInfluencerTournament";
        static get size() { return 16 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56538504;
        public static fieldNames: string[] = ["Completed"];
        public get Completed(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Data {
    export class UserQuestBattlePassData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Data.UserQuestBattlePassData";
        static get size() { return 16 + 8; }
        public static address = 56537904;
        public static fieldNames: string[] = ["CompletedPrototypeIdsByBattlePassId"];
        public get CompletedPrototypeIdsByBattlePassId(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<number>> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, "int"));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Data {
    export class UserQuestAdvancedDailyData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Data.UserQuestAdvancedDailyData";
        static get size() { return 36 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56537752;
        public static fieldNames: string[] = ["MilestoneId", "MilestoneTotalSteps", "CompletedThisPeriodDailyQuests", "Seen"];
        public get MilestoneId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get MilestoneTotalSteps(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public get CompletedThisPeriodDailyQuests(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get Seen(): boolean {
            return this.readTypePrimitive(36, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle.Arena {
    export class UserArenaData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.Arena.UserArenaData";
        static get size() { return 208 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57017688;
        public static fieldNames: string[] = ["ArenaPoints", "Logs", "LastListRefreshTime", "LastParticipationTime", "LastDefeatTime", "DefeatTimesToday", "LastWeeklyRewardTime", "LastRegularProcessTime", "LastWeeklyReward", "LastWeeklyRewardLeagueId", "LastButOneWeeklyRewardLeagueId", "BattlesStartedThisWeek", "DefenseHeroIds", "ArenaDefenseTeamSetup", "LastPointsAdded", "FirstPlaceInPlatinumTimes", "BattleStats", "AvailableWeeklyRewards", "OpponentBonuses", "PointsDeltaToday", "VictoriesThisWeek", "LossesThisWeek"];
        public get ArenaPoints(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get Logs(): System.Collections.Generic.List<codegen.SharedModel.Meta.Battle.Arena.ArenaLog> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Battle.Arena.ArenaLog);
        }
        public get LastListRefreshTime(): Date {
            return this.readField(40, System.DateTime, 2);
        }
        public get LastParticipationTime(): Date {
            return this.readField(48, System.DateTime, 2);
        }
        public get LastDefeatTime(): Date {
            return this.readField(56, System.DateTime, 2);
        }
        public get DefeatTimesToday(): number {
            return this.readTypePrimitive(64, "int", 1);
        }
        public get LastWeeklyRewardTime(): Date {
            return this.readField(72, System.DateTime, 2);
        }
        public get LastRegularProcessTime(): Date {
            return this.readField(80, System.DateTime, 2);
        }
        public get LastWeeklyReward(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(88, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get LastWeeklyRewardLeagueId(): number {
            return this.readTypePrimitive(96, "int", 1);
        }
        public get LastButOneWeeklyRewardLeagueId(): number {
            return this.readTypePrimitive(100, "int", 1);
        }
        public get BattlesStartedThisWeek(): number {
            return this.readTypePrimitive(104, "int", 1);
        }
        public get DefenseHeroIds(): System.Internal.ManagedArray<number> {
            return this.readField(112, System.Internal.ManagedArray, 2, "int");
        }
        public get ArenaDefenseTeamSetup(): codegen.SharedModel.Battle.Core.Setup.TeamSetup {
            return this.readField(120, codegen.SharedModel.Battle.Core.Setup.TeamSetup, 2);
        }
        public get LastPointsAdded(): number {
            return this.readTypePrimitive(128, "double", 1);
        }
        public get FirstPlaceInPlatinumTimes(): number {
            return this.readTypePrimitive(160, "int", 1);
        }
        public get BattleStats(): codegen.SharedModel.Meta.Battle.Arena.UserArenaShortBattleStats {
            return this.readField(176, codegen.SharedModel.Meta.Battle.Arena.UserArenaShortBattleStats, 2);
        }
        public get AvailableWeeklyRewards(): System.Collections.Generic.List<codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(184, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public get OpponentBonuses(): System.Collections.Generic.List<codegen.SharedModel.Meta.Battle.ArenaOpponentBonusData> {
            return this.readField(192, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Battle.ArenaOpponentBonusData);
        }
        public get PointsDeltaToday(): number {
            return this.readTypePrimitive(200, "int", 1);
        }
        public get VictoriesThisWeek(): number {
            return this.readTypePrimitive(204, "int", 1);
        }
        public get LossesThisWeek(): number {
            return this.readTypePrimitive(208, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle.Arena {
    export class ArenaLog extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.Arena.ArenaLog";
        static get size() { return 120 + 8; }
        public static address = 56481464;
        public static fieldNames: string[] = ["UserId", "Time", "OpponentPoints", "OpponentPoints3X3", "Prize", "PointsGained", "OpponentSetup", "Opponent3X3Setup", "PointsGained3X3", "Victory", "Name", "OpponentInitiated", "Rated", "InfluencerInfo", "Arena3X3Results"];
        public get UserId(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get Time(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public get OpponentPoints(): number {
            return this.readTypePrimitive(32, "long", 1);
        }
        public get OpponentPoints3X3(): System.Collections.Generic.List<number> {
            return this.readField(40, System.Collections.Generic.List, 2, "long");
        }
        public get Prize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(48, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get PointsGained(): number {
            return this.readTypePrimitive(56, "long", 1);
        }
        public get OpponentSetup(): codegen.SharedModel.Battle.Core.Setup.TeamSetup {
            return this.readField(64, codegen.SharedModel.Battle.Core.Setup.TeamSetup, 2);
        }
        public get Opponent3X3Setup(): System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Setup.TeamSetup> {
            return this.readField(72, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Core.Setup.TeamSetup);
        }
        public get PointsGained3X3(): System.Collections.Generic.List<number> {
            return this.readField(80, System.Collections.Generic.List, 2, "long");
        }
        public get Victory(): boolean {
            return this.readTypePrimitive(88, "bool", 1);
        }
        public get Name(): string {
            return this.readField(96, System.String, 2);
        }
        public get OpponentInitiated(): boolean {
            return this.readTypePrimitive(104, "bool", 1);
        }
        public get Rated(): boolean {
            return this.readTypePrimitive(105, "bool", 1);
        }
        public get InfluencerInfo(): codegen.SharedModel.Meta.Tournaments.InfluencerInfo {
            return this.readField(112, codegen.SharedModel.Meta.Tournaments.InfluencerInfo, 2);
        }
        public get Arena3X3Results(): System.Collections.Generic.List<number> {
            return this.readField(120, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle.Arena {
    export class UserArenaShortBattleStats extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.Arena.UserArenaShortBattleStats";
        static get size() { return 24 + 8; }
        public static address = 56483072;
        public static fieldNames: string[] = ["StatsByOpponent", "LastStatsRefreshTime"];
        public get StatsByOpponent(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Battle.Arena.UserArenaBattleStatsWithOpponent> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "long", codegen.SharedModel.Meta.Battle.Arena.UserArenaBattleStatsWithOpponent);
        }
        public get LastStatsRefreshTime(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle.Arena {
    export class UserArenaBattleStatsWithOpponent extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.Arena.UserArenaBattleStatsWithOpponent";
        static get size() { return 24 + 8; }
        public static address = 57017936;
        public static fieldNames: string[] = ["BattleCount", "LastBattleTime"];
        public get BattleCount(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get LastBattleTime(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle {
    export class ArenaOpponentBonusData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.ArenaOpponentBonusData";
        static get size() { return 40 + 8; }
        public static address = 56483856;
        public static fieldNames: string[] = ["UserId", "OpponentId", "AreaTypeId", "Bonuses"];
        public get UserId(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get OpponentId(): number {
            return this.readTypePrimitive(24, "long", 1);
        }
        public get AreaTypeId(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get Bonuses(): string {
            return this.readField(40, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Effects {
    export class UserEffectData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Effects.UserEffectData";
        static get size() { return 24 + 8; }
        public static address = 56498720;
        public static fieldNames: string[] = ["LastEffectId", "Effects"];
        public get LastEffectId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Effects(): System.Collections.Generic.List<codegen.SharedModel.Meta.Effects.UserEffect> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Effects.UserEffect);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Effects {
    export class UserEffect extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Effects.UserEffect";
        static get size() { return 48 + 8; }
        public static address = 57032040;
        public static fieldNames: string[] = ["Id", "TypeId", "Source", "Power", "Start", "Finish"];
        public get Id(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get TypeId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Source(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get Power(): number {
            return this.readTypePrimitive(32, "double", 1);
        }
        public get Start(): Date {
            return this.readField(40, System.DateTime, 2);
        }
        public get Finish(): Date {
            return this.readField(48, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.DailyRewards.Data {
    export class UserDailyRewardData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.DailyRewards.Data.UserDailyRewardData";
        static get size() { return 40 + 8; }
        public static address = 56496592;
        public static fieldNames: string[] = ["CurrentProgramType", "PrizeReceivedDates"];
        public get CurrentProgramType(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get PrizeReceivedDates(): System.Collections.Generic.List<Date> {
            return this.readField(40, System.Collections.Generic.List, 2, System.DateTime);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle {
    export class UserBattleData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.UserBattleData";
        static get size() { return 48 + 8; }
        public static address = 56484816;
        public static fieldNames: string[] = ["LastBattles", "LastBattleSetup", "LastBattlePrice", "LastResponse", "AutoBattleData"];
        public get LastBattles(): System.Collections.Generic.List<Date> {
            return this.readField(16, System.Collections.Generic.List, 2, System.DateTime);
        }
        public get LastBattleSetup(): codegen.SharedModel.Battle.Core.Setup.BattleSetup {
            return this.readField(24, codegen.SharedModel.Battle.Core.Setup.BattleSetup, 2);
        }
        public get LastBattlePrice(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(32, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get LastResponse(): codegen.SharedModel.Battle.Commands.FinishBattleResponseDto {
            return this.readField(40, codegen.SharedModel.Battle.Commands.FinishBattleResponseDto, 2);
        }
        public get AutoBattleData(): codegen.SharedModel.Meta.Battle.AutoBattle.UserAutoBattleData {
            return this.readField(48, codegen.SharedModel.Meta.Battle.AutoBattle.UserAutoBattleData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Battle.Commands {
    export class FinishBattleResponseDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Battle.Commands.FinishBattleResponseDto";
        static get size() { return 80 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56447920;
        public static fieldNames: string[] = ["BattleKindId", "ValidationPassed", "StartTime", "Reward", "HeroesExperience", "HeroesExperienceAdded", "MasteryPointsByHeroId", "TournamentPointsByStateId", "FirstTimeRewardGiven"];
        public get BattleKindId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ValidationPassed(): boolean {
            return this.readTypePrimitive(20, "bool", 1);
        }
        public get StartTime(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public get Reward(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(32, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get HeroesExperience(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get HeroesExperienceAdded(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public get MasteryPointsByHeroId(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, number>> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", "int"));
        }
        public get TournamentPointsByStateId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(56, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get FirstTimeRewardGiven(): boolean {
            return this.readTypePrimitive(80, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle.AutoBattle {
    export class UserAutoBattleData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.AutoBattle.UserAutoBattleData";
        static get size() { return 60 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 57140584;
        public static fieldNames: string[] = ["AutoBattlesCount", "BattlesCount", "ContinueOnMaxLevel", "ContinueOnDefeat", "AutoBuyEnergy", "SellArtifactRankIds", "SelectedHeroIds", "FarmHeroIds", "StageId", "RewardOverflowAccepted"];
        public get AutoBattlesCount(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get BattlesCount(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get ContinueOnMaxLevel(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public get ContinueOnDefeat(): boolean {
            return this.readTypePrimitive(25, "bool", 1);
        }
        public get AutoBuyEnergy(): boolean {
            return this.readTypePrimitive(26, "bool", 1);
        }
        public get SellArtifactRankIds(): System.Collections.Generic.List<number> {
            return this.readField(32, System.Collections.Generic.List, 2, "int");
        }
        public get SelectedHeroIds(): System.Collections.Generic.List<number> {
            return this.readField(40, System.Collections.Generic.List, 2, "int");
        }
        public get FarmHeroIds(): System.Collections.Generic.List<number> {
            return this.readField(48, System.Collections.Generic.List, 2, "int");
        }
        public get StageId(): number {
            return this.readTypePrimitive(56, "int", 1);
        }
        public get RewardOverflowAccepted(): boolean {
            return this.readTypePrimitive(60, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalMessages {
    export class UserGlobalMessageData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalMessages.UserGlobalMessageData";
        static get size() { return 32 + il2js.NativeStruct.sizeof("long"); }
        public static address = 56508096;
        public static fieldNames: string[] = ["LastKnownMessageId", "LastKnownStaticMessageId", "UnreadMessageIds", "LastUserMessageId"];
        public get LastKnownMessageId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get LastKnownStaticMessageId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get UnreadMessageIds(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public get LastUserMessageId(): number {
            return this.readTypePrimitive(32, "long", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.SessionChests {
    export class UserSessionChestData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.SessionChests.UserSessionChestData";
        static get size() { return 32 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56544528;
        public static fieldNames: string[] = ["PrizeReceivedMinutes", "LastMilisecondsUpdateTime", "TotalMsInGameToday"];
        public get PrizeReceivedMinutes(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public get LastMilisecondsUpdateTime(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public get TotalMsInGameToday(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class UserAllianceData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.UserAllianceData";
        static get size() { return 120 + 8; }
        public static address = 56472720;
        public static fieldNames: string[] = ["Requests", "Invitations", "AllianceChatRooms", "CurrentBossAttack", "AllianceActivityData", "ReceivedRewards", "RewardInfo"];
        public get Requests(): System.Collections.Generic.List<codegen.SharedModel.Meta.Alliances.UserAllianceRequest> {
            return this.readField(56, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Alliances.UserAllianceRequest);
        }
        public get Invitations(): System.Collections.Generic.List<codegen.SharedModel.Meta.Alliances.UserAllianceInvitation> {
            return this.readField(64, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Alliances.UserAllianceInvitation);
        }
        public get AllianceChatRooms(): System.Collections.Generic.Dictionary<codegen.SharedModel.Meta.Chat.ChatRoomName, codegen.SharedModel.Meta.Alliances.AllianceChatRoomData> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, codegen.SharedModel.Meta.Chat.ChatRoomName, codegen.SharedModel.Meta.Alliances.AllianceChatRoomData);
        }
        public get CurrentBossAttack(): codegen.SharedModel.Meta.Alliances.UserBossAttackInfo {
            return this.readField(96, codegen.SharedModel.Meta.Alliances.UserBossAttackInfo, 2);
        }
        public get AllianceActivityData(): codegen.SharedModel.Meta.Alliances.Activity.UserAllianceActivityData {
            return this.readField(104, codegen.SharedModel.Meta.Alliances.Activity.UserAllianceActivityData, 2);
        }
        public get ReceivedRewards(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Alliances.AllianceBossRewardTakingData> {
            return this.readField(112, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Alliances.AllianceBossRewardTakingData);
        }
        public get RewardInfo(): codegen.SharedModel.Meta.Alliances.UserAllianceBossRewardInfo {
            return this.readField(120, codegen.SharedModel.Meta.Alliances.UserAllianceBossRewardInfo, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class UserAllianceRequest extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.UserAllianceRequest";
        static get size() { return 32 + 8; }
        public static address = 56472864;
        public static fieldNames: string[] = ["AllianceId", "Date", "Message"];
        public get AllianceId(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get Date(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public get Message(): string {
            return this.readField(32, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class UserAllianceInvitation extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.UserAllianceInvitation";
        static get size() { return 32 + 8; }
        public static address = 56472800;
        public static fieldNames: string[] = ["AllianceId", "InviterUserId", "Date"];
        public get AllianceId(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get InviterUserId(): number {
            return this.readTypePrimitive(24, "long", 1);
        }
        public get Date(): Date {
            return this.readField(32, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class AllianceChatRoomData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.AllianceChatRoomData";
        static get size() { return 32 + 8; }
        public static address = 56466848;
        public static fieldNames: string[] = ["Name", "AllowedRanks", "BannedMembers"];
        public get Name(): string {
            return this.readField(16, System.String, 2);
        }
        public get AllowedRanks(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public get BannedMembers(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Alliances.AllianceChatBannedMember> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "long", codegen.SharedModel.Meta.Alliances.AllianceChatBannedMember);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class AllianceChatBannedMember extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.AllianceChatBannedMember";
        static get size() { return 24 + 8; }
        public static address = 56466424;
        public static fieldNames: string[] = ["UserId", "BannedUntil"];
        public get UserId(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get BannedUntil(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class UserBossAttackInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.UserBossAttackInfo";
        static get size() { return 32 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56473024;
        public static fieldNames: string[] = ["Id", "StartTime", "InitialHp"];
        public get Id(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get StartTime(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public get InitialHp(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances.Activity {
    export class UserAllianceActivityData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.Activity.UserAllianceActivityData";
        static get size() { return 24 + 8; }
        public static address = 57128016;
        public static fieldNames: string[] = ["ActivityInfoByDate", "LastRewardReceiveTime"];
        public get ActivityInfoByDate(): System.Collections.Generic.Dictionary<Date, codegen.SharedModel.Meta.Alliances.Activity.UserDailyActivityInfo> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, System.DateTime, codegen.SharedModel.Meta.Alliances.Activity.UserDailyActivityInfo);
        }
        public get LastRewardReceiveTime(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances.Activity {
    export class UserDailyActivityInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.Activity.UserDailyActivityInfo";
        static get size() { return 32 + 8; }
        public static address = 57001784;
        public static fieldNames: string[] = ["CheckedIn", "OnlineTimeMs", "BattleCountByArea"];
        public get CheckedIn(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get OnlineTimeMs(): number {
            return this.readTypePrimitive(24, "long", 1);
        }
        public get BattleCountByArea(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class AllianceBossRewardTakingData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.AllianceBossRewardTakingData";
        static get size() { return 36 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56466376;
        public static fieldNames: string[] = ["AllianceId", "RewardPeriodDate", "DamageRange", "Damage"];
        public get AllianceId(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get RewardPeriodDate(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public get DamageRange(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get Damage(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class UserAllianceBossRewardInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.UserAllianceBossRewardInfo";
        static get size() { return 24 + 8; }
        public static address = 56472560;
        public static fieldNames: string[] = ["RewardsByBossId", "BossPeriodTime"];
        public get RewardsByBossId(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Meta.Alliances.Boss.AllianceBossReward>> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.Alliances.Boss.AllianceBossReward));
        }
        public get BossPeriodTime(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stats {
    export class UserStatsData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stats.UserStatsData";
        static get size() { return 184 + 8; }
        public static address = 56550984;
        public static fieldNames: string[] = ["InvitedUsers", "InviterBonuses", "AutoBattleResultCountByArea", "BattleResultCountByArea", "SummonResultByShardId", "BoughtItemsCountByTypeId", "UsedBmiCountByTypeId", "FusedResourceCountByTypeId", "ArtifactsStatInfosByStageId", "ResourcesStatInfosByStageId", "LowOrbsFromDungeonsCount", "AutoBattleWinsByStageId", "AccessoriesStatsFromSpider", "TotalKillsInArena", "ArenaAttackBattlesCount", "ReachedTop10", "WonRating", "DailyQuestCompleted", "LastPaymentMethod", "PvPsOnRegDay", "Played5MinsOnRegDay", "Played10MinsOnRegDay", "SignInsOnRegistrationDay", "ArenaVictoriesDuringWeek", "ArenaDefeatsDuringWeek", "Arena3X3VictoriesDuringPeriod", "Arena3X3DefeatsDuringPeriod", "Arena3X3InitiatedBattlesDuringPeriod", "MaxArenaLeagueId", "TrackerReasonCountById"];
        public get InvitedUsers(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get InviterBonuses(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get AutoBattleResultCountByArea(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, number>> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", "int"));
        }
        public get BattleResultCountByArea(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, number>> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", "int"));
        }
        public get SummonResultByShardId(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.Dictionary<number, number>> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.Dictionary, "int", "int"));
        }
        public get BoughtItemsCountByTypeId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get UsedBmiCountByTypeId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(56, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get FusedResourceCountByTypeId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get ArtifactsStatInfosByStageId(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Meta.Stats.StageArtifactStatInfo>> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.Stats.StageArtifactStatInfo));
        }
        public get ResourcesStatInfosByStageId(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Meta.Stats.ResourceStatInfo>> {
            return this.readField(80, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.Stats.ResourceStatInfo));
        }
        public get LowOrbsFromDungeonsCount(): number {
            return this.readTypePrimitive(88, "int", 1);
        }
        public get AutoBattleWinsByStageId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(96, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get AccessoriesStatsFromSpider(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Meta.Stats.StageArtifactWithKindStatInfo>> {
            return this.readField(104, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.Stats.StageArtifactWithKindStatInfo));
        }
        public get TotalKillsInArena(): number {
            return this.readTypePrimitive(112, "int", 1);
        }
        public get ArenaAttackBattlesCount(): number {
            return this.readTypePrimitive(116, "int", 1);
        }
        public get ReachedTop10(): number {
            return this.readTypePrimitive(120, "int", 1);
        }
        public get WonRating(): number {
            return this.readTypePrimitive(124, "int", 1);
        }
        public get DailyQuestCompleted(): number {
            return this.readTypePrimitive(128, "int", 1);
        }
        public get LastPaymentMethod(): string {
            return this.readField(136, System.String, 2);
        }
        public get PvPsOnRegDay(): number {
            return this.readTypePrimitive(144, "int", 1);
        }
        public get Played5MinsOnRegDay(): boolean {
            return this.readTypePrimitive(148, "bool", 1);
        }
        public get Played10MinsOnRegDay(): boolean {
            return this.readTypePrimitive(149, "bool", 1);
        }
        public get SignInsOnRegistrationDay(): number {
            return this.readTypePrimitive(152, "int", 1);
        }
        public get ArenaVictoriesDuringWeek(): number {
            return this.readTypePrimitive(156, "int", 1);
        }
        public get ArenaDefeatsDuringWeek(): number {
            return this.readTypePrimitive(160, "int", 1);
        }
        public get Arena3X3VictoriesDuringPeriod(): number {
            return this.readTypePrimitive(164, "int", 1);
        }
        public get Arena3X3DefeatsDuringPeriod(): number {
            return this.readTypePrimitive(168, "int", 1);
        }
        public get Arena3X3InitiatedBattlesDuringPeriod(): number {
            return this.readTypePrimitive(172, "int", 1);
        }
        public get MaxArenaLeagueId(): number {
            return this.readTypePrimitive(176, "int", 1);
        }
        public get TrackerReasonCountById(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(184, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stats {
    export class StageArtifactStatInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stats.StageArtifactStatInfo";
        static get size() { return 44 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57092392;
        public static fieldNames: string[] = ["ArtifactPrimaryStatKind", "CountsByRankId", "IsAbsolute", "Count"];
        public get ArtifactPrimaryStatKind(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get CountsByRankId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get IsAbsolute(): boolean {
            return this.readTypePrimitive(40, "bool", 1);
        }
        public get Count(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stats {
    export class ResourceStatInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stats.ResourceStatInfo";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57091488;
        public static fieldNames: string[] = ["ResourceType", "Count"];
        public get ResourceType(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Count(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stats {
    export class StageArtifactWithKindStatInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stats.StageArtifactWithKindStatInfo";
        static get size() { return 24 + 8; }
        public static address = 57091880;
        public static fieldNames: string[] = ["ArtifactKindId", "CountsByRankId"];
        public get ArtifactKindId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get CountsByRankId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.LoyaltyProgram.Data {
    export class UserLoyaltyProgramData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.LoyaltyProgram.Data.UserLoyaltyProgramData";
        static get size() { return 40 + 8; }
        public static address = 56513736;
        public static fieldNames: string[] = ["CurrentProgramTypeId", "ProgramStateByTypeId"];
        public get CurrentProgramTypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ProgramStateByTypeId(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.LoyaltyProgram.Data.LoyaltyProgramState> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.LoyaltyProgram.Data.LoyaltyProgramState);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.LoyaltyProgram.Data {
    export class LoyaltyProgramState extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.LoyaltyProgram.Data.LoyaltyProgramState";
        static get size() { return 32 + 8; }
        public static address = 56513488;
        public static fieldNames: string[] = ["PrizeReceivedDates"];
        public get PrizeReceivedDates(): System.Collections.Generic.List<Date> {
            return this.readField(32, System.Collections.Generic.List, 2, System.DateTime);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Notifications {
    export class UserNotificationData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Notifications.UserNotificationData";
        static get size() { return 40 + 8; }
        public static address = 56519016;
        public static fieldNames: string[] = ["NotificationSettings", "Revisions", "InternalNotificationSettings", "ScheduledNotifications"];
        public get NotificationSettings(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get Revisions(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", "long");
        }
        public get InternalNotificationSettings(): System.Collections.Generic.Dictionary<number, boolean> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", "bool");
        }
        public get ScheduledNotifications(): System.Collections.Generic.List<codegen.SharedModel.Meta.Notifications.ScheduledPushNotification> {
            return this.readField(40, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Notifications.ScheduledPushNotification);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Notifications {
    export class ScheduledPushNotification extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Notifications.ScheduledPushNotification";
        static get size() { return 48 + 8; }
        public static address = 56518672;
        public static fieldNames: string[] = ["Id", "ScheduledTime", "Type", "CalcellationDetails"];
        public get Id(): System.Guid {
            return this.readField(16, System.Guid, 2);
        }
        public get ScheduledTime(): Date {
            return this.readField(32, System.DateTime, 2);
        }
        public get Type(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get CalcellationDetails(): codegen.SharedModel.Meta.Notifications.PushCancellationDetails {
            return this.readField(48, codegen.SharedModel.Meta.Notifications.PushCancellationDetails, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Notifications {
    export class PushCancellationDetails extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Notifications.PushCancellationDetails";
        static get size() { return 64 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56518120;
        public static fieldNames: string[] = ["PeriodicQuestGroupId"];
        public get PeriodicQuestGroupId(): number {
            return this.readTypePrimitive(64, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ReferralProgram.Data {
    export class UserReferralProgramData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ReferralProgram.Data.UserReferralProgramData";
        static get size() { return 72 + 8; }
        public static address = 57076424;
        public static fieldNames: string[] = ["Slots", "ConditionalRewardId", "ConditionId", "ReferrerLink", "IdomooData"];
        public get Slots(): System.Collections.Generic.List<codegen.SharedModel.Meta.ReferralProgram.Data.ReferralProgramSlot> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.ReferralProgram.Data.ReferralProgramSlot);
        }
        public get ConditionalRewardId(): string {
            return this.readField(48, System.String, 2);
        }
        public get ConditionId(): string {
            return this.readField(56, System.String, 2);
        }
        public get ReferrerLink(): string {
            return this.readField(64, System.String, 2);
        }
        public get IdomooData(): codegen.SharedModel.Meta.ReferralProgram.Data.UserIdomooIntegrationData {
            return this.readField(72, codegen.SharedModel.Meta.ReferralProgram.Data.UserIdomooIntegrationData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ReferralProgram.Data {
    export class ReferralProgramSlot extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ReferralProgram.Data.ReferralProgramSlot";
        static get size() { return 40 + 8; }
        public static address = 57076632;
        public static fieldNames: string[] = ["Id", "LevelsOfClaimedRewards"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get LevelsOfClaimedRewards(): System.Collections.Generic.List<number> {
            return this.readField(40, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ReferralProgram.Data {
    export class UserIdomooIntegrationData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ReferralProgram.Data.UserIdomooIntegrationData";
        static get size() { return 33 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56540656;
        public static fieldNames: string[] = ["VideoLink", "ShortLink", "Seen", "RewardTaken"];
        public get VideoLink(): string {
            return this.readField(16, System.String, 2);
        }
        public get ShortLink(): string {
            return this.readField(24, System.String, 2);
        }
        public get Seen(): boolean {
            return this.readTypePrimitive(32, "bool", 1);
        }
        public get RewardTaken(): boolean {
            return this.readTypePrimitive(33, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.DailyUpdates {
    export class UserDailyUpdateData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.DailyUpdates.UserDailyUpdateData";
        static get size() { return 16 + 8; }
        public static address = 56497144;
        public static fieldNames: string[] = ["DailyUpdates"];
        public get DailyUpdates(): System.Collections.Generic.List<codegen.SharedModel.Meta.DailyUpdates.Entities.DailyUpdate> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.DailyUpdates.Entities.DailyUpdate);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.DailyUpdates.Entities {
    export class DailyUpdate extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.DailyUpdates.Entities.DailyUpdate";
        static get size() { return 40 + 8; }
        public static address = 56496872;
        public static fieldNames: string[] = ["TypeId", "_type"];
        public get TypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get _type(): codegen.SharedModel.Meta.DailyUpdates.Entities.DailyUpdateType {
            return this.readField(40, codegen.SharedModel.Meta.DailyUpdates.Entities.DailyUpdateType, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AbTests {
    export class UserAbTestData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AbTests.UserAbTestData";
        static get size() { return 16 + 8; }
        public static address = 56464448;
        public static fieldNames: string[] = ["TestsById"];
        public get TestsById(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.AbTests.AbTest> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.AbTests.AbTest);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AbTests {
    export class AbTest extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AbTests.AbTest";
        static get size() { return 48 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56462888;
        public static fieldNames: string[] = ["_type", "Id", "GroupId", "StartedTime", "Behaviour", "ClaimedBonus"];
        public get _type(): codegen.SharedModel.Meta.AbTests.AbTestType {
            return this.readField(16, codegen.SharedModel.Meta.AbTests.AbTestType, 2);
        }
        public get Id(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get GroupId(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get StartedTime(): Date {
            return this.readField(32, System.DateTime, 2);
        }
        public get Behaviour(): codegen.SharedModel.Meta.AbTests.AbTestBehaviour {
            return this.readField(40, codegen.SharedModel.Meta.AbTests.AbTestBehaviour, 2);
        }
        public get ClaimedBonus(): boolean {
            return this.readTypePrimitive(48, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AbTests {
    export class AbTestBehaviour extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AbTests.AbTestBehaviour";
        static get size() { return 0; }
        public static address = 56462496;
        public static fieldNames: string[] = [];
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BattlePasses {
    export class UserBattlePassData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BattlePasses.UserBattlePassData";
        static get size() { return 24 + 8; }
        public static address = 56486624;
        public static fieldNames: string[] = ["UserBattlePasses", "SeenIntroIds"];
        public get UserBattlePasses(): System.Collections.Generic.List<codegen.SharedModel.Meta.BattlePasses.UserBattlePass> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.BattlePasses.UserBattlePass);
        }
        public get SeenIntroIds(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BattlePasses {
    export class UserBattlePass extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BattlePasses.UserBattlePass";
        static get size() { return 32 + 8; }
        public static address = 57020816;
        public static fieldNames: string[] = ["Id", "EarnedPoints", "Status", "TypeId", "CollectedLevelsByTypeId"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get EarnedPoints(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Status(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get TypeId(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get CollectedLevelsByTypeId(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<number>> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, "int"));
        }
        public static staticMethods = {
            "<get_EarnedLevels>b__8_0": () => new il2js.MethodInfo(56885472),
            "<get_Level>b__12_0": () => new il2js.MethodInfo(56885568)
        };
    }
}
export namespace codegen.SharedModel.Meta.AutoOpen {
    export class UserAutoOpenData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AutoOpen.UserAutoOpenData";
        static get size() { return 16 + 8; }
        public static address = 56480264;
        public static fieldNames: string[] = ["WindowsByHourToday"];
        public get WindowsByHourToday(): System.Collections.Generic.List<codegen.SharedModel.Meta.AutoOpen.DisplayedWindowByHour> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.AutoOpen.DisplayedWindowByHour);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AutoOpen {
    export class DisplayedWindowByHour extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AutoOpen.DisplayedWindowByHour";
        static get size() { return 28 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57142264;
        public static fieldNames: string[] = ["TypeId", "SeenCount", "Hour", "Day"];
        public get TypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get SeenCount(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Hour(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Day(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AmazonIntegration {
    export class UserAmazonIntegrationData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AmazonIntegration.UserAmazonIntegrationData";
        static get size() { return 24 + 8; }
        public static address = 56474208;
        public static fieldNames: string[] = ["Seen", "SeenMarker", "ClaimedPeriodRewards"];
        public get Seen(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get SeenMarker(): boolean {
            return this.readTypePrimitive(17, "bool", 1);
        }
        public get ClaimedPeriodRewards(): System.Collections.Generic.List<codegen.SharedModel.Meta.AmazonIntegration.UserAmazonIntegrationClaimedReward> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.AmazonIntegration.UserAmazonIntegrationClaimedReward);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.AmazonIntegration {
    export class UserAmazonIntegrationClaimedReward extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.AmazonIntegration.UserAmazonIntegrationClaimedReward";
        static get size() { return 24 + 8; }
        public static address = 57134000;
        public static fieldNames: string[] = ["PeriodId", "ClaimTime"];
        public get PeriodId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ClaimTime(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle.Arena3x3 {
    export class UserArena3X3Data extends codegen.SharedModel.Meta.Battle.Arena.UserArenaData {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.Arena3x3.UserArena3X3Data";
        static get size() { return 320 + 8; }
        public static address = 57019512;
        public static fieldNames: string[] = [...codegen.SharedModel.Meta.Battle.Arena.UserArenaData.fieldNames, "LeagueId", "LastRatingUpdateTime", "CurrentTeamSetupHeroes", "AvailableLeagueReward", "BattleIndex", "CurrentGainedPoints", "CurrentOpponentPoints", "Arena3X3DefenseTeamSetup", "BoughtItems"];
        public get LeagueId(): number {
            return this.readTypePrimitive(216, "int", 1);
        }
        public get LastRatingUpdateTime(): Date {
            return this.readField(224, System.DateTime, 2);
        }
        public get CurrentTeamSetupHeroes(): System.Internal.ManagedArray<number> {
            return this.readField(248, System.Internal.ManagedArray, 2, "int");
        }
        public get AvailableLeagueReward(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(256, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get BattleIndex(): number {
            return this.readTypePrimitive(264, "int", 1);
        }
        public get CurrentGainedPoints(): System.Collections.Generic.List<number> {
            return this.readField(288, System.Collections.Generic.List, 2, "long");
        }
        public get CurrentOpponentPoints(): System.Collections.Generic.List<number> {
            return this.readField(296, System.Collections.Generic.List, 2, "long");
        }
        public get Arena3X3DefenseTeamSetup(): System.Collections.Generic.List<codegen.SharedModel.Battle.Core.Setup.TeamSetup> {
            return this.readField(312, System.Collections.Generic.List, 2, codegen.SharedModel.Battle.Core.Setup.TeamSetup);
        }
        public get BoughtItems(): System.Collections.Generic.List<codegen.SharedModel.Meta.Battle.Arena3x3.UserArena3x3ShopItemData> {
            return this.readField(320, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Battle.Arena3x3.UserArena3x3ShopItemData);
        }
        public static staticMethods = {
            ...codegen.SharedModel.Meta.Battle.Arena.UserArenaData.staticMethods
        };
    }
}
export namespace codegen.SharedModel.Meta.Battle.Arena3x3 {
    export class UserArena3x3ShopItemData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.Arena3x3.UserArena3x3ShopItemData";
        static get size() { return 24 + 8; }
        public static address = 57136816;
        public static fieldNames: string[] = ["ItemId", "PurchasesCount", "LastPurchaseTime"];
        public get ItemId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get PurchasesCount(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get LastPurchaseTime(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Gifts.Data {
    export class UserGiftData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Gifts.Data.UserGiftData";
        static get size() { return 24 + 8; }
        public static address = 56501440;
        public static fieldNames: string[] = ["Gifts", "Taken"];
        public get Gifts(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Gifts.Data.UserGift> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Gifts.Data.UserGift);
        }
        public get Taken(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Gifts.Data {
    export class UserGift extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Gifts.Data.UserGift";
        static get size() { return 32 + 8; }
        public static address = 56501696;
        public static fieldNames: string[] = ["Id", "Type", "Prize", "UiSettings"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Type(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Prize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(24, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get UiSettings(): codegen.SharedModel.Meta.Gifts.Data.UiSettings {
            return this.readField(32, codegen.SharedModel.Meta.Gifts.Data.UiSettings, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Gifts.Data {
    export class UiSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Gifts.Data.UiSettings";
        static get size() { return 24 + 8; }
        public static address = 56501280;
        public static fieldNames: string[] = ["TitleId", "DescriptionId", "DowntimePeriod"];
        public get TitleId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get DescriptionId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get DowntimePeriod(): codegen.SharedModel.Meta.Gifts.Data.DateTimeCondition {
            return this.readField(24, codegen.SharedModel.Meta.Gifts.Data.DateTimeCondition, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Gifts.Data {
    export class DateTimeCondition extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Gifts.Data.DateTimeCondition";
        static get size() { return 24 + 8; }
        public static address = 56501152;
        public static fieldNames: string[] = ["From", "To"];
        public get From(): Date {
            return this.readField(16, System.DateTime, 2);
        }
        public get To(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GiftLinkRewards {
    export class GiftLinkRewardsData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GiftLinkRewards.GiftLinkRewardsData";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57031176;
        public static fieldNames: string[] = ["RewardsByPackageId", "Revision"];
        public get RewardsByPackageId(): System.Collections.Generic.Dictionary<string, codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, System.String, codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public get Revision(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents {
    export class UserServerEventsData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.UserServerEventsData";
        static get size() { return 32 + 8; }
        public static address = 56544120;
        public static fieldNames: string[] = ["NewbieEventData", "GuaranteedHeroEventData", "LegendaryChainEventData"];
        public get NewbieEventData(): codegen.SharedModel.Meta.ServerEvents.UserData.UserNewbieEventData {
            return this.readField(16, codegen.SharedModel.Meta.ServerEvents.UserData.UserNewbieEventData, 2);
        }
        public get GuaranteedHeroEventData(): codegen.SharedModel.Meta.ServerEvents.UserData.UserGuaranteedHeroEventData {
            return this.readField(24, codegen.SharedModel.Meta.ServerEvents.UserData.UserGuaranteedHeroEventData, 2);
        }
        public get LegendaryChainEventData(): codegen.SharedModel.Meta.ServerEvents.UserData.UserLegendaryChainEventData {
            return this.readField(32, codegen.SharedModel.Meta.ServerEvents.UserData.UserLegendaryChainEventData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents.UserData {
    export class UserNewbieEventData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.UserData.UserNewbieEventData";
        static get size() { return 24 + il2js.NativeStruct.sizeof("double"); }
        public static address = 56543976;
        public static fieldNames: string[] = ["StartTime", "LifeTimeInHours"];
        public get StartTime(): Date {
            return this.readField(16, System.DateTime, 2);
        }
        public get LifeTimeInHours(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents.UserData {
    export class UserGuaranteedHeroEventData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.UserData.UserGuaranteedHeroEventData";
        static get size() { return 48 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56410392;
        public static fieldNames: string[] = ["CurrentEventHash", "StartTime", "OpenedShardsCount"];
        public get CurrentEventHash(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get StartTime(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public get OpenedShardsCount(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents.UserData {
    export class UserLegendaryChainEventData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.UserData.UserLegendaryChainEventData";
        static get size() { return 24 + 8; }
        public static address = 56543944;
        public static fieldNames: string[] = ["SeenEventsHash", "EventData"];
        public get SeenEventsHash(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public get EventData(): codegen.SharedModel.Meta.ServerEvents.UserData.LegendaryChainEventData {
            return this.readField(24, codegen.SharedModel.Meta.ServerEvents.UserData.LegendaryChainEventData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents.UserData {
    export class LegendaryChainEventData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.UserData.LegendaryChainEventData";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57078040;
        public static fieldNames: string[] = ["EventHash", "ShardTypeId"];
        public get EventHash(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ShardTypeId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Common.UserMigration {
    export class UserMigrationData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Common.UserMigration.UserMigrationData";
        static get size() { return 16 + 8; }
        public static address = 56462392;
        public static fieldNames: string[] = ["AppliedMigrations"];
        public get AppliedMigrations(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "long");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.CvcTournament.User {
    export class UserCvcData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.CvcTournament.User.UserCvcData";
        static get size() { return 24 + 8; }
        public static address = 56496104;
        public static fieldNames: string[] = ["QuestActive", "SeenCvcIntro", "SeenCvcOutro", "Tournaments"];
        public get QuestActive(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get SeenCvcIntro(): boolean {
            return this.readTypePrimitive(17, "bool", 1);
        }
        public get SeenCvcOutro(): boolean {
            return this.readTypePrimitive(18, "bool", 1);
        }
        public get Tournaments(): System.Collections.Generic.List<codegen.SharedModel.Meta.CvcTournament.User.CvcRewardsUserInfo> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.CvcTournament.User.CvcRewardsUserInfo);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.CvcTournament.User {
    export class CvcRewardsUserInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.CvcTournament.User.CvcRewardsUserInfo";
        static get size() { return 24 + 8; }
        public static address = 57027592;
        public static fieldNames: string[] = ["TournamentPrototypeId", "SwingRewardTaken", "RewardsTakenMilestoneIds"];
        public get TournamentPrototypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get SwingRewardTaken(): boolean {
            return this.readTypePrimitive(20, "bool", 1);
        }
        public get RewardsTakenMilestoneIds(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Social {
    export class SocialWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Social.SocialWrapperReadOnly";
        static get size() { return 32 + il2js.NativeStruct.sizeof("long"); }
        public static address = 56411280;
        public static fieldNames: string[] = ["SocialData", "UserId"];
        public get SocialData(): codegen.Client.Model.Gameplay.Social.Data.UserSocialData {
            return this.readField(24, codegen.Client.Model.Gameplay.Social.Data.UserSocialData, 2);
        }
        public get UserId(): number {
            return this.readTypePrimitive(32, "long", 1);
        }
        public static staticMethods = {
            ".cctor": () => new il2js.MethodInfo(56911248)
        };
    }
}
export namespace codegen.Client.MVVM.Model.Events {
    export class EventNoExceptBase extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.MVVM.Model.Events.EventNoExceptBase";
        static get size() { return 16 + 8; }
        public static address = 56902640;
        public static fieldNames: string[] = ["Tag"];
        public get Tag(): string {
            return this.readField(16, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.MVVM.Model.Events {
    export class EventNoExcept<TArg0 = unknown> extends codegen.Client.MVVM.Model.Events.EventNoExceptBase {
        public static [TypeName] = "codegen.Client.MVVM.Model.Events.EventNoExcept";
        static get size() { return 0 + 8; }
        public static fieldNames: string[] = [...codegen.Client.MVVM.Model.Events.EventNoExceptBase.fieldNames, "_handlers"];
        constructor(address: Address, _t0: TArg0 = typeof il2js.UnknownObject as any) { super(address); }
        public get _handlers(): codegen.Client.MVVM.Model.Events.EventHandlerCollection<codegen.Client.MVVM.Model.Events.EventNoExcept__1_Handler> {
            return this.readField(0, codegen.Client.MVVM.Model.Events.EventHandlerCollection, 2, codegen.Client.MVVM.Model.Events.EventNoExcept__1_Handler);
        }
        public static staticMethods = {
            ...codegen.Client.MVVM.Model.Events.EventNoExceptBase.staticMethods,
            "Dispatch": () => new il2js.MethodInfo(56867368),
            "<UserReadGuard>.ctor": () => new il2js.MethodInfo(56867512),
            "<UserReadGuard>Dispatch": () => new il2js.MethodInfo(56867656),
            "<UserReadGuard>Subscribe": () => new il2js.MethodInfo(56867720),
            "<UserReadGuard>Unsubscribe": () => new il2js.MethodInfo(56867800),
            "<long>.ctor": () => new il2js.MethodInfo(56867880),
            "<long>Dispatch": () => new il2js.MethodInfo(56867992)
        };
    }
}
export namespace codegen.Client.MVVM.Model.Events {
    export class EventHandlerCollection<THandler = unknown> extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.MVVM.Model.Events.EventHandlerCollection";
        static get size() { return 0 + 8; }
        public static fieldNames: string[] = ["_handlers"];
        constructor(address: Address, _t0: THandler = typeof il2js.UnknownObject as any) { super(address); }
        public get _handlers(): il2js.UnknownObject {
            return this.readField(0, il2js.UnknownObject, 2);
        }
        public static staticMethods = {
            "<EventNoExcept.Handler>.ctor": () => new il2js.MethodInfo(56867080),
            "<EventNoExcept.Handler>Add": () => new il2js.MethodInfo(56867208),
            "<EventNoExcept.Handler>Remove": () => new il2js.MethodInfo(56867248),
            "<EventNoExcept.Handler>Get": () => new il2js.MethodInfo(56953280)
        };
    }
}
export namespace codegen.Client.MVVM.Model.Events {
    export class EventNoExcept__1_Handler<TArg0 = unknown> extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.MVVM.Model.Events.EventNoExcept__1_Handler";
        static get size() { return 0 + 8; }
        public static fieldNames: string[] = ["Tag"];
        constructor(address: Address, _t0: TArg0 = typeof il2js.UnknownObject as any) { super(address); }
        public get Tag(): string {
            return this.readField(0, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.MVVM.Model.User {
    export class UserGuard<TUserWrapper = unknown> extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.MVVM.Model.User.UserGuard";
        static get size() { return 0; }
        public static fieldNames: string[] = [];
        constructor(address: Address, _t0: TUserWrapper = typeof il2js.UnknownObject as any) { super(address); }
        public static get Current(): codegen.Client.MVVM.Model.User.UserGuard {
            return this.readField(-1, codegen.Client.MVVM.Model.User.UserGuard, 2);
        }
        public static staticMethods = {
            "<UserWrapper>get_UserWrapper": () => new il2js.MethodInfo(56876144),
            "<UserWrapper>.ctor": () => new il2js.MethodInfo(56868504),
            "<UserWrapper>Info": () => new il2js.MethodInfo(56868600),
            "<object>.ctor": () => new il2js.MethodInfo(56868792)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Account {
    export class AccountWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Account.AccountWrapperReadOnly";
        static get size() { return 48 + il2js.NativeStruct.sizeof("bool"); }
        public static fieldNames: string[] = ["AccountData", "CommonData", "PeriodicQuests", "FirstSignInToday"];
        public get AccountData(): codegen.SharedModel.Meta.Account.UserAccount {
            return this.readField(24, codegen.SharedModel.Meta.Account.UserAccount, 2);
        }
        public get CommonData(): codegen.SharedModel.Meta.CommonData.UserCommonData {
            return this.readField(32, codegen.SharedModel.Meta.CommonData.UserCommonData, 2);
        }
        public get PeriodicQuests(): codegen.Client.Model.Gameplay.Quests.PeriodicQuestWrapper {
            return this.readField(40, codegen.Client.Model.Gameplay.Quests.PeriodicQuestWrapper, 2);
        }
        public get FirstSignInToday(): boolean {
            return this.readTypePrimitive(48, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Quests {
    export class PeriodicQuestWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Quests.PeriodicQuestWrapperReadOnly";
        static get size() { return 24 + 8; }
        public static fieldNames: string[] = ["User", "QuestData"];
        public get User(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(16, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public get QuestData(): codegen.SharedModel.Meta.Quests.Data.UserQuestData {
            return this.readField(24, codegen.SharedModel.Meta.Quests.Data.UserQuestData, 2);
        }
        public static staticMethods = {
            "<GetKnownQuestIds>b__13_0": () => new il2js.MethodInfo(56643392),
            "WithCompletedQuest": () => new il2js.MethodInfo(56643464),
            "WithOpenQuest": () => new il2js.MethodInfo(56643552)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Quests {
    export class PeriodicQuestWrapper extends codegen.Client.Model.Gameplay.Quests.PeriodicQuestWrapperReadOnly {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Quests.PeriodicQuestWrapper";
        static get size() { return 0; }
        public static address = 56416160;
        public static fieldNames: string[] = [...codegen.Client.Model.Gameplay.Quests.PeriodicQuestWrapperReadOnly.fieldNames];
        public static staticMethods = {
            ...codegen.Client.Model.Gameplay.Quests.PeriodicQuestWrapperReadOnly.staticMethods,
            "<Refresh>b__5_0": () => new il2js.MethodInfo(56910392)
        };
    }
}
export namespace codegen.System.Net {
    export class TimerThread_Queue extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Net.TimerThread_Queue";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static fieldNames: string[] = ["m_DurationMilliseconds"];
        public get m_DurationMilliseconds(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.System {
    export class Uri_UriInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Uri_UriInfo";
        static get size() { return 64 + 8; }
        public static address = 56548304;
        public static fieldNames: string[] = ["Host", "ScopeId", "String", "Offset", "DnsSafeHost", "MoreInfo"];
        public get Host(): string {
            return this.readField(16, System.String, 2);
        }
        public get ScopeId(): string {
            return this.readField(24, System.String, 2);
        }
        public get String(): string {
            return this.readField(32, System.String, 2);
        }
        public get Offset(): codegen.System.Uri_Offset {
            return this.readField(40, codegen.System.Uri_Offset, 2);
        }
        public get DnsSafeHost(): string {
            return this.readField(56, System.String, 2);
        }
        public get MoreInfo(): codegen.System.Uri_MoreInfo {
            return this.readField(64, codegen.System.Uri_MoreInfo, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.System {
    export class Uri_Offset extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Uri_Offset";
        static get size() { return 14 + il2js.NativeStruct.sizeof("ushort"); }
        public static fieldNames: string[] = ["Scheme", "User", "Host", "PortValue", "Path", "Query", "Fragment", "End"];
        public get Scheme(): number {
            return this.readTypePrimitive(0, "ushort", 1);
        }
        public get User(): number {
            return this.readTypePrimitive(2, "ushort", 1);
        }
        public get Host(): number {
            return this.readTypePrimitive(4, "ushort", 1);
        }
        public get PortValue(): number {
            return this.readTypePrimitive(6, "ushort", 1);
        }
        public get Path(): number {
            return this.readTypePrimitive(8, "ushort", 1);
        }
        public get Query(): number {
            return this.readTypePrimitive(10, "ushort", 1);
        }
        public get Fragment(): number {
            return this.readTypePrimitive(12, "ushort", 1);
        }
        public get End(): number {
            return this.readTypePrimitive(14, "ushort", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.System {
    export class Uri_MoreInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Uri_MoreInfo";
        static get size() { return 56 + 8; }
        public static address = 56548232;
        public static fieldNames: string[] = ["Path", "Query", "Fragment", "AbsoluteUri", "Hash", "RemoteUrl"];
        public get Path(): string {
            return this.readField(16, System.String, 2);
        }
        public get Query(): string {
            return this.readField(24, System.String, 2);
        }
        public get Fragment(): string {
            return this.readField(32, System.String, 2);
        }
        public get AbsoluteUri(): string {
            return this.readField(40, System.String, 2);
        }
        public get Hash(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get RemoteUrl(): string {
            return this.readField(56, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.System.Collections {
    export class Hashtable_bucket extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Collections.Hashtable_bucket";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static fieldNames: string[] = ["key", "val", "hash_coll"];
        public get key(): il2js.UnknownObject {
            return this.readField(0, il2js.UnknownObject, 2);
        }
        public get val(): il2js.UnknownObject {
            return this.readField(8, il2js.UnknownObject, 2);
        }
        public get hash_coll(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.System.Collections.Specialized {
    export class NameObjectCollectionBase_NameObjectEntry extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Collections.Specialized.NameObjectCollectionBase_NameObjectEntry";
        static get size() { return 24 + 8; }
        public static address = 56512080;
        public static fieldNames: string[] = ["Key", "Value"];
        public get Key(): string {
            return this.readField(16, System.String, 2);
        }
        public get Value(): il2js.UnknownObject {
            return this.readField(24, il2js.UnknownObject, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.System.Net {
    export class WebConnectionGroup_ConnectionState extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Net.WebConnectionGroup_ConnectionState";
        static get size() { return 40 + 8; }
        public static address = 56540504;
        public static fieldNames: string[] = ["busy", "idleSince"];
        public get busy(): boolean {
            return this.readTypePrimitive(32, "bool", 1);
        }
        public get idleSince(): Date {
            return this.readField(40, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.System.IO {
    export class Stream_ReadWriteTask extends System.Threading.Tasks.Task<number> {
        public static [TypeName] = "codegen.System.IO.Stream_ReadWriteTask";
        static get size() { return 116 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56380800;
        public static fieldNames: string[] = [...System.Threading.Tasks.Task.fieldNames, "_isRead", "_stream", "_buffer", "_offset", "_count"];
        public get _isRead(): boolean {
            return this.readTypePrimitive(88, "bool", 1);
        }
        public get _stream(): System.IO.Stream {
            return this.readField(96, System.IO.Stream, 2);
        }
        public get _buffer(): System.Internal.ManagedArray<number> {
            return this.readField(104, System.Internal.ManagedArray, 2, "byte");
        }
        public get _offset(): number {
            return this.readTypePrimitive(112, "int", 1);
        }
        public get _count(): number {
            return this.readTypePrimitive(116, "int", 1);
        }
        public static staticMethods = {
            ...System.Threading.Tasks.Task.staticMethods
        };
    }
}
export namespace codegen.System.Threading {
    export class Timer_Scheduler extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Threading.Timer_Scheduler";
        static get size() { return 24 + 8; }
        public static address = 56440704;
        public static fieldNames: string[] = ["changed"];
        public get changed(): System.Threading.ManualResetEvent {
            return this.readField(24, System.Threading.ManualResetEvent, 2);
        }
        public static get instance(): codegen.System.Threading.Timer_Scheduler {
            return this.readField(0, codegen.System.Threading.Timer_Scheduler, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.System.Collections {
    export class SortedList_KeyList extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Collections.SortedList_KeyList";
        static get size() { return 0; }
        public static address = 57156056;
        public static fieldNames: string[] = [];
        public static staticMethods = {};
    }
}
export namespace codegen.System.Collections {
    export class SortedList_ValueList extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Collections.SortedList_ValueList";
        static get size() { return 0; }
        public static address = 57156144;
        public static fieldNames: string[] = [];
        public static staticMethods = {};
    }
}
export namespace codegen.System.Threading.Tasks {
    export class _1_Task_ContingentProperties extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Threading.Tasks._1_Task_ContingentProperties";
        static get size() { return 60 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56435680;
        public static fieldNames: string[] = ["m_internalCancellationRequested", "m_completionCountdown"];
        public get m_internalCancellationRequested(): number {
            return this.readTypePrimitive(56, "int", 1);
        }
        public get m_completionCountdown(): number {
            return this.readTypePrimitive(60, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.System.Threading {
    export class SemaphoreSlim_TaskNode extends System.Threading.Tasks.Task<boolean> {
        public static [TypeName] = "codegen.System.Threading.SemaphoreSlim_TaskNode";
        static get size() { return 96 + 8; }
        public static address = 56434072;
        public static fieldNames: string[] = [...System.Threading.Tasks.Task.fieldNames, "Prev", "Next"];
        public get Prev(): codegen.System.Threading.SemaphoreSlim_TaskNode {
            return this.readField(88, codegen.System.Threading.SemaphoreSlim_TaskNode, 2);
        }
        public get Next(): codegen.System.Threading.SemaphoreSlim_TaskNode {
            return this.readField(96, codegen.System.Threading.SemaphoreSlim_TaskNode, 2);
        }
        public static staticMethods = {
            ...System.Threading.Tasks.Task.staticMethods
        };
    }
}
export namespace codegen.Mono.Globalization.Unicode {
    export class CodePointIndexer_TableRange extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Mono.Globalization.Unicode.CodePointIndexer_TableRange";
        static get size() { return 16 + il2js.NativeStruct.sizeof("int"); }
        public static fieldNames: string[] = ["Start", "End", "Count", "IndexStart", "IndexEnd"];
        public get Start(): number {
            return this.readTypePrimitive(0, "int", 1);
        }
        public get End(): number {
            return this.readTypePrimitive(4, "int", 1);
        }
        public get Count(): number {
            return this.readTypePrimitive(8, "int", 1);
        }
        public get IndexStart(): number {
            return this.readTypePrimitive(12, "int", 1);
        }
        public get IndexEnd(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.System.Net {
    export class WebConnection_AbortHelper extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Net.WebConnection_AbortHelper";
        static get size() { return 0; }
        public static address = 56540128;
        public static fieldNames: string[] = [];
        public static staticMethods = {};
    }
}
export namespace codegen.System.Net {
    export class HttpWebRequest_AuthorizationState extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Net.HttpWebRequest_AuthorizationState";
        static get size() { return 12 + il2js.NativeStruct.sizeof("int"); }
        public static fieldNames: string[] = ["isProxy", "isCompleted", "ntlm_auth_state"];
        public get isProxy(): boolean {
            return this.readTypePrimitive(8, "bool", 1);
        }
        public get isCompleted(): boolean {
            return this.readTypePrimitive(9, "bool", 1);
        }
        public get ntlm_auth_state(): number {
            return this.readTypePrimitive(12, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.App.Timers {
    export class GranularTimer extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.App.Timers.GranularTimer";
        static get size() { return 48 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56897656;
        public static fieldNames: string[] = ["CurrentMs", "TotalMs", "Granularity"];
        public get CurrentMs(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get TotalMs(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public get Granularity(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public static staticMethods = {
            ".cctor": () => new il2js.MethodInfo(56817056),
            ".ctor": () => new il2js.MethodInfo(56817128),
            "<.ctor>b__12_0": () => new il2js.MethodInfo(56817256)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.User.Dto {
    export class UserRequestDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.User.Dto.UserRequestDto";
        static get size() { return 128 + 8; }
        public static address = 56444232;
        public static fieldNames: string[] = ["KnownUserRevision", "KnownServerTime", "KnownQuestIds", "IsForceRefresh", "ClientChangesDto", "GlobalEvents", "KnownBattlePassInfo", "Arena3X3RequestDto"];
        public get KnownUserRevision(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get KnownServerTime(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public get KnownQuestIds(): System.Collections.Generic.List<number> {
            return this.readField(32, System.Collections.Generic.List, 2, "int");
        }
        public get IsForceRefresh(): boolean {
            return this.readTypePrimitive(72, "bool", 1);
        }
        public get ClientChangesDto(): codegen.SharedModel.Common.LazyData.ClientChangesDto {
            return this.readField(80, codegen.SharedModel.Common.LazyData.ClientChangesDto, 2);
        }
        public get GlobalEvents(): codegen.SharedModel.Meta.GlobalEvents.Dtos.GlobalEventsRequestDto {
            return this.readField(88, codegen.SharedModel.Meta.GlobalEvents.Dtos.GlobalEventsRequestDto, 2);
        }
        public get KnownBattlePassInfo(): codegen.SharedModel.Meta.BattlePasses.Dtos.BattlePassRequestDto {
            return this.readField(96, codegen.SharedModel.Meta.BattlePasses.Dtos.BattlePassRequestDto, 2);
        }
        public get Arena3X3RequestDto(): codegen.SharedModel.Meta.Battle.Arena3x3.Arena3X3RequestDto {
            return this.readField(128, codegen.SharedModel.Meta.Battle.Arena3x3.Arena3X3RequestDto, 2);
        }
        public static staticMethods = {
            "<LogReferralOpenDto>.ctor": () => new il2js.MethodInfo(56916240)
        };
    }
}
export namespace codegen.SharedModel.Common.LazyData {
    export class ClientChangesDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Common.LazyData.ClientChangesDto";
        static get size() { return 296 + 8; }
        public static address = 57120504;
        public static fieldNames: string[] = ["SeenArtifactIds", "SeenHeroTypeIds", "SeenInboxItemIds", "SeenQuestPrototypeIds", "FirstSeenSoloEventTeaserPrototypeIds", "SeenUserAvatarIds", "SeenBmiBoxIds", "SeenTournamentInfoByQuestStateId", "GlobalMessagesMarkAsReadIds", "UserAutoBattleData", "SeenInGameWindows", "SeenGooglePointsPaymentIds", "SeenTempFuseHeroTypeIds", "SeenHeroPartsCountById", "SeenIndicatorsOfferIds", "SeenSecretChamberIds", "HeroesMarkers", "BankActionsLogs", "UserPerformanceData", "ContextsPerformanceLogData", "BundleExceptions", "Settings"];
        public get SeenArtifactIds(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public get SeenHeroTypeIds(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public get SeenInboxItemIds(): System.Collections.Generic.List<number> {
            return this.readField(32, System.Collections.Generic.List, 2, "int");
        }
        public get SeenQuestPrototypeIds(): System.Collections.Generic.List<number> {
            return this.readField(40, System.Collections.Generic.List, 2, "int");
        }
        public get FirstSeenSoloEventTeaserPrototypeIds(): System.Collections.Generic.List<number> {
            return this.readField(48, System.Collections.Generic.List, 2, "int");
        }
        public get SeenUserAvatarIds(): System.Collections.Generic.List<number> {
            return this.readField(56, System.Collections.Generic.List, 2, "int");
        }
        public get SeenBmiBoxIds(): System.Collections.Generic.List<number> {
            return this.readField(64, System.Collections.Generic.List, 2, "int");
        }
        public get SeenTournamentInfoByQuestStateId(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Tournaments.SeenTournamentInfo> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Tournaments.SeenTournamentInfo);
        }
        public get GlobalMessagesMarkAsReadIds(): System.Internal.ManagedArray<number> {
            return this.readField(96, System.Internal.ManagedArray, 2, "int");
        }
        public get UserAutoBattleData(): codegen.SharedModel.Meta.Battle.AutoBattle.UserAutoBattleData {
            return this.readField(104, codegen.SharedModel.Meta.Battle.AutoBattle.UserAutoBattleData, 2);
        }
        public get SeenInGameWindows(): System.Collections.Generic.List<codegen.SharedModel.Meta.AutoOpen.DisplayedWindowByHour> {
            return this.readField(128, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.AutoOpen.DisplayedWindowByHour);
        }
        public get SeenGooglePointsPaymentIds(): System.Collections.Generic.List<number> {
            return this.readField(144, System.Collections.Generic.List, 2, "int");
        }
        public get SeenTempFuseHeroTypeIds(): System.Collections.Generic.Dictionary<number, Date> {
            return this.readField(152, System.Collections.Generic.Dictionary, 2, "int", System.DateTime);
        }
        public get SeenHeroPartsCountById(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(184, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get SeenIndicatorsOfferIds(): System.Collections.Generic.List<number> {
            return this.readField(192, System.Collections.Generic.List, 2, "int");
        }
        public get SeenSecretChamberIds(): System.Collections.Generic.List<number> {
            return this.readField(200, System.Collections.Generic.List, 2, "int");
        }
        public get HeroesMarkers(): System.Collections.Generic.List<codegen.SharedModel.Meta.Heroes.Dtos.SetHeroMarkerDto> {
            return this.readField(256, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Heroes.Dtos.SetHeroMarkerDto);
        }
        public get BankActionsLogs(): System.Collections.Generic.List<codegen.SharedModel.Meta.Offers.Dto.LogOfferClientActionRequestDto> {
            return this.readField(264, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Offers.Dto.LogOfferClientActionRequestDto);
        }
        public get UserPerformanceData(): System.Collections.Generic.List<codegen.SharedModel.Meta.PerformanceMeter.Dto.PerformanceDataDto> {
            return this.readField(272, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.PerformanceMeter.Dto.PerformanceDataDto);
        }
        public get ContextsPerformanceLogData(): System.Collections.Generic.List<codegen.SharedModel.Meta.PerformanceMeter.Dto.ContextPerformanceDataDto> {
            return this.readField(280, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.PerformanceMeter.Dto.ContextPerformanceDataDto);
        }
        public get BundleExceptions(): System.Collections.Generic.List<codegen.SharedModel.Meta.Bundles.BundleExceptionDto> {
            return this.readField(288, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Bundles.BundleExceptionDto);
        }
        public get Settings(): codegen.SharedModel.Common.LazyData.Settings.ClientChangesSettings {
            return this.readField(296, codegen.SharedModel.Common.LazyData.Settings.ClientChangesSettings, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Heroes.Dtos {
    export class SetHeroMarkerDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Heroes.Dtos.SetHeroMarkerDto";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56774432;
        public static fieldNames: string[] = ["HeroId", "Marker"];
        public get HeroId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Marker(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers.Dto {
    export class LogOfferClientActionRequestDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.Dto.LogOfferClientActionRequestDto";
        static get size() { return 64 + 8; }
        public static address = 56380760;
        public static fieldNames: string[] = ["Id", "ExposureLocation", "LogType", "ActionTime"];
        public get Id(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get ExposureLocation(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get LogType(): number {
            return this.readTypePrimitive(52, "int", 1);
        }
        public get ActionTime(): Date {
            return this.readField(64, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.PerformanceMeter.Dto {
    export class PerformanceDataDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.PerformanceMeter.Dto.PerformanceDataDto";
        static get size() { return 72 + 8; }
        public static address = 56403264;
        public static fieldNames: string[] = ["Id", "View", "TimeMs", "TargetFPS", "Fps", "UpdatesTime", "RendersTime", "ExtraData"];
        public get Id(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get View(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get TimeMs(): number {
            return this.readTypePrimitive(32, "long", 1);
        }
        public get TargetFPS(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get Fps(): System.Internal.ManagedArray<number> {
            return this.readField(48, System.Internal.ManagedArray, 2, "int");
        }
        public get UpdatesTime(): System.Internal.ManagedArray<number> {
            return this.readField(56, System.Internal.ManagedArray, 2, "int");
        }
        public get RendersTime(): System.Internal.ManagedArray<number> {
            return this.readField(64, System.Internal.ManagedArray, 2, "int");
        }
        public get ExtraData(): System.Collections.Generic.Dictionary<string, string> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, System.String, System.String);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.PerformanceMeter.Dto {
    export class ContextPerformanceDataDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.PerformanceMeter.Dto.ContextPerformanceDataDto";
        static get size() { return 32 + il2js.NativeStruct.sizeof("long"); }
        public static address = 56403208;
        public static fieldNames: string[] = ["Id", "Name", "RefreshTimeMs"];
        public get Id(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get Name(): string {
            return this.readField(24, System.String, 2);
        }
        public get RefreshTimeMs(): number {
            return this.readTypePrimitive(32, "long", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Bundles {
    export class BundleExceptionDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Bundles.BundleExceptionDto";
        static get size() { return 56 + 8; }
        public static address = 56410536;
        public static fieldNames: string[] = ["Id", "Url", "Message", "Type"];
        public get Id(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get Url(): string {
            return this.readField(24, System.String, 2);
        }
        public get Message(): string {
            return this.readField(48, System.String, 2);
        }
        public get Type(): string {
            return this.readField(56, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Common.LazyData.Settings {
    export class ClientChangesSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Common.LazyData.Settings.ClientChangesSettings";
        static get size() { return 48 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56461016;
        public static fieldNames: string[] = ["IgnoreSeenArtifactsOnAutoRefresh", "IgnoreSeenHeroTypesOnAutoRefresh", "IgnoreSeenInboxItemsOnAutoRefresh", "IgnoreSeenQuestPrototypesOnAutoRefresh", "IgnoreSeenTournamentsOnAutoRefresh", "IgnoreSeenGlobalMessagesOnAutoRefresh", "IgnoreSeenUserAvatarsOnAutoRefresh", "IgnoreSeenBmiBoxesOnAutoRefresh", "IgnoreSeenGooglePointPaymentsOnAutoRefresh", "IgnoreSeenSoloEventTeaserPrototypesOnAutoRefresh", "IgnoreMapDifficultyOnAutoRefresh", "IgnoreAutoBattlesOnAutoRefresh", "IgnoreLastReceiptUpdateTimeOnAutoRefresh", "IgnoreSeenInGameWindowsOnAutoRefresh", "IgnoreSeenAmazonIntegrationOnAutoRefresh", "IgnoreSeenAmazonMarkerOnAutoRefresh", "IgnoreFpsOnAutoRefresh", "IgnoreSeenBattlePassIntrosOnAutoRefresh", "IgnoreSeenHeroPartsOnAutoRefresh", "IgnoreSeenAdvancedDailyQuestsOnAutoRefresh", "IgnoreSoundStatusOnAutoRefresh", "IgnoreSeenTempFuseHeroesOnAutoRefresh", "IgnoreSeenMaxDifficultiesOnAutoRefresh", "IgnoreSeenIndicatorsOfferIdsOnAutoRefresh", "IgnoreDoomTowerDifficultyOnAutoRefresh", "IgnoreDoomTowerMaxSeenDifficultyIdOnAutoRefresh", "IgnoreSeenSecretChamberIdsOnAutoRefresh", "IgnoreSeenDoomTowerOnAutoRefresh", "IgnoreSeenRatingArchiveOnAutoRefresh", "IgnoreArtifactBoosterOnAutoRefresh", "IgnoreSeenCvcIntroOnAutoRefresh", "IgnoreSeenCvcOutroOnAutoRefresh", "IgnoreHeroesMarkersOnAutoRefresh"];
        public get IgnoreSeenArtifactsOnAutoRefresh(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get IgnoreSeenHeroTypesOnAutoRefresh(): boolean {
            return this.readTypePrimitive(17, "bool", 1);
        }
        public get IgnoreSeenInboxItemsOnAutoRefresh(): boolean {
            return this.readTypePrimitive(18, "bool", 1);
        }
        public get IgnoreSeenQuestPrototypesOnAutoRefresh(): boolean {
            return this.readTypePrimitive(19, "bool", 1);
        }
        public get IgnoreSeenTournamentsOnAutoRefresh(): boolean {
            return this.readTypePrimitive(20, "bool", 1);
        }
        public get IgnoreSeenGlobalMessagesOnAutoRefresh(): boolean {
            return this.readTypePrimitive(21, "bool", 1);
        }
        public get IgnoreSeenUserAvatarsOnAutoRefresh(): boolean {
            return this.readTypePrimitive(22, "bool", 1);
        }
        public get IgnoreSeenBmiBoxesOnAutoRefresh(): boolean {
            return this.readTypePrimitive(23, "bool", 1);
        }
        public get IgnoreSeenGooglePointPaymentsOnAutoRefresh(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public get IgnoreSeenSoloEventTeaserPrototypesOnAutoRefresh(): boolean {
            return this.readTypePrimitive(25, "bool", 1);
        }
        public get IgnoreMapDifficultyOnAutoRefresh(): boolean {
            return this.readTypePrimitive(26, "bool", 1);
        }
        public get IgnoreAutoBattlesOnAutoRefresh(): boolean {
            return this.readTypePrimitive(27, "bool", 1);
        }
        public get IgnoreLastReceiptUpdateTimeOnAutoRefresh(): boolean {
            return this.readTypePrimitive(28, "bool", 1);
        }
        public get IgnoreSeenInGameWindowsOnAutoRefresh(): boolean {
            return this.readTypePrimitive(29, "bool", 1);
        }
        public get IgnoreSeenAmazonIntegrationOnAutoRefresh(): boolean {
            return this.readTypePrimitive(30, "bool", 1);
        }
        public get IgnoreSeenAmazonMarkerOnAutoRefresh(): boolean {
            return this.readTypePrimitive(31, "bool", 1);
        }
        public get IgnoreFpsOnAutoRefresh(): boolean {
            return this.readTypePrimitive(32, "bool", 1);
        }
        public get IgnoreSeenBattlePassIntrosOnAutoRefresh(): boolean {
            return this.readTypePrimitive(33, "bool", 1);
        }
        public get IgnoreSeenHeroPartsOnAutoRefresh(): boolean {
            return this.readTypePrimitive(34, "bool", 1);
        }
        public get IgnoreSeenAdvancedDailyQuestsOnAutoRefresh(): boolean {
            return this.readTypePrimitive(35, "bool", 1);
        }
        public get IgnoreSoundStatusOnAutoRefresh(): boolean {
            return this.readTypePrimitive(36, "bool", 1);
        }
        public get IgnoreSeenTempFuseHeroesOnAutoRefresh(): boolean {
            return this.readTypePrimitive(37, "bool", 1);
        }
        public get IgnoreSeenMaxDifficultiesOnAutoRefresh(): boolean {
            return this.readTypePrimitive(38, "bool", 1);
        }
        public get IgnoreSeenIndicatorsOfferIdsOnAutoRefresh(): boolean {
            return this.readTypePrimitive(39, "bool", 1);
        }
        public get IgnoreDoomTowerDifficultyOnAutoRefresh(): boolean {
            return this.readTypePrimitive(40, "bool", 1);
        }
        public get IgnoreDoomTowerMaxSeenDifficultyIdOnAutoRefresh(): boolean {
            return this.readTypePrimitive(41, "bool", 1);
        }
        public get IgnoreSeenSecretChamberIdsOnAutoRefresh(): boolean {
            return this.readTypePrimitive(42, "bool", 1);
        }
        public get IgnoreSeenDoomTowerOnAutoRefresh(): boolean {
            return this.readTypePrimitive(43, "bool", 1);
        }
        public get IgnoreSeenRatingArchiveOnAutoRefresh(): boolean {
            return this.readTypePrimitive(44, "bool", 1);
        }
        public get IgnoreArtifactBoosterOnAutoRefresh(): boolean {
            return this.readTypePrimitive(45, "bool", 1);
        }
        public get IgnoreSeenCvcIntroOnAutoRefresh(): boolean {
            return this.readTypePrimitive(46, "bool", 1);
        }
        public get IgnoreSeenCvcOutroOnAutoRefresh(): boolean {
            return this.readTypePrimitive(47, "bool", 1);
        }
        public get IgnoreHeroesMarkersOnAutoRefresh(): boolean {
            return this.readTypePrimitive(48, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Dtos {
    export class GlobalEventsRequestDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Dtos.GlobalEventsRequestDto";
        static get size() { return 24 + 8; }
        public static address = 56366160;
        public static fieldNames: string[] = ["UpdateTime", "KnownEventIds"];
        public get UpdateTime(): Date {
            return this.readField(16, System.DateTime, 2);
        }
        public get KnownEventIds(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.BattlePasses.Dtos {
    export class BattlePassRequestDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.BattlePasses.Dtos.BattlePassRequestDto";
        static get size() { return 16 + il2js.NativeStruct.sizeof("long"); }
        public static address = 56486144;
        public static fieldNames: string[] = ["KnownHash"];
        public get KnownHash(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle.Arena3x3 {
    export class Arena3X3RequestDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.Arena3x3.Arena3X3RequestDto";
        static get size() { return 40 + 8; }
        public static address = 57136096;
        public static fieldNames: string[] = ["KnownLeagueId", "KnownRatingStatusId", "KnownPoints", "KnownLastRatingUpdateTime"];
        public get KnownLeagueId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get KnownRatingStatusId(): number {
            return this.readTypePrimitive(24, "long", 1);
        }
        public get KnownPoints(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get KnownLastRatingUpdateTime(): Date {
            return this.readField(40, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.User.Dto {
    export class _1_UserRequestDto<T = unknown> extends codegen.Client.Model.Gameplay.User.Dto.UserRequestDto {
        public static [TypeName] = "codegen.Client.Model.Gameplay.User.Dto._1_UserRequestDto";
        static get size() { return 0; }
        public static fieldNames: string[] = [...codegen.Client.Model.Gameplay.User.Dto.UserRequestDto.fieldNames];
        constructor(address: Address, _t0: T = typeof il2js.UnknownObject as any) { super(address); }
        public static staticMethods = {
            ...codegen.Client.Model.Gameplay.User.Dto.UserRequestDto.staticMethods
        };
    }
}
export namespace codegen.Client.Model.Gameplay.User.Dto {
    export class UserResponseDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.User.Dto.UserResponseDto";
        static get size() { return 160 + 8; }
        public static address = 56444368;
        public static fieldNames: string[] = ["ServerTime", "Quests", "GlobalEventsData", "ServerEventsData", "RefreshOffersData", "UserRevision", "UserGameData", "TournamentPointsByStateId", "TournamentPositionByStateId", "ArenaLeagueId", "Arena3X3BordersRefreshType", "SegmentSerialization", "Arena3X3ResponseDto", "GiftLinkRewardsData", "DoomTowerData"];
        public get ServerTime(): Date {
            return this.readField(16, System.DateTime, 2);
        }
        public get Quests(): System.Collections.Generic.List<codegen.SharedModel.Meta.Quests.Data.Quest> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Quests.Data.Quest);
        }
        public get GlobalEventsData(): codegen.Client.Model.Gameplay.GlobalEvents.Data.UpdatableGlobalEventsData {
            return this.readField(32, codegen.Client.Model.Gameplay.GlobalEvents.Data.UpdatableGlobalEventsData, 2);
        }
        public get ServerEventsData(): codegen.SharedModel.Meta.ServerEvents.ServerEventsData {
            return this.readField(40, codegen.SharedModel.Meta.ServerEvents.ServerEventsData, 2);
        }
        public get RefreshOffersData(): codegen.SharedModel.Meta.Offers.RefreshOffersData {
            return this.readField(48, codegen.SharedModel.Meta.Offers.RefreshOffersData, 2);
        }
        public get UserRevision(): number {
            return this.readTypePrimitive(56, "long", 1);
        }
        public get UserGameData(): codegen.Client.Model.Gameplay.User.Data.UserGameData {
            return this.readField(80, codegen.Client.Model.Gameplay.User.Data.UserGameData, 2);
        }
        public get TournamentPointsByStateId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(88, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get TournamentPositionByStateId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(96, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get ArenaLeagueId(): number {
            return this.readTypePrimitive(104, "int", 1);
        }
        public get Arena3X3BordersRefreshType(): number {
            return this.readTypePrimitive(132, "int", 1);
        }
        public get SegmentSerialization(): codegen.SharedModel.Meta.Network.SerializationBySegment {
            return this.readField(136, codegen.SharedModel.Meta.Network.SerializationBySegment, 2);
        }
        public get Arena3X3ResponseDto(): codegen.SharedModel.Meta.Battle.Arena3x3.Arena3X3ResponseDto {
            return this.readField(144, codegen.SharedModel.Meta.Battle.Arena3x3.Arena3X3ResponseDto, 2);
        }
        public get GiftLinkRewardsData(): codegen.SharedModel.Meta.GiftLinkRewards.GiftLinkRewardsData {
            return this.readField(152, codegen.SharedModel.Meta.GiftLinkRewards.GiftLinkRewardsData, 2);
        }
        public get DoomTowerData(): codegen.SharedModel.Meta.Stages.Entities.DoomTowerData {
            return this.readField(160, codegen.SharedModel.Meta.Stages.Entities.DoomTowerData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Quests.Data {
    export class Quest extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.Data.Quest";
        static get size() { return 208 + 8; }
        public static address = 57073232;
        public static fieldNames: string[] = ["Id", "PrototypeId", "CategoryId", "Weight", "Prizes", "Prize", "AddPrizeToInbox", "Icon", "Picture", "Picture2", "Name", "Description", "CallToActionText", "TextSteps", "IntroText", "IntroShortText", "OutroText", "OutroText2", "GlobalEventInfo", "CvcTournamentInfo"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get PrototypeId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get CategoryId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Weight(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get Prizes(): System.Collections.Generic.List<codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public get Prize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(40, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get AddPrizeToInbox(): boolean {
            return this.readTypePrimitive(48, "bool", 1);
        }
        public get Icon(): string {
            return this.readField(56, System.String, 2);
        }
        public get Picture(): string {
            return this.readField(64, System.String, 2);
        }
        public get Picture2(): string {
            return this.readField(72, System.String, 2);
        }
        public get Name(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(80, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get Description(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(88, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get CallToActionText(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(96, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get TextSteps(): System.Internal.ManagedArray<codegen.SharedModel.Common.Localization.SharedLTextKey> {
            return this.readField(104, System.Internal.ManagedArray, 2, codegen.SharedModel.Common.Localization.SharedLTextKey);
        }
        public get IntroText(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(112, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get IntroShortText(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(120, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get OutroText(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(128, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get OutroText2(): codegen.SharedModel.Common.Localization.SharedLTextKey {
            return this.readField(136, codegen.SharedModel.Common.Localization.SharedLTextKey, 2);
        }
        public get GlobalEventInfo(): codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventQuestInfo {
            return this.readField(200, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventQuestInfo, 2);
        }
        public get CvcTournamentInfo(): codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventCvcTournamentInfo {
            return this.readField(208, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventCvcTournamentInfo, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEventQuestInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventQuestInfo";
        static get size() { return 80 + 8; }
        public static address = 56505216;
        public static fieldNames: string[] = ["MaxPointsPerDay", "ConditionRule", "Rules", "Reward", "Brackets", "HasGlobalRating", "GlobalPositionRewards"];
        public get MaxPointsPerDay(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ConditionRule(): codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventConditionRule {
            return this.readField(32, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventConditionRule, 2);
        }
        public get Rules(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventRule>> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventRule));
        }
        public get Reward(): codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventReward {
            return this.readField(48, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventReward, 2);
        }
        public get Brackets(): System.Collections.Generic.List<codegen.SharedModel.Meta.GlobalEvents.Entities.BracketDto> {
            return this.readField(56, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.GlobalEvents.Entities.BracketDto);
        }
        public get HasGlobalRating(): boolean {
            return this.readTypePrimitive(64, "bool", 1);
        }
        public get GlobalPositionRewards(): System.Collections.Generic.List<codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(80, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class BracketDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.BracketDto";
        static get size() { return 40 + 8; }
        public static address = 56502272;
        public static fieldNames: string[] = ["MinLevel", "MaxLevel", "Size", "ProgressionReward", "PositionRewards"];
        public get MinLevel(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get MaxLevel(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Size(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get ProgressionReward(): System.Collections.Generic.List<codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventRewardItem> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventRewardItem);
        }
        public get PositionRewards(): System.Collections.Generic.List<codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(40, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEventCvcTournamentInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventCvcTournamentInfo";
        static get size() { return 32 + 8; }
        public static address = 56503712;
        public static fieldNames: string[] = ["MilestoneRewardsByLeague", "SwingRewardsByTier", "PointsMultipliers"];
        public get MilestoneRewardsByLeague(): System.Collections.Generic.List<codegen.SharedModel.Meta.CvcTournament.StaticData.CvcLeagueMilestoneRewards> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.CvcTournament.StaticData.CvcLeagueMilestoneRewards);
        }
        public get SwingRewardsByTier(): System.Collections.Generic.List<codegen.SharedModel.Meta.CvcTournament.GlobalEvent.CvcLeagueSwingRewards> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.CvcTournament.GlobalEvent.CvcLeagueSwingRewards);
        }
        public get PointsMultipliers(): System.Collections.Generic.List<codegen.SharedModel.Meta.CvcTournament.GlobalEvent.CvcPointsMultiplier> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.CvcTournament.GlobalEvent.CvcPointsMultiplier);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.CvcTournament.StaticData {
    export class CvcLeagueMilestoneRewards extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.CvcTournament.StaticData.CvcLeagueMilestoneRewards";
        static get size() { return 16 + 8; }
        public static address = 56495768;
        public static fieldNames: string[] = ["Milestones"];
        public get Milestones(): System.Collections.Generic.List<codegen.SharedModel.Meta.CvcTournament.GlobalEvent.CvcMilestoneReward> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.CvcTournament.GlobalEvent.CvcMilestoneReward);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.CvcTournament.GlobalEvent {
    export class CvcMilestoneReward extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.CvcTournament.GlobalEvent.CvcMilestoneReward";
        static get size() { return 24 + 8; }
        public static address = 56495008;
        public static fieldNames: string[] = ["Points", "Reward"];
        public get Points(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Reward(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(24, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.CvcTournament.GlobalEvent {
    export class CvcLeagueSwingRewards extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.CvcTournament.GlobalEvent.CvcLeagueSwingRewards";
        static get size() { return 16 + 8; }
        public static address = 56494880;
        public static fieldNames: string[] = ["Rewards"];
        public get Rewards(): System.Collections.Generic.List<codegen.SharedModel.Meta.UserPrizes.UserPrize> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.UserPrizes.UserPrize);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.CvcTournament.GlobalEvent {
    export class CvcPointsMultiplier extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.CvcTournament.GlobalEvent.CvcPointsMultiplier";
        static get size() { return 32 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56495168;
        public static fieldNames: string[] = ["ActivityGroup", "Multiplier", "UpperLimit"];
        public get ActivityGroup(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Multiplier(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public get UpperLimit(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEventsDataForUser extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventsDataForUser";
        static get size() { return 24 + 8; }
        public static address = 56506416;
        public static fieldNames: string[] = ["UpdateTime", "Events"];
        public get UpdateTime(): Date {
            return this.readField(16, System.DateTime, 2);
        }
        public get Events(): System.Collections.Generic.List<codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEvent> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEvent);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.GlobalEvents.Data {
    export class UpdatableGlobalEventsData extends codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventsDataForUser {
        public static [TypeName] = "codegen.Client.Model.Gameplay.GlobalEvents.Data.UpdatableGlobalEventsData";
        static get size() { return 0; }
        public static address = 56365816;
        public static fieldNames: string[] = [...codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventsDataForUser.fieldNames];
        public static staticMethods = {
            ...codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventsDataForUser.staticMethods,
            "Cvc": () => new il2js.MethodInfo(56630872),
            "Event": () => new il2js.MethodInfo(56631016),
            "Tournament": () => new il2js.MethodInfo(56631104)
        };
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEvent extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEvent";
        static get size() { return 64 + 8; }
        public static address = 56504280;
        public static fieldNames: string[] = ["Id", "GboId", "Revision", "UserCondition", "QuestData", "ContentSettingsJson", "PointsIcon"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get GboId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Revision(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get UserCondition(): codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventUserCondition {
            return this.readField(32, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventUserCondition, 2);
        }
        public get QuestData(): codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventQuestData {
            return this.readField(48, codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventQuestData, 2);
        }
        public get ContentSettingsJson(): string {
            return this.readField(56, System.String, 2);
        }
        public get PointsIcon(): string {
            return this.readField(64, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEventUserCondition extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventUserCondition";
        static get size() { return 48 + 8; }
        public static address = 56506328;
        public static fieldNames: string[] = ["TestUserIds"];
        public get TestUserIds(): System.Collections.Generic.List<number> {
            return this.readField(48, System.Collections.Generic.List, 2, "long");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalEvents.Entities {
    export class GlobalEventQuestData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalEvents.Entities.GlobalEventQuestData";
        static get size() { return 16 + 8; }
        public static address = 56504680;
        public static fieldNames: string[] = ["Quest"];
        public get Quest(): codegen.SharedModel.Meta.Quests.Data.Quest {
            return this.readField(16, codegen.SharedModel.Meta.Quests.Data.Quest, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents {
    export class ServerEventsData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.ServerEventsData";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57077856;
        public static fieldNames: string[] = ["ServerEvents", "KnownHash"];
        public get ServerEvents(): System.Collections.Generic.List<codegen.SharedModel.Meta.ServerEvents.ServerEvent> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.ServerEvents.ServerEvent);
        }
        public get KnownHash(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents {
    export class ServerEvent extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.ServerEvent";
        static get size() { return 112 + 8; }
        public static address = 56543544;
        public static fieldNames: string[] = ["TypeId", "NewbieData", "Shards", "Fractions", "Heroes", "GuaranteedHero", "BlockedHero", "LegendaryChain", "Artifacts", "Accessory"];
        public get TypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get NewbieData(): codegen.SharedModel.Meta.ServerEvents.EventData.NewbieData {
            return this.readField(48, codegen.SharedModel.Meta.ServerEvents.EventData.NewbieData, 2);
        }
        public get Shards(): codegen.SharedModel.Meta.ServerEvents.EventData.ShardsData {
            return this.readField(56, codegen.SharedModel.Meta.ServerEvents.EventData.ShardsData, 2);
        }
        public get Fractions(): codegen.SharedModel.Meta.ServerEvents.EventData.FractionsData {
            return this.readField(64, codegen.SharedModel.Meta.ServerEvents.EventData.FractionsData, 2);
        }
        public get Heroes(): codegen.SharedModel.Meta.ServerEvents.EventData.HeroesData {
            return this.readField(72, codegen.SharedModel.Meta.ServerEvents.EventData.HeroesData, 2);
        }
        public get GuaranteedHero(): codegen.SharedModel.Meta.ServerEvents.EventData.GuaranteedHeroData {
            return this.readField(80, codegen.SharedModel.Meta.ServerEvents.EventData.GuaranteedHeroData, 2);
        }
        public get BlockedHero(): codegen.SharedModel.Meta.ServerEvents.EventData.BlockedHeroData {
            return this.readField(88, codegen.SharedModel.Meta.ServerEvents.EventData.BlockedHeroData, 2);
        }
        public get LegendaryChain(): codegen.SharedModel.Meta.ServerEvents.EventData.LegendaryChainData {
            return this.readField(96, codegen.SharedModel.Meta.ServerEvents.EventData.LegendaryChainData, 2);
        }
        public get Artifacts(): codegen.SharedModel.Meta.ServerEvents.ArtifactsData {
            return this.readField(104, codegen.SharedModel.Meta.ServerEvents.ArtifactsData, 2);
        }
        public get Accessory(): codegen.SharedModel.Meta.ServerEvents.AccessoryData {
            return this.readField(112, codegen.SharedModel.Meta.ServerEvents.AccessoryData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents.EventData {
    export class NewbieData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.EventData.NewbieData";
        static get size() { return 16 + il2js.NativeStruct.sizeof("double"); }
        public static address = 56542056;
        public static fieldNames: string[] = ["LifeTimeInHours"];
        public get LifeTimeInHours(): number {
            return this.readTypePrimitive(16, "double", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents.EventData {
    export class ShardsData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.EventData.ShardsData";
        static get size() { return 24 + 8; }
        public static address = 56542368;
        public static fieldNames: string[] = ["TypeId", "DropRules"];
        public get TypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get DropRules(): System.Collections.Generic.List<codegen.SharedModel.Meta.Shards.ShardDropRule> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Shards.ShardDropRule);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents.EventData {
    export class FractionsData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.EventData.FractionsData";
        static get size() { return 32 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56541264;
        public static fieldNames: string[] = ["FractionId", "AvailableShards", "Weight"];
        public get FractionId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get AvailableShards(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public get Weight(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents.EventData {
    export class HeroesData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.EventData.HeroesData";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56541440;
        public static fieldNames: string[] = ["HeroWeightByTypeId", "ShardTypeId"];
        public get HeroWeightByTypeId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get ShardTypeId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents.EventData {
    export class GuaranteedHeroData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.EventData.GuaranteedHeroData";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56541336;
        public static fieldNames: string[] = ["HeroTypeId", "ShardTypeId", "ShardsCount"];
        public get HeroTypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ShardTypeId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get ShardsCount(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents.EventData {
    export class BlockedHeroData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.EventData.BlockedHeroData";
        static get size() { return 24 + 8; }
        public static address = 56541032;
        public static fieldNames: string[] = ["HeroTypeId", "ShardTypeIds"];
        public get HeroTypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ShardTypeIds(): System.Internal.ManagedArray<number> {
            return this.readField(24, System.Internal.ManagedArray, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents.EventData {
    export class LegendaryChainData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.EventData.LegendaryChainData";
        static get size() { return 24 + 8; }
        public static address = 56542032;
        public static fieldNames: string[] = ["ShardTypeId", "Conditions"];
        public get ShardTypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Conditions(): codegen.SharedModel.Meta.ServerEvents.EventData.LegendaryChainConditions {
            return this.readField(24, codegen.SharedModel.Meta.ServerEvents.EventData.LegendaryChainConditions, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents.EventData {
    export class LegendaryChainConditions extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.EventData.LegendaryChainConditions";
        static get size() { return 48 + 8; }
        public static address = 56541832;
        public static fieldNames: string[] = ["CountryCode", "UserLevel", "Shards", "TotalDeposit"];
        public get CountryCode(): string {
            return this.readField(24, System.String, 2);
        }
        public get UserLevel(): codegen.SharedModel.Meta.ServerEvents.EventData.IntRange {
            return this.readField(32, codegen.SharedModel.Meta.ServerEvents.EventData.IntRange, 2);
        }
        public get Shards(): codegen.SharedModel.Meta.ServerEvents.EventData.ShardsCondition {
            return this.readField(40, codegen.SharedModel.Meta.ServerEvents.EventData.ShardsCondition, 2);
        }
        public get TotalDeposit(): codegen.SharedModel.Meta.ServerEvents.EventData.IntRange {
            return this.readField(48, codegen.SharedModel.Meta.ServerEvents.EventData.IntRange, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents.EventData {
    export class IntRange extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.EventData.IntRange";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56541536;
        public static fieldNames: string[] = ["From", "To"];
        public get From(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get To(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents.EventData {
    export class ShardsCondition extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.EventData.ShardsCondition";
        static get size() { return 24 + 8; }
        public static address = 56542232;
        public static fieldNames: string[] = ["Range"];
        public get Range(): codegen.SharedModel.Meta.ServerEvents.EventData.IntRange {
            return this.readField(24, codegen.SharedModel.Meta.ServerEvents.EventData.IntRange, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents {
    export class ArtifactsData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.ArtifactsData";
        static get size() { return 32 + il2js.NativeStruct.sizeof("double"); }
        public static address = 56540848;
        public static fieldNames: string[] = ["Region", "Multiplier"];
        public get Region(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Multiplier(): number {
            return this.readTypePrimitive(32, "double", 1);
        }
        public static staticMethods = {
            "MultiplyProbability<int>": () => new il2js.MethodInfo(56701488)
        };
    }
}
export namespace codegen.SharedModel.Meta.ServerEvents {
    export class AccessoryData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.ServerEvents.AccessoryData";
        static get size() { return 32 + il2js.NativeStruct.sizeof("double"); }
        public static address = 56540736;
        public static fieldNames: string[] = ["RegionTypeId", "Multiplier"];
        public get RegionTypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Multiplier(): number {
            return this.readTypePrimitive(32, "double", 1);
        }
        public static staticMethods = {
            "MultiplyProbability<int>": () => new il2js.MethodInfo(56701376)
        };
    }
}
export namespace codegen.SharedModel.Meta.Offers {
    export class RefreshOffersData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.RefreshOffersData";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56524160;
        public static fieldNames: string[] = ["Offers", "KnownHash"];
        public get Offers(): System.Collections.Generic.List<codegen.SharedModel.Meta.Offers.Dto.OpenOfferDto> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Offers.Dto.OpenOfferDto);
        }
        public get KnownHash(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers.Dto {
    export class OpenOfferDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.Dto.OpenOfferDto";
        static get size() { return 144 + 8; }
        public static address = 57053728;
        public static fieldNames: string[] = ["PromoOfferId", "TypeId", "Revision", "Price", "Prize", "PurchaseLimit", "InterfaceSettingsJson", "ProgressOfferDto", "RetentionOfferDto", "DynamicPriceOfferDto", "UserGroupLabel", "_userPrize", "_interfaceSettings"];
        public get PromoOfferId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get TypeId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Revision(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Price(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(40, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get Prize(): codegen.SharedModel.Meta.Payments.UnitedPrize {
            return this.readField(48, codegen.SharedModel.Meta.Payments.UnitedPrize, 2);
        }
        public get PurchaseLimit(): number {
            return this.readTypePrimitive(56, "int", 1);
        }
        public get InterfaceSettingsJson(): string {
            return this.readField(80, System.String, 2);
        }
        public get ProgressOfferDto(): codegen.SharedModel.Meta.Offers.Dto.ProgressOfferDto {
            return this.readField(88, codegen.SharedModel.Meta.Offers.Dto.ProgressOfferDto, 2);
        }
        public get RetentionOfferDto(): codegen.SharedModel.Meta.Offers.Dto.RetentionOfferDto {
            return this.readField(96, codegen.SharedModel.Meta.Offers.Dto.RetentionOfferDto, 2);
        }
        public get DynamicPriceOfferDto(): codegen.SharedModel.Meta.Offers.Dto.DynamicPriceOfferDto {
            return this.readField(104, codegen.SharedModel.Meta.Offers.Dto.DynamicPriceOfferDto, 2);
        }
        public get UserGroupLabel(): string {
            return this.readField(112, System.String, 2);
        }
        public get _userPrize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(136, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get _interfaceSettings(): codegen.SharedModel.Meta.Offers.Dto.InterfaceSettingsDto {
            return this.readField(144, codegen.SharedModel.Meta.Offers.Dto.InterfaceSettingsDto, 2);
        }
        public static staticMethods = {
            "<get_UserPrize>b__16_0": () => new il2js.MethodInfo(56699960),
            "<get_UserPrize>b__16_1": () => new il2js.MethodInfo(56699992)
        };
    }
}
export namespace codegen.SharedModel.Meta.Offers.Dto {
    export class ProgressOfferDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.Dto.ProgressOfferDto";
        static get size() { return 16 + 8; }
        public static address = 57053856;
        public static fieldNames: string[] = ["PrizePerLevel"];
        public get PrizePerLevel(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Payments.UnitedPrize> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Payments.UnitedPrize);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Offers.Dto {
    export class DynamicPriceOfferDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Offers.Dto.DynamicPriceOfferDto";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57053272;
        public static fieldNames: string[] = ["PricesScale", "CooldownPurchaseLimit"];
        public get PricesScale(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Account.Resources> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Account.Resources);
        }
        public get CooldownPurchaseLimit(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Network {
    export class SerializationBySegment extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Network.SerializationBySegment";
        static get size() { return 24 + 8; }
        public static address = 56516224;
        public static fieldNames: string[] = ["Revision", "Map"];
        public get Revision(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Map(): System.Collections.Generic.Dictionary<number, string> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", System.String);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Battle.Arena3x3 {
    export class Arena3X3ResponseDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Battle.Arena3x3.Arena3X3ResponseDto";
        static get size() { return 24 + 8; }
        public static address = 56483232;
        public static fieldNames: string[] = ["IsRecalculating", "Borders"];
        public get IsRecalculating(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get Borders(): codegen.SharedModel.Common.CommonDtos.LongRange {
            return this.readField(24, codegen.SharedModel.Common.CommonDtos.LongRange, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Common.CommonDtos {
    export class LongRange extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Common.CommonDtos.LongRange";
        static get size() { return 0; }
        public static address = 56459512;
        public static fieldNames: string[] = [];
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages.Entities {
    export class DoomTowerData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.Entities.DoomTowerData";
        static get size() { return 0; }
        public static address = 57083488;
        public static fieldNames: string[] = [];
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Heroes {
    export class HeroesWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Heroes.HeroesWrapperReadOnly";
        static get size() { return 112 + 8; }
        public static fieldNames: string[] = ["HeroParts", "SeenTempFuseCache", "SeenHeroTypeIds", "HeroData", "InboxData", "ArtifactData", "BlackMarketData", "User"];
        public get HeroParts(): codegen.Client.Model.Gameplay.Heroes.HeroPartsWrapperReadOnly {
            return this.readField(56, codegen.Client.Model.Gameplay.Heroes.HeroPartsWrapperReadOnly, 2);
        }
        public get SeenTempFuseCache(): System.Collections.Generic.Dictionary<number, Date> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "int", System.DateTime);
        }
        public get SeenHeroTypeIds(): System.Collections.Generic.HashSet<number> {
            return this.readField(72, System.Collections.Generic.HashSet, 2, "int");
        }
        public get HeroData(): codegen.SharedModel.Meta.Heroes.UserHeroData {
            return this.readField(80, codegen.SharedModel.Meta.Heroes.UserHeroData, 2);
        }
        public get InboxData(): codegen.SharedModel.Meta.Inbox.UserInboxData {
            return this.readField(88, codegen.SharedModel.Meta.Inbox.UserInboxData, 2);
        }
        public get ArtifactData(): codegen.SharedModel.Meta.Artifacts.UserArtifactData {
            return this.readField(96, codegen.SharedModel.Meta.Artifacts.UserArtifactData, 2);
        }
        public get BlackMarketData(): codegen.SharedModel.Meta.BlackMarket.UserBlackMarketData {
            return this.readField(104, codegen.SharedModel.Meta.BlackMarket.UserBlackMarketData, 2);
        }
        public get User(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(112, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public static staticMethods = {
            "GetHero": () => new il2js.MethodInfo(56569200),
            "<AvailableTempFuseRecipes>b__38_0": () => new il2js.MethodInfo(56633832),
            "IsNewTempFuse": () => new il2js.MethodInfo(56633936),
            "GetHeroPower": () => new il2js.MethodInfo(56926856)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Heroes {
    export class HeroesWrapper extends codegen.Client.Model.Gameplay.Heroes.HeroesWrapperReadOnly {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Heroes.HeroesWrapper";
        static get size() { return 120 + 8; }
        public static address = 56371408;
        public static fieldNames: string[] = [...codegen.Client.Model.Gameplay.Heroes.HeroesWrapperReadOnly.fieldNames, "_markers"];
        public get _markers(): System.Collections.Generic.List<codegen.SharedModel.Meta.Heroes.Dtos.SetHeroMarkerDto> {
            return this.readField(120, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Heroes.Dtos.SetHeroMarkerDto);
        }
        public static staticMethods = {
            ...codegen.Client.Model.Gameplay.Heroes.HeroesWrapperReadOnly.staticMethods,
            "<UpdateBattlePreset>b__4_0": () => new il2js.MethodInfo(56648176),
            ".cctor": () => new il2js.MethodInfo(56894768),
            "<CollectSeenHeroes>b__16_0": () => new il2js.MethodInfo(56894864)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Heroes {
    export class HeroPartsWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Heroes.HeroPartsWrapperReadOnly";
        static get size() { return 40 + 8; }
        public static fieldNames: string[] = ["HeroData", "SeenHeroPartsClient"];
        public get HeroData(): codegen.SharedModel.Meta.Heroes.UserHeroData {
            return this.readField(32, codegen.SharedModel.Meta.Heroes.UserHeroData, 2);
        }
        public get SeenHeroPartsClient(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public static staticMethods = {
            "<HasIndication>b__16_0": () => new il2js.MethodInfo(56633104),
            "PartSeenAmount": () => new il2js.MethodInfo(56969824)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.TrainingCamp {
    export class TrainingCampWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.TrainingCamp.TrainingCampWrapperReadOnly";
        static get size() { return 32 + 8; }
        public static fieldNames: string[] = ["User", "TrainingCampData"];
        public get User(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(24, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public get TrainingCampData(): codegen.SharedModel.Meta.TrainingCamp.UserTrainingCampData {
            return this.readField(32, codegen.SharedModel.Meta.TrainingCamp.UserTrainingCampData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Artifacts {
    export class EquipmentWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Artifacts.EquipmentWrapperReadonly";
        static get size() { return 96 + 8; }
        public static address = 57138376;
        public static fieldNames: string[] = ["UpgradeOptimizationEnabled", "Checkroom", "LocalUpgrade", "_heroArtifactsTemplate", "User", "ArtifactData", "InboxData", "SeenArtifactIds"];
        public get UpgradeOptimizationEnabled(): boolean {
            return this.readTypePrimitive(40, "bool", 1);
        }
        public get Checkroom(): codegen.Client.Model.Gameplay.Artifacts.CheckroomWrapperReadonly {
            return this.readField(48, codegen.Client.Model.Gameplay.Artifacts.CheckroomWrapperReadonly, 2);
        }
        public get LocalUpgrade(): codegen.Client.Model.Gameplay.Artifacts.LocalUpgrade.LocalArtifactUpgrade {
            return this.readField(56, codegen.Client.Model.Gameplay.Artifacts.LocalUpgrade.LocalArtifactUpgrade, 2);
        }
        public get _heroArtifactsTemplate(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Artifacts.Artifact> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Artifacts.Artifact);
        }
        public get User(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(72, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public get ArtifactData(): codegen.SharedModel.Meta.Artifacts.UserArtifactData {
            return this.readField(80, codegen.SharedModel.Meta.Artifacts.UserArtifactData, 2);
        }
        public get InboxData(): codegen.SharedModel.Meta.Inbox.UserInboxData {
            return this.readField(88, codegen.SharedModel.Meta.Inbox.UserInboxData, 2);
        }
        public get SeenArtifactIds(): System.Collections.Generic.HashSet<number> {
            return this.readField(96, System.Collections.Generic.HashSet, 2, "int");
        }
        public static staticMethods = {
            "<RemovalPrice>g__DeactivationPrice|43_0": () => new il2js.MethodInfo(56550160),
            ".cctor": () => new il2js.MethodInfo(56885216)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Artifacts {
    export class CheckroomWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Artifacts.CheckroomWrapperReadonly";
        static get size() { return 64 + 8; }
        public static fieldNames: string[] = ["Selected", "IsActive", "User", "ArtifactData", "EquippedArtifacts"];
        public get Selected(): codegen.SharedModel.Meta.Artifacts.Artifact {
            return this.readField(32, codegen.SharedModel.Meta.Artifacts.Artifact, 2);
        }
        public get IsActive(): boolean {
            return this.readTypePrimitive(40, "bool", 1);
        }
        public get User(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(48, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public get ArtifactData(): codegen.SharedModel.Meta.Artifacts.UserArtifactData {
            return this.readField(56, codegen.SharedModel.Meta.Artifacts.UserArtifactData, 2);
        }
        public get EquippedArtifacts(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Artifacts.Artifact> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Artifacts.Artifact);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Artifacts.LocalUpgrade {
    export class LocalArtifactUpgrade extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Artifacts.LocalUpgrade.LocalArtifactUpgrade";
        static get size() { return 56 + 8; }
        public static address = 57138936;
        public static fieldNames: string[] = ["_artifacts", "_account", "_snapshot", "_attempts", "_artifact"];
        public get _artifacts(): codegen.SharedModel.Meta.Artifacts.UserArtifactData {
            return this.readField(24, codegen.SharedModel.Meta.Artifacts.UserArtifactData, 2);
        }
        public get _account(): codegen.SharedModel.Meta.Account.UserAccount {
            return this.readField(32, codegen.SharedModel.Meta.Account.UserAccount, 2);
        }
        public get _snapshot(): codegen.Client.Model.Gameplay.Artifacts.LocalUpgrade.ArtifactUpgradeSnapshot {
            return this.readField(40, codegen.Client.Model.Gameplay.Artifacts.LocalUpgrade.ArtifactUpgradeSnapshot, 2);
        }
        public get _attempts(): System.Collections.Generic.List<codegen.SharedModel.Meta.Account.Resources> {
            return this.readField(48, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Account.Resources);
        }
        public get _artifact(): codegen.SharedModel.Meta.Artifacts.Artifact {
            return this.readField(56, codegen.SharedModel.Meta.Artifacts.Artifact, 2);
        }
        public static staticMethods = {
            ".cctor": () => new il2js.MethodInfo(56885840),
            "AssertEnoughResources": () => new il2js.MethodInfo(56885880),
            "EnsureConsistentState": () => new il2js.MethodInfo(56886016)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Artifacts.LocalUpgrade {
    export class ArtifactUpgradeSnapshot extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Artifacts.LocalUpgrade.ArtifactUpgradeSnapshot";
        static get size() { return 56 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57139648;
        public static fieldNames: string[] = ["CurrentRandoms", "CurrentResources", "Invalidated", "_initialRandoms", "_initialResources", "_type"];
        public get CurrentRandoms(): System.Collections.Generic.List<codegen.SharedModel.Common.Math.FixedRandom> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Common.Math.FixedRandom);
        }
        public get CurrentResources(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(24, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get Invalidated(): boolean {
            return this.readTypePrimitive(32, "bool", 1);
        }
        public get _initialRandoms(): System.Collections.Generic.List<codegen.SharedModel.Common.Math.FixedRandom> {
            return this.readField(40, System.Collections.Generic.List, 2, codegen.SharedModel.Common.Math.FixedRandom);
        }
        public get _initialResources(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(48, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get _type(): number {
            return this.readTypePrimitive(56, "int", 1);
        }
        public static staticMethods = {
            ".cctor": () => new il2js.MethodInfo(56885688)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.BlackMarket {
    export class BlackMarketWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.BlackMarket.BlackMarketWrapperReadOnly";
        static get size() { return 64 + 8; }
        public static fieldNames: string[] = ["BlackMarketData", "Account", "HeroData", "ShardData", "EffectData", "SeenBmiBoxIds"];
        public get BlackMarketData(): codegen.SharedModel.Meta.BlackMarket.UserBlackMarketData {
            return this.readField(24, codegen.SharedModel.Meta.BlackMarket.UserBlackMarketData, 2);
        }
        public get Account(): codegen.SharedModel.Meta.Account.UserAccount {
            return this.readField(32, codegen.SharedModel.Meta.Account.UserAccount, 2);
        }
        public get HeroData(): codegen.SharedModel.Meta.Heroes.UserHeroData {
            return this.readField(40, codegen.SharedModel.Meta.Heroes.UserHeroData, 2);
        }
        public get ShardData(): codegen.SharedModel.Meta.Shards.UserShardData {
            return this.readField(48, codegen.SharedModel.Meta.Shards.UserShardData, 2);
        }
        public get EffectData(): codegen.SharedModel.Meta.Effects.UserEffectData {
            return this.readField(56, codegen.SharedModel.Meta.Effects.UserEffectData, 2);
        }
        public get SeenBmiBoxIds(): System.Collections.Generic.HashSet<number> {
            return this.readField(64, System.Collections.Generic.HashSet, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Stages {
    export class StageWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Stages.StageWrapperReadOnly";
        static get size() { return 40 + 8; }
        public static fieldNames: string[] = ["StageData", "AbTestData"];
        public get StageData(): codegen.SharedModel.Meta.Stages.UserStageData {
            return this.readField(32, codegen.SharedModel.Meta.Stages.UserStageData, 2);
        }
        public get AbTestData(): codegen.SharedModel.Meta.AbTests.UserAbTestData {
            return this.readField(40, codegen.SharedModel.Meta.AbTests.UserAbTestData, 2);
        }
        public static staticMethods = {
            "<MaxSeenDifficultyId>b__22_0": () => new il2js.MethodInfo(56647960),
            "IsPassed": () => new il2js.MethodInfo(56648128),
            "GetStars": () => new il2js.MethodInfo(56971592)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Village {
    export class VillageWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Village.VillageWrapperReadOnly";
        static get size() { return 24 + 8; }
        public static fieldNames: string[] = ["User", "VillageData"];
        public get User(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(16, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public get VillageData(): codegen.SharedModel.Meta.Village.UserVillageData {
            return this.readField(24, codegen.SharedModel.Meta.Village.UserVillageData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Forge {
    export class ForgeWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Forge.ForgeWrapperReadOnly";
        static get size() { return 40 + 8; }
        public static fieldNames: string[] = ["User", "ForgeData"];
        public get User(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(32, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public get ForgeData(): codegen.SharedModel.Meta.Forge.UserForgeData {
            return this.readField(40, codegen.SharedModel.Meta.Forge.UserForgeData, 2);
        }
        public static staticMethods = {
            "AvailableCraftsCountFor": () => new il2js.MethodInfo(56968640)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.MagicShop {
    export class MagicShopWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.MagicShop.MagicShopWrapperReadOnly";
        static get size() { return 32 + 8; }
        public static fieldNames: string[] = ["User", "MagicShopData"];
        public get User(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(24, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public get MagicShopData(): codegen.SharedModel.Meta.MagicShop.UserMagicShopData {
            return this.readField(32, codegen.SharedModel.Meta.MagicShop.UserMagicShopData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Normalization {
    export class NormalizationWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Normalization.NormalizationWrapperReadOnly";
        static get size() { return 40 + 8; }
        public static fieldNames: string[] = ["GameData", "Mode", "State"];
        public get GameData(): codegen.Client.Model.Gameplay.User.Data.UserGameData {
            return this.readField(24, codegen.Client.Model.Gameplay.User.Data.UserGameData, 2);
        }
        public get Mode(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get State(): codegen.Client.Model.Gameplay.Normalization.NormalizationWrapperReadOnly_FullModeState {
            return this.readField(40, codegen.Client.Model.Gameplay.Normalization.NormalizationWrapperReadOnly_FullModeState, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Normalization {
    export class NormalizationWrapper extends codegen.Client.Model.Gameplay.Normalization.NormalizationWrapperReadOnly {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Normalization.NormalizationWrapper";
        static get size() { return 0; }
        public static address = 56379536;
        public static fieldNames: string[] = [...codegen.Client.Model.Gameplay.Normalization.NormalizationWrapperReadOnly.fieldNames];
        public static staticMethods = {
            ...codegen.Client.Model.Gameplay.Normalization.NormalizationWrapperReadOnly.staticMethods,
            ".cctor": () => new il2js.MethodInfo(56900368)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Normalization {
    export class NormalizationWrapperReadOnly_FullModeState extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Normalization.NormalizationWrapperReadOnly_FullModeState";
        static get size() { return 24 + 8; }
        public static address = 56379880;
        public static fieldNames: string[] = ["Resources", "NormalizationTime"];
        public get Resources(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(16, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get NormalizationTime(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Shards {
    export class ShardWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Shards.ShardWrapperReadOnly";
        static get size() { return 24 + 8; }
        public static fieldNames: string[] = ["ShardData"];
        public get ShardData(): codegen.SharedModel.Meta.Shards.UserShardData {
            return this.readField(24, codegen.SharedModel.Meta.Shards.UserShardData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Inbox {
    export class InboxWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Inbox.InboxWrapperReadOnly";
        static get size() { return 48 + 8; }
        public static fieldNames: string[] = ["SeenInboxItemIds", "User", "InboxData"];
        public get SeenInboxItemIds(): System.Collections.Generic.HashSet<number> {
            return this.readField(32, System.Collections.Generic.HashSet, 2, "int");
        }
        public get User(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(40, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public get InboxData(): codegen.SharedModel.Meta.Inbox.UserInboxData {
            return this.readField(48, codegen.SharedModel.Meta.Inbox.UserInboxData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Chat {
    export class ChatWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Chat.ChatWrapperReadOnly";
        static get size() { return 24 + il2js.NativeStruct.sizeof("bool"); }
        public static fieldNames: string[] = ["ChatData", "SettingsDirty"];
        public get ChatData(): codegen.SharedModel.Meta.Chat.UserChatData {
            return this.readField(16, codegen.SharedModel.Meta.Chat.UserChatData, 2);
        }
        public get SettingsDirty(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Payments {
    export class PaymentWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Payments.PaymentWrapperReadOnly";
        static get size() { return 56 + 8; }
        public static fieldNames: string[] = ["AllPayments", "LazyData", "LatestSeenOfferIndicatorIds", "PaymentData", "OffersData"];
        public get AllPayments(): System.Collections.Generic.List<codegen.SharedModel.Meta.Payments.Payment> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Payments.Payment);
        }
        public get LazyData(): codegen.Client.Model.Gameplay.Payments.Data.PaymentLazyData {
            return this.readField(32, codegen.Client.Model.Gameplay.Payments.Data.PaymentLazyData, 2);
        }
        public get LatestSeenOfferIndicatorIds(): System.Collections.Generic.HashSet<number> {
            return this.readField(40, System.Collections.Generic.HashSet, 2, "int");
        }
        public get PaymentData(): codegen.SharedModel.Meta.Payments.UserPaymentData {
            return this.readField(48, codegen.SharedModel.Meta.Payments.UserPaymentData, 2);
        }
        public get OffersData(): codegen.SharedModel.Meta.Offers.UserOfferData {
            return this.readField(56, codegen.SharedModel.Meta.Offers.UserOfferData, 2);
        }
        public static staticMethods = {
            "AsDoubleOffer": () => new il2js.MethodInfo(57064376),
            "<ComboOffers>b__42_2": () => new il2js.MethodInfo(57064616),
            "<AllGiveOffers>b__29_1": () => new il2js.MethodInfo(56640104),
            "HasAggressiveData": () => new il2js.MethodInfo(56640248),
            "ShouldBeIncluded": () => new il2js.MethodInfo(56640272)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Payments {
    export class PaymentWrapper extends codegen.Client.Model.Gameplay.Payments.PaymentWrapperReadOnly {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Payments.PaymentWrapper";
        static get size() { return 0; }
        public static address = 56392944;
        public static fieldNames: string[] = [...codegen.Client.Model.Gameplay.Payments.PaymentWrapperReadOnly.fieldNames];
        public static staticMethods = {
            ...codegen.Client.Model.Gameplay.Payments.PaymentWrapperReadOnly.staticMethods,
            ".cctor": () => new il2js.MethodInfo(56906192)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Payments.Data {
    export class PaymentLazyData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Payments.Data.PaymentLazyData";
        static get size() { return 32 + 8; }
        public static address = 56393088;
        public static fieldNames: string[] = ["_seenGooglePointsPaymentIds", "_offerLogsLastId", "_offerLogs"];
        public get _seenGooglePointsPaymentIds(): System.Collections.Generic.List<number> {
            return this.readField(16, System.Collections.Generic.List, 2, "int");
        }
        public get _offerLogsLastId(): number {
            return this.readTypePrimitive(24, "long", 1);
        }
        public get _offerLogs(): System.Collections.Generic.List<codegen.SharedModel.Meta.Offers.Dto.LogOfferClientActionRequestDto> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Offers.Dto.LogOfferClientActionRequestDto);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Payments.Subscriptions {
    export class SubscriptionsWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Payments.Subscriptions.SubscriptionsWrapperReadOnly";
        static get size() { return 40 + 8; }
        public static fieldNames: string[] = ["_paymentData"];
        public get _paymentData(): codegen.SharedModel.Meta.Payments.UserPaymentData {
            return this.readField(40, codegen.SharedModel.Meta.Payments.UserPaymentData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Payments.Subscriptions {
    export class SubscriptionsWrapper extends codegen.Client.Model.Gameplay.Payments.Subscriptions.SubscriptionsWrapperReadOnly {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Payments.Subscriptions.SubscriptionsWrapper";
        static get size() { return 0; }
        public static address = 56400816;
        public static fieldNames: string[] = [...codegen.Client.Model.Gameplay.Payments.Subscriptions.SubscriptionsWrapperReadOnly.fieldNames];
        public static staticMethods = {
            ...codegen.Client.Model.Gameplay.Payments.Subscriptions.SubscriptionsWrapperReadOnly.staticMethods,
            "<CollectLastReceiptUpdateTime>b__4_0": () => new il2js.MethodInfo(56540256),
            ".cctor": () => new il2js.MethodInfo(56908184)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Quests {
    export class QuestWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Quests.QuestWrapperReadOnly";
        static get size() { return 160 + il2js.NativeStruct.sizeof("bool"); }
        public static fieldNames: string[] = ["UserWrapper", "QuestData", "ArtifactData", "HeroData", "StatsData", "Account", "ArenaData", "VillageData", "StageData", "MagicShopData", "GameSettings", "SocialData", "AllianceData", "SessionChestData", "SeenQuestPrototypeIds", "Quests", "AdvancedSeen"];
        public get UserWrapper(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(32, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public get QuestData(): codegen.SharedModel.Meta.Quests.Data.UserQuestData {
            return this.readField(40, codegen.SharedModel.Meta.Quests.Data.UserQuestData, 2);
        }
        public get ArtifactData(): codegen.SharedModel.Meta.Artifacts.UserArtifactData {
            return this.readField(48, codegen.SharedModel.Meta.Artifacts.UserArtifactData, 2);
        }
        public get HeroData(): codegen.SharedModel.Meta.Heroes.UserHeroData {
            return this.readField(56, codegen.SharedModel.Meta.Heroes.UserHeroData, 2);
        }
        public get StatsData(): codegen.SharedModel.Meta.Stats.UserStatsData {
            return this.readField(64, codegen.SharedModel.Meta.Stats.UserStatsData, 2);
        }
        public get Account(): codegen.SharedModel.Meta.Account.UserAccount {
            return this.readField(72, codegen.SharedModel.Meta.Account.UserAccount, 2);
        }
        public get ArenaData(): codegen.SharedModel.Meta.Battle.Arena.UserArenaData {
            return this.readField(80, codegen.SharedModel.Meta.Battle.Arena.UserArenaData, 2);
        }
        public get VillageData(): codegen.SharedModel.Meta.Village.UserVillageData {
            return this.readField(88, codegen.SharedModel.Meta.Village.UserVillageData, 2);
        }
        public get StageData(): codegen.SharedModel.Meta.Stages.UserStageData {
            return this.readField(96, codegen.SharedModel.Meta.Stages.UserStageData, 2);
        }
        public get MagicShopData(): codegen.SharedModel.Meta.MagicShop.UserMagicShopData {
            return this.readField(104, codegen.SharedModel.Meta.MagicShop.UserMagicShopData, 2);
        }
        public get GameSettings(): codegen.SharedModel.Meta.Settings.UserGameSettings {
            return this.readField(112, codegen.SharedModel.Meta.Settings.UserGameSettings, 2);
        }
        public get SocialData(): codegen.Client.Model.Gameplay.Social.Data.UserSocialData {
            return this.readField(120, codegen.Client.Model.Gameplay.Social.Data.UserSocialData, 2);
        }
        public get AllianceData(): codegen.SharedModel.Meta.Alliances.UserAllianceData {
            return this.readField(128, codegen.SharedModel.Meta.Alliances.UserAllianceData, 2);
        }
        public get SessionChestData(): codegen.SharedModel.Meta.SessionChests.UserSessionChestData {
            return this.readField(136, codegen.SharedModel.Meta.SessionChests.UserSessionChestData, 2);
        }
        public get SeenQuestPrototypeIds(): System.Collections.Generic.HashSet<number> {
            return this.readField(144, System.Collections.Generic.HashSet, 2, "int");
        }
        public get Quests(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Quests.Data.Quest> {
            return this.readField(152, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Quests.Data.Quest);
        }
        public get AdvancedSeen(): boolean {
            return this.readTypePrimitive(160, "bool", 1);
        }
        public static staticMethods = {
            "<AdvancedPrizeAvailable>b__45_0": () => new il2js.MethodInfo(56645552),
            "<GetKnownQuestsIds>b__30_0": () => new il2js.MethodInfo(56645672),
            "SupportedByDevice": () => new il2js.MethodInfo(56645800),
            "SupportedByRegion": () => new il2js.MethodInfo(56645904)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.GameSettings {
    export class UserGameSettingsWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.GameSettings.UserGameSettingsWrapperReadOnly";
        static get size() { return 48 + 8; }
        public static address = 56362856;
        public static fieldNames: string[] = ["SeenAvatarsIds", "GameSettings", "_defaultPlayerName", "_avatarsData"];
        public get SeenAvatarsIds(): System.Collections.Generic.HashSet<number> {
            return this.readField(24, System.Collections.Generic.HashSet, 2, "int");
        }
        public get GameSettings(): codegen.SharedModel.Meta.Settings.UserGameSettings {
            return this.readField(32, codegen.SharedModel.Meta.Settings.UserGameSettings, 2);
        }
        public get _defaultPlayerName(): string {
            return this.readField(40, System.String, 2);
        }
        public get _avatarsData(): System.Collections.Generic.List<codegen.Client.Model.Gameplay.GameSettings.Data.AvatarData> {
            return this.readField(48, System.Collections.Generic.List, 2, codegen.Client.Model.Gameplay.GameSettings.Data.AvatarData);
        }
        public static get PathToAvatars(): string {
            return this.readField(0, System.String, 2);
        }
        public static get PlayerAvatarsIdsOld(): System.Internal.ManagedArray<number> {
            return this.readField(8, System.Internal.ManagedArray, 2, "int");
        }
        public static get DefaultPlayerAvatarUrl(): string {
            return this.readField(16, System.String, 2);
        }
        public static staticMethods = {
            "AssertUserNameIsValid": () => new il2js.MethodInfo(56892896)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.GameSettings.Data {
    export class AvatarData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.GameSettings.Data.AvatarData";
        static get size() { return 20 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56361608;
        public static fieldNames: string[] = ["Id", "Group"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Group(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Battle {
    export class ArenaWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Battle.ArenaWrapperReadOnly";
        static get size() { return 72 + il2js.NativeStruct.sizeof("int"); }
        public static fieldNames: string[] = ["PlatinumLeague", "PlatinumLeagueUsersIds", "ArenaData", "User", "PreviousLeagueId"];
        public get PlatinumLeague(): System.Collections.Generic.IEnumerable<codegen.Client.Model.Gameplay.Battle.PlatinumLeagueUser> {
            return this.readField(16, System.Collections.Generic.IEnumerable, 2, codegen.Client.Model.Gameplay.Battle.PlatinumLeagueUser);
        }
        public get PlatinumLeagueUsersIds(): System.Collections.Generic.IEnumerable<number> {
            return this.readField(24, System.Collections.Generic.IEnumerable, 2, "long");
        }
        public get ArenaData(): codegen.SharedModel.Meta.Battle.Arena.UserArenaData {
            return this.readField(48, codegen.SharedModel.Meta.Battle.Arena.UserArenaData, 2);
        }
        public get User(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(56, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public get PreviousLeagueId(): number {
            return this.readTypePrimitive(72, "int", 1);
        }
        public static staticMethods = {
            "AssertOpponentIsNotOnCooldown": () => new il2js.MethodInfo(56886616)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Battle {
    export class PlatinumLeagueUser extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Battle.PlatinumLeagueUser";
        static get size() { return 24 + 8; }
        public static address = 57143008;
        public static fieldNames: string[] = ["Note", "ShortNote"];
        public get Note(): codegen.SharedModel.Meta.Notes.UserNote {
            return this.readField(16, codegen.SharedModel.Meta.Notes.UserNote, 2);
        }
        public get ShortNote(): codegen.SharedModel.Meta.Notes.ShortUserNote {
            return this.readField(24, codegen.SharedModel.Meta.Notes.ShortUserNote, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Notes {
    export class UserNote extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Notes.UserNote";
        static get size() { return 210 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56869664;
        public static fieldNames: string[] = ["Id", "SegmentId", "SocialId", "RegistrationTime", "Revision", "Name", "Level", "AvatarId", "LocaleName", "CustomAvatarUrl", "ArenaDefense", "TotalPower", "AllianceRankId", "NotificationSettings", "Outdated"];
        public get Id(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get SegmentId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get SocialId(): string {
            return this.readField(32, System.String, 2);
        }
        public get RegistrationTime(): Date {
            return this.readField(40, System.DateTime, 2);
        }
        public get Revision(): number {
            return this.readTypePrimitive(64, "long", 1);
        }
        public get Name(): string {
            return this.readField(72, System.String, 2);
        }
        public get Level(): number {
            return this.readTypePrimitive(80, "int", 1);
        }
        public get AvatarId(): number {
            return this.readTypePrimitive(84, "int", 1);
        }
        public get LocaleName(): string {
            return this.readField(88, System.String, 2);
        }
        public get CustomAvatarUrl(): string {
            return this.readField(96, System.String, 2);
        }
        public get ArenaDefense(): codegen.SharedModel.Battle.Core.Setup.TeamSetup {
            return this.readField(104, codegen.SharedModel.Battle.Core.Setup.TeamSetup, 2);
        }
        public get TotalPower(): number {
            return this.readTypePrimitive(112, "double", 1);
        }
        public get AllianceRankId(): number {
            return this.readTypePrimitive(136, "int", 1);
        }
        public get NotificationSettings(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(168, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get Outdated(): boolean {
            return this.readTypePrimitive(210, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Notes {
    export class ShortUserNote extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Notes.ShortUserNote";
        static get size() { return 184 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56516432;
        public static fieldNames: string[] = ["Id", "SegmentId", "SocialId", "RegistrationTime", "Revision", "Name", "Level", "AvatarId", "LocaleName", "CustomAvatarUrl", "ArenaDefenseHeroes", "ArenaDefensePower", "TotalPower", "AllianceRankId", "NotificationSettings", "ArenaLeagueId"];
        public get Id(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get SegmentId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get SocialId(): string {
            return this.readField(32, System.String, 2);
        }
        public get RegistrationTime(): Date {
            return this.readField(40, System.DateTime, 2);
        }
        public get Revision(): number {
            return this.readTypePrimitive(64, "long", 1);
        }
        public get Name(): string {
            return this.readField(72, System.String, 2);
        }
        public get Level(): number {
            return this.readTypePrimitive(80, "int", 1);
        }
        public get AvatarId(): number {
            return this.readTypePrimitive(84, "int", 1);
        }
        public get LocaleName(): string {
            return this.readField(88, System.String, 2);
        }
        public get CustomAvatarUrl(): string {
            return this.readField(96, System.String, 2);
        }
        public get ArenaDefenseHeroes(): System.Collections.Generic.List<codegen.SharedModel.Meta.Heroes.ShortHeroInfo> {
            return this.readField(104, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Heroes.ShortHeroInfo);
        }
        public get ArenaDefensePower(): number {
            return this.readTypePrimitive(112, "int", 1);
        }
        public get TotalPower(): number {
            return this.readTypePrimitive(120, "double", 1);
        }
        public get AllianceRankId(): number {
            return this.readTypePrimitive(144, "int", 1);
        }
        public get NotificationSettings(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(176, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get ArenaLeagueId(): number {
            return this.readTypePrimitive(184, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Heroes {
    export class ShortHeroInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Heroes.ShortHeroInfo";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57004120;
        public static fieldNames: string[] = ["HeroTypeId", "Grade", "Level"];
        public get HeroTypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Grade(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Level(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Effects {
    export class UserEffectWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Effects.UserEffectWrapperReadOnly";
        static get size() { return 40 + 8; }
        public static fieldNames: string[] = ["EffectData", "Account", "User"];
        public get EffectData(): codegen.SharedModel.Meta.Effects.UserEffectData {
            return this.readField(24, codegen.SharedModel.Meta.Effects.UserEffectData, 2);
        }
        public get Account(): codegen.SharedModel.Meta.Account.UserAccount {
            return this.readField(32, codegen.SharedModel.Meta.Account.UserAccount, 2);
        }
        public get User(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(40, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.DailyRewards {
    export class LoyaltyWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.DailyRewards.LoyaltyWrapperReadonly";
        static get size() { return 24 + 8; }
        public static fieldNames: string[] = ["UserDailyRewardData"];
        public get UserDailyRewardData(): codegen.SharedModel.Meta.DailyRewards.Data.UserDailyRewardData {
            return this.readField(24, codegen.SharedModel.Meta.DailyRewards.Data.UserDailyRewardData, 2);
        }
        public static staticMethods = {
            "<get_NextProgram>b__4_0": () => new il2js.MethodInfo(56628048)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Village {
    export class CapitolWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Village.CapitolWrapperReadOnly";
        static get size() { return 24 + 8; }
        public static fieldNames: string[] = ["UserWrapper", "VillageData"];
        public get UserWrapper(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(16, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public get VillageData(): codegen.SharedModel.Meta.Village.UserVillageData {
            return this.readField(24, codegen.SharedModel.Meta.Village.UserVillageData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.GlobalMessages {
    export class GlobalMessageWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.GlobalMessages.GlobalMessageWrapperReadOnly";
        static get size() { return 40 + 8; }
        public static fieldNames: string[] = ["ReadGlobalMessageIds", "GlobalMessages", "GlobalMessageData"];
        public get ReadGlobalMessageIds(): System.Collections.Generic.HashSet<number> {
            return this.readField(24, System.Collections.Generic.HashSet, 2, "int");
        }
        public get GlobalMessages(): System.Collections.Generic.List<codegen.SharedModel.Meta.GlobalMessages.SharedGlobalMessage> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.GlobalMessages.SharedGlobalMessage);
        }
        public get GlobalMessageData(): codegen.SharedModel.Meta.GlobalMessages.UserGlobalMessageData {
            return this.readField(40, codegen.SharedModel.Meta.GlobalMessages.UserGlobalMessageData, 2);
        }
        public static staticMethods = {
            "IsValid": () => new il2js.MethodInfo(56633040),
            "CreationDate": () => new il2js.MethodInfo(56908536)
        };
    }
}
export namespace codegen.SharedModel.Meta.GlobalMessages {
    export class SharedGlobalMessage extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalMessages.SharedGlobalMessage";
        static get size() { return 88 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56508032;
        public static fieldNames: string[] = ["Id", "Type", "Header", "PreviewText", "Text", "PathToImage", "PathToPreviewImage", "BigImage", "ActionOnRead", "Discussion", "ShowMode"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Type(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get Header(): string {
            return this.readField(24, System.String, 2);
        }
        public get PreviewText(): string {
            return this.readField(32, System.String, 2);
        }
        public get Text(): string {
            return this.readField(40, System.String, 2);
        }
        public get PathToImage(): string {
            return this.readField(48, System.String, 2);
        }
        public get PathToPreviewImage(): string {
            return this.readField(56, System.String, 2);
        }
        public get BigImage(): boolean {
            return this.readTypePrimitive(64, "bool", 1);
        }
        public get ActionOnRead(): codegen.SharedModel.Meta.GlobalMessages.ClientAction {
            return this.readField(72, codegen.SharedModel.Meta.GlobalMessages.ClientAction, 2);
        }
        public get Discussion(): codegen.SharedModel.Meta.GlobalMessages.DiscussionAction {
            return this.readField(80, codegen.SharedModel.Meta.GlobalMessages.DiscussionAction, 2);
        }
        public get ShowMode(): number {
            return this.readTypePrimitive(88, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalMessages {
    export class ClientAction extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalMessages.ClientAction";
        static get size() { return 24 + 8; }
        public static address = 56507048;
        public static fieldNames: string[] = ["Type", "ArgStr"];
        public get Type(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get ArgStr(): string {
            return this.readField(24, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.GlobalMessages {
    export class DiscussionAction extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.GlobalMessages.DiscussionAction";
        static get size() { return 32 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56507112;
        public static fieldNames: string[] = ["Enabled", "DiscussionLink", "MinUserLevel"];
        public get Enabled(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get DiscussionLink(): string {
            return this.readField(24, System.String, 2);
        }
        public get MinUserLevel(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.LocalNotifications {
    export class LocalNotificationWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.LocalNotifications.LocalNotificationWrapperReadOnly";
        static get size() { return 32 + 8; }
        public static fieldNames: string[] = ["GameData", "NotificationData"];
        public get GameData(): codegen.Client.Model.Gameplay.User.Data.UserGameData {
            return this.readField(24, codegen.Client.Model.Gameplay.User.Data.UserGameData, 2);
        }
        public get NotificationData(): codegen.SharedModel.Meta.Notifications.UserNotificationData {
            return this.readField(32, codegen.SharedModel.Meta.Notifications.UserNotificationData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.AbTests {
    export class UserAbTestWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.AbTests.UserAbTestWrapperReadOnly";
        static get size() { return 16 + 8; }
        public static fieldNames: string[] = ["AbTestData"];
        public get AbTestData(): codegen.SharedModel.Meta.AbTests.UserAbTestData {
            return this.readField(16, codegen.SharedModel.Meta.AbTests.UserAbTestData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.SessionChests {
    export class HourlyGiftsWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.SessionChests.HourlyGiftsWrapperReadonly";
        static get size() { return 32 + 8; }
        public static fieldNames: string[] = ["SessionChestData", "_staticData"];
        public get SessionChestData(): codegen.SharedModel.Meta.SessionChests.UserSessionChestData {
            return this.readField(24, codegen.SharedModel.Meta.SessionChests.UserSessionChestData, 2);
        }
        public get _staticData(): codegen.SharedModel.Meta.SessionChests.StaticSessionChestData {
            return this.readField(32, codegen.SharedModel.Meta.SessionChests.StaticSessionChestData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.CommonData {
    export class CommonDataWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.CommonData.CommonDataWrapperReadonly";
        static get size() { return 24 + 8; }
        public static fieldNames: string[] = ["UserCommonData"];
        public get UserCommonData(): codegen.SharedModel.Meta.CommonData.UserCommonData {
            return this.readField(24, codegen.SharedModel.Meta.CommonData.UserCommonData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Alliance {
    export class ComplexAllianceWrapper extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Alliance.ComplexAllianceWrapper";
        static get size() { return 0; }
        public static fieldNames: string[] = [];
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Alliance {
    export class AllianceWrapperReadonly extends codegen.Client.Model.Gameplay.Alliance.ComplexAllianceWrapper {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Alliance.AllianceWrapperReadonly";
        static get size() { return 128 + il2js.NativeStruct.sizeof("bool"); }
        public static fieldNames: string[] = [...codegen.Client.Model.Gameplay.Alliance.ComplexAllianceWrapper.fieldNames, "UserAllianceData", "Alliance", "Appearance", "Membership", "Achievements", "Bosses", "Activity", "Cvc", "Promotion", "DeletedFromAlliance"];
        public get UserAllianceData(): codegen.SharedModel.Meta.Alliances.UserAllianceData {
            return this.readField(56, codegen.SharedModel.Meta.Alliances.UserAllianceData, 2);
        }
        public get Alliance(): codegen.Client.Model.Gameplay.Alliance.Data.Alliance {
            return this.readField(64, codegen.Client.Model.Gameplay.Alliance.Data.Alliance, 2);
        }
        public get Appearance(): codegen.Client.Model.Gameplay.Alliance.AllianceAppearanceWrapperReadOnly {
            return this.readField(72, codegen.Client.Model.Gameplay.Alliance.AllianceAppearanceWrapperReadOnly, 2);
        }
        public get Membership(): codegen.Client.Model.Gameplay.Alliance.AllianceMembershipWrapperReadOnly {
            return this.readField(80, codegen.Client.Model.Gameplay.Alliance.AllianceMembershipWrapperReadOnly, 2);
        }
        public get Achievements(): codegen.Client.Model.Gameplay.Alliance.AllianceAchievementWrapperReadOnly {
            return this.readField(88, codegen.Client.Model.Gameplay.Alliance.AllianceAchievementWrapperReadOnly, 2);
        }
        public get Bosses(): codegen.Client.Model.Gameplay.Alliance.AllianceBossesWrapperReadOnly {
            return this.readField(96, codegen.Client.Model.Gameplay.Alliance.AllianceBossesWrapperReadOnly, 2);
        }
        public get Activity(): codegen.Client.Model.Gameplay.Alliance.AllianceActivityWrapperReadOnly {
            return this.readField(104, codegen.Client.Model.Gameplay.Alliance.AllianceActivityWrapperReadOnly, 2);
        }
        public get Cvc(): codegen.Client.Model.Gameplay.Alliance.AllianceCvcWrapperReadOnly {
            return this.readField(112, codegen.Client.Model.Gameplay.Alliance.AllianceCvcWrapperReadOnly, 2);
        }
        public get Promotion(): codegen.Client.Model.Gameplay.Alliance.AlliancePromotionWrapperReadOnly {
            return this.readField(120, codegen.Client.Model.Gameplay.Alliance.AlliancePromotionWrapperReadOnly, 2);
        }
        public get DeletedFromAlliance(): boolean {
            return this.readTypePrimitive(128, "bool", 1);
        }
        public static staticMethods = {
            ...codegen.Client.Model.Gameplay.Alliance.ComplexAllianceWrapper.staticMethods,
            "AssertAllianceInvitationsRejectionEnabled": () => new il2js.MethodInfo(56881408),
            "AssertAllianceRequestMessageIsValid": () => new il2js.MethodInfo(56881496),
            "AssertDisableInvitingNonLeader": () => new il2js.MethodInfo(56881648),
            "AssertInviteExists": () => new il2js.MethodInfo(56881776),
            "AssertInvitingNonLeader": () => new il2js.MethodInfo(56881848),
            "AssertRequestExists": () => new il2js.MethodInfo(56881912),
            "AssertServerQuickJoinEnabled": () => new il2js.MethodInfo(56882072),
            "AssertUserNotAllianceMember": () => new il2js.MethodInfo(56882152),
            "AssertUserNotInAlliance": () => new il2js.MethodInfo(56882224)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Alliance {
    export class AllianceWrapper extends codegen.Client.Model.Gameplay.Alliance.AllianceWrapperReadonly {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Alliance.AllianceWrapper";
        static get size() { return 0; }
        public static address = 56418360;
        public static fieldNames: string[] = [...codegen.Client.Model.Gameplay.Alliance.AllianceWrapperReadonly.fieldNames];
        public static staticMethods = {
            ...codegen.Client.Model.Gameplay.Alliance.AllianceWrapperReadonly.staticMethods,
            "<SetInvitationsAllowed>b__26_0": () => new il2js.MethodInfo(56538920),
            "<SetAbbreviation>b__25_0": () => new il2js.MethodInfo(56757984),
            "<SetName>b__24_0": () => new il2js.MethodInfo(56758112),
            "<CreateInitGuard>b__41_0": () => new il2js.MethodInfo(56881352)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Alliance.Data {
    export class Alliance extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Alliance.Data.Alliance";
        static get size() { return 48 + 8; }
        public static address = 57131384;
        public static fieldNames: string[] = ["Id", "Name", "SegmentId", "RatingPosition", "RatingPoints", "GameData"];
        public get Id(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get Name(): string {
            return this.readField(24, System.String, 2);
        }
        public get SegmentId(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get RatingPosition(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public get RatingPoints(): number {
            return this.readTypePrimitive(40, "long", 1);
        }
        public get GameData(): codegen.SharedModel.Meta.Alliances.AllianceGameData {
            return this.readField(48, codegen.SharedModel.Meta.Alliances.AllianceGameData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class AllianceGameData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.AllianceGameData";
        static get size() { return 176 + 8; }
        public static address = 56466952;
        public static fieldNames: string[] = ["Revision", "DeletionInProgress", "CreationTime", "CreatorUserId", "Weight", "AppearanceData", "MembershipData", "ChatData", "BossData", "ActivityData", "AchievementData", "CvcData", "NormalizationTime"];
        public get Revision(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get DeletionInProgress(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public get CreationTime(): Date {
            return this.readField(32, System.DateTime, 2);
        }
        public get CreatorUserId(): number {
            return this.readTypePrimitive(56, "long", 1);
        }
        public get Weight(): number {
            return this.readTypePrimitive(64, "double", 1);
        }
        public get AppearanceData(): codegen.SharedModel.Meta.Alliances.AllianceAppearanceData {
            return this.readField(88, codegen.SharedModel.Meta.Alliances.AllianceAppearanceData, 2);
        }
        public get MembershipData(): codegen.SharedModel.Meta.Alliances.AllianceMembershipData {
            return this.readField(96, codegen.SharedModel.Meta.Alliances.AllianceMembershipData, 2);
        }
        public get ChatData(): codegen.SharedModel.Meta.Alliances.AllianceChatData {
            return this.readField(104, codegen.SharedModel.Meta.Alliances.AllianceChatData, 2);
        }
        public get BossData(): codegen.SharedModel.Meta.Alliances.Boss.AllianceBossData {
            return this.readField(112, codegen.SharedModel.Meta.Alliances.Boss.AllianceBossData, 2);
        }
        public get ActivityData(): codegen.SharedModel.Meta.Alliances.Activity.AllianceActivityData {
            return this.readField(120, codegen.SharedModel.Meta.Alliances.Activity.AllianceActivityData, 2);
        }
        public get AchievementData(): codegen.SharedModel.Meta.Alliances.AllianceAchievementData {
            return this.readField(160, codegen.SharedModel.Meta.Alliances.AllianceAchievementData, 2);
        }
        public get CvcData(): codegen.SharedModel.Meta.CvcTournament.Alliance.AllianceCvcData {
            return this.readField(168, codegen.SharedModel.Meta.CvcTournament.Alliance.AllianceCvcData, 2);
        }
        public get NormalizationTime(): Date {
            return this.readField(176, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class AllianceAppearanceData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.AllianceAppearanceData";
        static get size() { return 40 + 8; }
        public static address = 56466184;
        public static fieldNames: string[] = ["Abbreviation", "Description", "Logo", "MessageOfTheDay"];
        public get Abbreviation(): string {
            return this.readField(16, System.String, 2);
        }
        public get Description(): string {
            return this.readField(24, System.String, 2);
        }
        public get Logo(): string {
            return this.readField(32, System.String, 2);
        }
        public get MessageOfTheDay(): string {
            return this.readField(40, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class AllianceMembershipData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.AllianceMembershipData";
        static get size() { return 64 + 8; }
        public static address = 56467848;
        public static fieldNames: string[] = ["Members", "MembersLimit", "RequiredMemberLevel", "RequiredMemberPower", "LanguageId", "IsOpen", "RequestsReceived", "InvitationsSent", "RemovedMembers"];
        public get Members(): System.Collections.Generic.List<codegen.SharedModel.Meta.Alliances.AllianceMember> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Alliances.AllianceMember);
        }
        public get MembersLimit(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get RequiredMemberLevel(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get RequiredMemberPower(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get LanguageId(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public get IsOpen(): boolean {
            return this.readTypePrimitive(40, "bool", 1);
        }
        public get RequestsReceived(): System.Collections.Generic.List<codegen.SharedModel.Meta.Alliances.AllianceRequest> {
            return this.readField(48, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Alliances.AllianceRequest);
        }
        public get InvitationsSent(): System.Collections.Generic.List<codegen.SharedModel.Meta.Alliances.AllianceInvitation> {
            return this.readField(56, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Alliances.AllianceInvitation);
        }
        public get RemovedMembers(): System.Collections.Generic.Dictionary<number, Date> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "long", System.DateTime);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class AllianceMember extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.AllianceMember";
        static get size() { return 64 + 8; }
        public static address = 56467312;
        public static fieldNames: string[] = ["UserId", "RankId", "JoinDate", "LastVisitDate", "TotalPower", "Level", "ActivityStarsByDate", "LastRewardReceiveTime"];
        public get UserId(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get RankId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get JoinDate(): Date {
            return this.readField(32, System.DateTime, 2);
        }
        public get LastVisitDate(): Date {
            return this.readField(40, System.DateTime, 2);
        }
        public get TotalPower(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get Level(): number {
            return this.readTypePrimitive(52, "int", 1);
        }
        public get ActivityStarsByDate(): System.Collections.Generic.Dictionary<Date, number> {
            return this.readField(56, System.Collections.Generic.Dictionary, 2, System.DateTime, "int");
        }
        public get LastRewardReceiveTime(): Date {
            return this.readField(64, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class AllianceRequest extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.AllianceRequest";
        static get size() { return 40 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56468176;
        public static fieldNames: string[] = ["UserId", "Date", "Message", "IsSeen"];
        public get UserId(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get Date(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public get Message(): string {
            return this.readField(32, System.String, 2);
        }
        public get IsSeen(): boolean {
            return this.readTypePrimitive(40, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class AllianceInvitation extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.AllianceInvitation";
        static get size() { return 32 + 8; }
        public static address = 56467024;
        public static fieldNames: string[] = ["UserId", "InviterUserId", "Date"];
        public get UserId(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get InviterUserId(): number {
            return this.readTypePrimitive(24, "long", 1);
        }
        public get Date(): Date {
            return this.readField(32, System.DateTime, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class AllianceChatData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.AllianceChatData";
        static get size() { return 16 + 8; }
        public static address = 56466520;
        public static fieldNames: string[] = ["Rooms"];
        public get Rooms(): System.Collections.Generic.Dictionary<codegen.SharedModel.Meta.Chat.ChatRoomName, codegen.SharedModel.Meta.Alliances.AllianceChatRoomData> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, codegen.SharedModel.Meta.Chat.ChatRoomName, codegen.SharedModel.Meta.Alliances.AllianceChatRoomData);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances.Boss {
    export class AllianceBossData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.Boss.AllianceBossData";
        static get size() { return 48 + 8; }
        public static address = 56469328;
        public static fieldNames: string[] = ["StartTime", "MaxUnlockedId", "Bosses", "BossRewardInfoByUserId", "ReceivedRewardsByUserId"];
        public get StartTime(): Date {
            return this.readField(16, System.DateTime, 2);
        }
        public get MaxUnlockedId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get Bosses(): System.Collections.Generic.List<codegen.SharedModel.Meta.Alliances.Boss.AllianceBoss> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Alliances.Boss.AllianceBoss);
        }
        public get BossRewardInfoByUserId(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Alliances.UserAllianceBossRewardInfo> {
            return this.readField(40, System.Collections.Generic.Dictionary, 2, "long", codegen.SharedModel.Meta.Alliances.UserAllianceBossRewardInfo);
        }
        public get ReceivedRewardsByUserId(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<number>> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "long", bindTypeArgs(System.Collections.Generic.List, "int"));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances.Boss {
    export class AllianceBoss extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.Boss.AllianceBoss";
        static get size() { return 48 + il2js.NativeStruct.sizeof("long"); }
        public static address = 56469640;
        public static fieldNames: string[] = ["Id", "HealthLeft", "DamageTaken", "AttackInfoByUserId", "Element", "Revision"];
        public get Id(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get HealthLeft(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get DamageTaken(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get AttackInfoByUserId(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Alliances.Boss.AllianceBossShortInfo> {
            return this.readField(32, System.Collections.Generic.Dictionary, 2, "long", codegen.SharedModel.Meta.Alliances.Boss.AllianceBossShortInfo);
        }
        public get Element(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get Revision(): number {
            return this.readTypePrimitive(48, "long", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances.Boss {
    export class AllianceBossShortInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.Boss.AllianceBossShortInfo";
        static get size() { return 32 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56469984;
        public static fieldNames: string[] = ["MostRecentHeroInfos", "TotalGivenDamage", "TotalSpentKeys", "LastTotalPower"];
        public get MostRecentHeroInfos(): System.Collections.Generic.List<codegen.SharedModel.Meta.Heroes.ShortHeroInfo> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Heroes.ShortHeroInfo);
        }
        public get TotalGivenDamage(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get TotalSpentKeys(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get LastTotalPower(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances.Activity {
    export class AllianceActivityData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.Activity.AllianceActivityData";
        static get size() { return 56 + 8; }
        public static address = 56465096;
        public static fieldNames: string[] = ["Stars", "PureStars", "LastRefreshTime", "LastRewardTime", "FlexibleReward"];
        public get Stars(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get PureStars(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get LastRefreshTime(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public get LastRewardTime(): Date {
            return this.readField(32, System.DateTime, 2);
        }
        public get FlexibleReward(): codegen.SharedModel.Meta.Stages.FlexibleReward {
            return this.readField(56, codegen.SharedModel.Meta.Stages.FlexibleReward, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class AllianceAchievementData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.AllianceAchievementData";
        static get size() { return 16 + 8; }
        public static address = 56465488;
        public static fieldNames: string[] = ["Achievements"];
        public get Achievements(): System.Collections.Generic.List<codegen.SharedModel.Meta.Alliances.AllianceAchievement> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Alliances.AllianceAchievement);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class AllianceAchievement extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.AllianceAchievement";
        static get size() { return 32 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56465704;
        public static fieldNames: string[] = ["TypeId", "Value", "Level"];
        public get TypeId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get Value(): number {
            return this.readTypePrimitive(24, "long", 1);
        }
        public get Level(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.CvcTournament.Alliance {
    export class AllianceCvcData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.CvcTournament.Alliance.AllianceCvcData";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 56493344;
        public static fieldNames: string[] = ["WinsCount", "LosesCount", "DrawsCount"];
        public get WinsCount(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get LosesCount(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get DrawsCount(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Alliance {
    export class AllianceAppearanceWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Alliance.AllianceAppearanceWrapperReadOnly";
        static get size() { return 24 + 8; }
        public static fieldNames: string[] = ["Alliance"];
        public get Alliance(): codegen.Client.Model.Gameplay.Alliance.Data.Alliance {
            return this.readField(24, codegen.Client.Model.Gameplay.Alliance.Data.Alliance, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Alliance {
    export class AllianceMembershipWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Alliance.AllianceMembershipWrapperReadOnly";
        static get size() { return 24 + 8; }
        public static fieldNames: string[] = ["Alliance"];
        public get Alliance(): codegen.Client.Model.Gameplay.Alliance.Data.Alliance {
            return this.readField(24, codegen.Client.Model.Gameplay.Alliance.Data.Alliance, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Alliance {
    export class AllianceAchievementWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Alliance.AllianceAchievementWrapperReadOnly";
        static get size() { return 16 + 8; }
        public static fieldNames: string[] = ["Alliance"];
        public get Alliance(): codegen.Client.Model.Gameplay.Alliance.Data.Alliance {
            return this.readField(16, codegen.Client.Model.Gameplay.Alliance.Data.Alliance, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Alliance {
    export class AllianceBossesWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Alliance.AllianceBossesWrapperReadOnly";
        static get size() { return 40 + 8; }
        public static fieldNames: string[] = ["Alliance", "UserAllianceData"];
        public get Alliance(): codegen.Client.Model.Gameplay.Alliance.Data.Alliance {
            return this.readField(32, codegen.Client.Model.Gameplay.Alliance.Data.Alliance, 2);
        }
        public get UserAllianceData(): codegen.SharedModel.Meta.Alliances.UserAllianceData {
            return this.readField(40, codegen.SharedModel.Meta.Alliances.UserAllianceData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Alliance {
    export class AllianceActivityWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Alliance.AllianceActivityWrapperReadOnly";
        static get size() { return 32 + 8; }
        public static address = 57127960;
        public static fieldNames: string[] = ["UserAllianceData", "Alliance"];
        public get UserAllianceData(): codegen.SharedModel.Meta.Alliances.UserAllianceData {
            return this.readField(24, codegen.SharedModel.Meta.Alliances.UserAllianceData, 2);
        }
        public get Alliance(): codegen.Client.Model.Gameplay.Alliance.Data.Alliance {
            return this.readField(32, codegen.Client.Model.Gameplay.Alliance.Data.Alliance, 2);
        }
        public static staticMethods = {
            ".cctor": () => new il2js.MethodInfo(56880528)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Alliance {
    export class AllianceCvcWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Alliance.AllianceCvcWrapperReadOnly";
        static get size() { return 16 + 8; }
        public static fieldNames: string[] = ["Alliance"];
        public get Alliance(): codegen.Client.Model.Gameplay.Alliance.Data.Alliance {
            return this.readField(16, codegen.Client.Model.Gameplay.Alliance.Data.Alliance, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Alliance {
    export class AlliancePromotionWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Alliance.AlliancePromotionWrapperReadOnly";
        static get size() { return 24 + 8; }
        public static fieldNames: string[] = ["Alliance"];
        public get Alliance(): codegen.Client.Model.Gameplay.Alliance.Data.Alliance {
            return this.readField(24, codegen.Client.Model.Gameplay.Alliance.Data.Alliance, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Common {
    export class ExecutionFrequencyGuard<TCmd = unknown> extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Common.ExecutionFrequencyGuard";
        static get size() { return 0 + 8; }
        public static fieldNames: string[] = ["NextExecutionTime", "_executionInterval", "_executionIntervalOnError"];
        constructor(address: Address, _t0: TCmd = typeof il2js.UnknownObject as any) { super(address); }
        public get NextExecutionTime(): Date {
            return this.readField(0, System.DateTime, 2);
        }
        public get _executionInterval(): System.TimeSpan {
            return this.readField(0, System.TimeSpan, 2);
        }
        public get _executionIntervalOnError(): System.TimeSpan {
            return this.readField(0, System.TimeSpan, 2);
        }
        public static staticMethods = {
            "<RefreshMagicShopPrizesCmd>IfOk": () => new il2js.MethodInfo(57061032),
            "<GetAllianceCmd>IfOk": () => new il2js.MethodInfo(57061152),
            "<GetAllianceNotesCmd>IfCanceled": () => new il2js.MethodInfo(57061232),
            "<GetAllianceNotesCmd>IfError": () => new il2js.MethodInfo(57061312),
            "<GetAllianceNotesCmd>IfFinished": () => new il2js.MethodInfo(57061408),
            "<GetAllianceNotesCmd>IfOk": () => new il2js.MethodInfo(57061504),
            "<GetAllianceNotesCmd>IfStarting": () => new il2js.MethodInfo(57061576),
            "<GetUserNotesCmd>IfCanceled": () => new il2js.MethodInfo(57061744),
            "<GetUserNotesCmd>IfError": () => new il2js.MethodInfo(57061800),
            "<GetUserNotesCmd>IfFinished": () => new il2js.MethodInfo(57061888),
            "<GetUserNotesCmd>IfOk": () => new il2js.MethodInfo(57061992),
            "<GetUserNotesCmd>IfStarting": () => new il2js.MethodInfo(57062048),
            "<CollectAllBossRewardsCmd>TryExecute": () => new il2js.MethodInfo(56617704),
            "<GetAllianceCmd>TryExecute": () => new il2js.MethodInfo(56617856),
            "<GetAllianceNotesCmd>TryExecute": () => new il2js.MethodInfo(56617896),
            "<GetFractionWarDataCmd>TryExecute": () => new il2js.MethodInfo(56618064),
            "<RefreshMagicShopPrizesCmd>TryExecute": () => new il2js.MethodInfo(56618168),
            "<GetUserNotesCmd>TryExecute": () => new il2js.MethodInfo(56618264),
            "<GetAllianceNotesCmd>get_NextExecutionTime": () => new il2js.MethodInfo(56908208),
            "<GetUserNotesCmd>get_NextExecutionTime": () => new il2js.MethodInfo(56908256),
            "<CollectAllBossRewardsCmd>.ctor": () => new il2js.MethodInfo(56874016),
            "<GetAllianceCmd>.ctor": () => new il2js.MethodInfo(56874200),
            "<GetAllianceNotesCmd>.ctor": () => new il2js.MethodInfo(56874216),
            "<GetFractionWarDataCmd>.ctor": () => new il2js.MethodInfo(56874392),
            "<RefreshMagicShopPrizesCmd>.ctor": () => new il2js.MethodInfo(56874512),
            "<GetUserNotesCmd>.ctor": () => new il2js.MethodInfo(56874568)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Stats {
    export class StatsDataWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Stats.StatsDataWrapperReadonly";
        static get size() { return 24 + 8; }
        public static fieldNames: string[] = ["UserStatsData"];
        public get UserStatsData(): codegen.SharedModel.Meta.Stats.UserStatsData {
            return this.readField(24, codegen.SharedModel.Meta.Stats.UserStatsData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.DailyRewards {
    export class MonthlyLoyaltyProgramWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.DailyRewards.MonthlyLoyaltyProgramWrapperReadonly";
        static get size() { return 24 + 8; }
        public static fieldNames: string[] = ["LoyaltyProgramData"];
        public get LoyaltyProgramData(): codegen.SharedModel.Meta.LoyaltyProgram.Data.UserLoyaltyProgramData {
            return this.readField(24, codegen.SharedModel.Meta.LoyaltyProgram.Data.UserLoyaltyProgramData, 2);
        }
        public static staticMethods = {
            "<CurrentLoyaltyProgramDay>b__17_0": () => new il2js.MethodInfo(56628224)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.RateGame {
    export class RateGameWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.RateGame.RateGameWrapperReadOnly";
        static get size() { return 24 + 8; }
        public static fieldNames: string[] = ["CommonData"];
        public get CommonData(): codegen.SharedModel.Meta.CommonData.UserCommonData {
            return this.readField(24, codegen.SharedModel.Meta.CommonData.UserCommonData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.RateGame {
    export class RateGameWrapper extends codegen.Client.Model.Gameplay.RateGame.RateGameWrapperReadOnly {
        public static [TypeName] = "codegen.Client.Model.Gameplay.RateGame.RateGameWrapper";
        static get size() { return 32 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56418680;
        public static fieldNames: string[] = [...codegen.Client.Model.Gameplay.RateGame.RateGameWrapperReadOnly.fieldNames, "_rateEnqueue"];
        public get _rateEnqueue(): boolean {
            return this.readTypePrimitive(32, "bool", 1);
        }
        public static staticMethods = {
            ...codegen.Client.Model.Gameplay.RateGame.RateGameWrapperReadOnly.staticMethods,
            "<Rate>b__2_1": () => new il2js.MethodInfo(56476984),
            "<Rate>b__2_0": () => new il2js.MethodInfo(56540408)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Heroes {
    export class HeroRatingWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Heroes.HeroRatingWrapperReadOnly";
        static get size() { return 40 + 8; }
        public static fieldNames: string[] = ["LocalChangedHeroRatingData", "UserHeroData", "HeroRatingData"];
        public get LocalChangedHeroRatingData(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.HeroesRating.HeroRatingData> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.HeroesRating.HeroRatingData);
        }
        public get UserHeroData(): codegen.SharedModel.Meta.Heroes.UserHeroData {
            return this.readField(32, codegen.SharedModel.Meta.Heroes.UserHeroData, 2);
        }
        public get HeroRatingData(): codegen.SharedModel.Meta.HeroesRating.SignInHeroRatingData {
            return this.readField(40, codegen.SharedModel.Meta.HeroesRating.SignInHeroRatingData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.HeroesRating {
    export class SignInHeroRatingData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.HeroesRating.SignInHeroRatingData";
        static get size() { return 24 + 8; }
        public static address = 56512624;
        public static fieldNames: string[] = ["HeroRatingSettings", "Ratings"];
        public get HeroRatingSettings(): codegen.SharedModel.Meta.HeroesRating.HeroRatingSettings {
            return this.readField(16, codegen.SharedModel.Meta.HeroesRating.HeroRatingSettings, 2);
        }
        public get Ratings(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.HeroesRating.HeroRating> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.HeroesRating.HeroRating);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.HeroesRating {
    export class HeroRatingSettings extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.HeroesRating.HeroRatingSettings";
        static get size() { return 32 + il2js.NativeStruct.sizeof("double"); }
        public static address = 56512352;
        public static fieldNames: string[] = ["Enabled", "HeroRatingUpdateCooldownMinutes", "RatingsCacheUpdateCooldownMinutes"];
        public get Enabled(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get HeroRatingUpdateCooldownMinutes(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public get RatingsCacheUpdateCooldownMinutes(): number {
            return this.readTypePrimitive(32, "double", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.HeroesRating {
    export class HeroRating extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.HeroesRating.HeroRating";
        static get size() { return 16 + 8; }
        public static address = 56370304;
        public static fieldNames: string[] = ["Marks"];
        public get Marks(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.HeroesRating.HeroRatingInfo> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.HeroesRating.HeroRatingInfo);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.HeroesRating {
    export class HeroRatingInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.HeroesRating.HeroRatingInfo";
        static get size() { return 24 + il2js.NativeStruct.sizeof("double"); }
        public static address = 56370488;
        public static fieldNames: string[] = ["TotalMarks", "SumMarks"];
        public get TotalMarks(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get SumMarks(): number {
            return this.readTypePrimitive(24, "double", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Quests {
    export class RecommendedQuestsWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Quests.RecommendedQuestsWrapperReadOnly";
        static get size() { return 32 + 8; }
        public static address = 56407616;
        public static fieldNames: string[] = ["UserWrapper", "_questData", "SignInRecommendedQuestData"];
        public get UserWrapper(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(16, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public get _questData(): codegen.SharedModel.Meta.Quests.Data.UserQuestData {
            return this.readField(24, codegen.SharedModel.Meta.Quests.Data.UserQuestData, 2);
        }
        public get SignInRecommendedQuestData(): codegen.SharedModel.Meta.Quests.RecommendedQuests.SignInRecommendedQuestData {
            return this.readField(32, codegen.SharedModel.Meta.Quests.RecommendedQuests.SignInRecommendedQuestData, 2);
        }
        public static staticMethods = {
            "<IsSupported>b__22_0": () => new il2js.MethodInfo(56646128),
            "<get_Quests>b__13_0": () => new il2js.MethodInfo(56646240),
            "IsCompletedQuest": () => new il2js.MethodInfo(56646384),
            ".cctor": () => new il2js.MethodInfo(56910568)
        };
    }
}
export namespace codegen.SharedModel.Meta.Quests.RecommendedQuests {
    export class SignInRecommendedQuestData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Quests.RecommendedQuests.SignInRecommendedQuestData";
        static get size() { return 16 + 8; }
        public static address = 56539200;
        public static fieldNames: string[] = ["QuestsCountByGroupId"];
        public get QuestsCountByGroupId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(16, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.GlobalEvents {
    export class GlobalEventsWrapper extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.GlobalEvents.GlobalEventsWrapper";
        static get size() { return 40 + 8; }
        public static address = 56419400;
        public static fieldNames: string[] = ["DataJson", "_data", "_knownUpdateTime", "_knownEventIds"];
        public get DataJson(): string {
            return this.readField(16, System.String, 2);
        }
        public get _data(): codegen.Client.Model.Gameplay.GlobalEvents.Data.UpdatableGlobalEventsData {
            return this.readField(24, codegen.Client.Model.Gameplay.GlobalEvents.Data.UpdatableGlobalEventsData, 2);
        }
        public get _knownUpdateTime(): Date {
            return this.readField(32, System.DateTime, 2);
        }
        public get _knownEventIds(): System.Collections.Generic.List<number> {
            return this.readField(40, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.GlobalEvents {
    export class SoloEventsWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.GlobalEvents.SoloEventsWrapperReadOnly";
        static get size() { return 48 + 8; }
        public static fieldNames: string[] = ["FirstSeenTeasers", "_globalEvents", "User", "QuestData"];
        public get FirstSeenTeasers(): System.Collections.Generic.List<number> {
            return this.readField(24, System.Collections.Generic.List, 2, "int");
        }
        public get _globalEvents(): codegen.Client.Model.Gameplay.GlobalEvents.GlobalEventsWrapper {
            return this.readField(32, codegen.Client.Model.Gameplay.GlobalEvents.GlobalEventsWrapper, 2);
        }
        public get User(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(40, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public get QuestData(): codegen.SharedModel.Meta.Quests.Data.UserQuestData {
            return this.readField(48, codegen.SharedModel.Meta.Quests.Data.UserQuestData, 2);
        }
        public static staticMethods = {
            "ActiveEvent": () => new il2js.MethodInfo(56631496),
            "FiniteEvent": () => new il2js.MethodInfo(56631600),
            "IsSoloEventQuest": () => new il2js.MethodInfo(56631680),
            "NeverSeen": () => new il2js.MethodInfo(56631720),
            "NotSeen": () => new il2js.MethodInfo(56631832),
            "Unseen": () => new il2js.MethodInfo(56631968),
            "EndTime": () => new il2js.MethodInfo(56908448),
            "PrototypeId": () => new il2js.MethodInfo(56969224)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.GlobalEvents {
    export class SoloEventsWrapper extends codegen.Client.Model.Gameplay.GlobalEvents.SoloEventsWrapperReadOnly {
        public static [TypeName] = "codegen.Client.Model.Gameplay.GlobalEvents.SoloEventsWrapper";
        static get size() { return 56 + 8; }
        public static address = 56419504;
        public static fieldNames: string[] = [...codegen.Client.Model.Gameplay.GlobalEvents.SoloEventsWrapperReadOnly.fieldNames, "_firstSeenTeasersQuestPrototypeIds"];
        public get _firstSeenTeasersQuestPrototypeIds(): System.Collections.Generic.List<number> {
            return this.readField(56, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {
            ...codegen.Client.Model.Gameplay.GlobalEvents.SoloEventsWrapperReadOnly.staticMethods
        };
    }
}
export namespace codegen.Client.Model.Gameplay.GlobalEvents {
    export class TournamentsWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.GlobalEvents.TournamentsWrapperReadonly";
        static get size() { return 64 + 8; }
        public static fieldNames: string[] = ["_globalEvents", "User", "QuestData", "PositionByStateId", "EarnedPointsByStateId"];
        public get _globalEvents(): codegen.Client.Model.Gameplay.GlobalEvents.GlobalEventsWrapper {
            return this.readField(32, codegen.Client.Model.Gameplay.GlobalEvents.GlobalEventsWrapper, 2);
        }
        public get User(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(40, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public get QuestData(): codegen.SharedModel.Meta.Quests.Data.UserQuestData {
            return this.readField(48, codegen.SharedModel.Meta.Quests.Data.UserQuestData, 2);
        }
        public get PositionByStateId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(56, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get EarnedPointsByStateId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(64, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public static staticMethods = {
            "<All>b__21_0": () => new il2js.MethodInfo(56632416),
            "HasAvailableReward": () => new il2js.MethodInfo(56632576),
            "Uncompleted": () => new il2js.MethodInfo(56632656),
            "Unseen": () => new il2js.MethodInfo(56632704)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.GlobalEvents {
    export class TournamentsWrapper extends codegen.Client.Model.Gameplay.GlobalEvents.TournamentsWrapperReadonly {
        public static [TypeName] = "codegen.Client.Model.Gameplay.GlobalEvents.TournamentsWrapper";
        static get size() { return 72 + 8; }
        public static address = 56419584;
        public static fieldNames: string[] = [...codegen.Client.Model.Gameplay.GlobalEvents.TournamentsWrapperReadonly.fieldNames, "_seenTournamentInfos"];
        public get _seenTournamentInfos(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.Tournaments.SeenTournamentInfo> {
            return this.readField(72, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.Tournaments.SeenTournamentInfo);
        }
        public static staticMethods = {
            ...codegen.Client.Model.Gameplay.GlobalEvents.TournamentsWrapperReadonly.staticMethods
        };
    }
}
export namespace codegen.Client.Model.Gameplay.ReferralProgram {
    export class ReferralProgramWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.ReferralProgram.ReferralProgramWrapperReadonly";
        static get size() { return 48 + 8; }
        public static address = 56408840;
        public static fieldNames: string[] = ["ReferralProgramData", "Account", "_rewardShownInfo"];
        public get ReferralProgramData(): codegen.SharedModel.Meta.ReferralProgram.Data.UserReferralProgramData {
            return this.readField(32, codegen.SharedModel.Meta.ReferralProgram.Data.UserReferralProgramData, 2);
        }
        public get Account(): codegen.Client.Model.Gameplay.Account.AccountWrapperReadOnly {
            return this.readField(40, codegen.Client.Model.Gameplay.Account.AccountWrapperReadOnly, 2);
        }
        public get _rewardShownInfo(): codegen.Client.Model.Gameplay.ReferralProgram.Data.ReferralRewardShownInfo {
            return this.readField(48, codegen.Client.Model.Gameplay.ReferralProgram.Data.ReferralRewardShownInfo, 2);
        }
        public static staticMethods = {
            "AllSlotRewardsClaimed": () => new il2js.MethodInfo(56647016),
            "RewardInSlotAvailable": () => new il2js.MethodInfo(56647136),
            ".cctor": () => new il2js.MethodInfo(56910808)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.ReferralProgram.Data {
    export class ReferralRewardShownInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.ReferralProgram.Data.ReferralRewardShownInfo";
        static get size() { return 24 + 8; }
        public static address = 56408928;
        public static fieldNames: string[] = ["SlotsRewards"];
        public get SlotsRewards(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<number>> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, "int"));
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Battle {
    export class BattleWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Battle.BattleWrapperReadonly";
        static get size() { return 16 + 8; }
        public static address = 56419064;
        public static fieldNames: string[] = ["BattleData"];
        public get BattleData(): codegen.SharedModel.Meta.Battle.UserBattleData {
            return this.readField(16, codegen.SharedModel.Meta.Battle.UserBattleData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.AutoBattle {
    export class AutoBattleWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.AutoBattle.AutoBattleWrapperReadOnly";
        static get size() { return 44 + il2js.NativeStruct.sizeof("int"); }
        public static fieldNames: string[] = ["User", "_battleData", "_report", "Active", "AutoBuyEnergy", "LastAutoBattleCount"];
        public get User(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(16, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public get _battleData(): codegen.SharedModel.Meta.Battle.UserBattleData {
            return this.readField(24, codegen.SharedModel.Meta.Battle.UserBattleData, 2);
        }
        public get _report(): codegen.Client.Model.Gameplay.AutoBattle.AutoBattleReport {
            return this.readField(32, codegen.Client.Model.Gameplay.AutoBattle.AutoBattleReport, 2);
        }
        public get Active(): boolean {
            return this.readTypePrimitive(40, "bool", 1);
        }
        public get AutoBuyEnergy(): boolean {
            return this.readTypePrimitive(41, "bool", 1);
        }
        public get LastAutoBattleCount(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public static staticMethods = {
            "<get_TotalExperience>b__32_0": () => new il2js.MethodInfo(56568888),
            "<AllHeroesReachMaxLevel>b__59_0": () => new il2js.MethodInfo(56622032),
            "<GetMaxLvlHeroes>b__55_0": () => new il2js.MethodInfo(56622144),
            "<GetMaxLvlHeroes>b__55_1": () => new il2js.MethodInfo(56622256),
            "<get_FarmHeroesWithMaxLvl>b__54_0": () => new il2js.MethodInfo(56622352),
            "<get_PermanentHeroes>b__48_0": () => new il2js.MethodInfo(56622472),
            "<get_SelectedTempHeroesWithMaxLvl>b__52_0": () => new il2js.MethodInfo(56622512),
            "<get_TotalExperience>b__32_1": () => new il2js.MethodInfo(56967720)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.AutoBattle {
    export class AutoBattleWrapper extends codegen.Client.Model.Gameplay.AutoBattle.AutoBattleWrapperReadOnly {
        public static [TypeName] = "codegen.Client.Model.Gameplay.AutoBattle.AutoBattleWrapper";
        static get size() { return 48 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56419136;
        public static fieldNames: string[] = [...codegen.Client.Model.Gameplay.AutoBattle.AutoBattleWrapperReadOnly.fieldNames, "_isDirty"];
        public get _isDirty(): boolean {
            return this.readTypePrimitive(48, "bool", 1);
        }
        public static staticMethods = {
            ...codegen.Client.Model.Gameplay.AutoBattle.AutoBattleWrapperReadOnly.staticMethods,
            "<RecordSelectedFarmHeroIds>b__28_0": () => new il2js.MethodInfo(56568736),
            "<RecordSelectedHeroIds>b__27_1": () => new il2js.MethodInfo(56568832),
            "<RecordSelectedHeroIds>b__27_0": () => new il2js.MethodInfo(56621912),
            "<Collect>b__26_0": () => new il2js.MethodInfo(56586216),
            "<Finish>b__25_0": () => new il2js.MethodInfo(56586328),
            "<RecordFinishBattleInfo>b__32_0": () => new il2js.MethodInfo(56886080),
            "<RecordFinishBattleInfo>b__32_1": () => new il2js.MethodInfo(56886240),
            "<RecordSelectedFarmHeroIds>b__28_1": () => new il2js.MethodInfo(56886312),
            "<RecordSelectedHeroIds>b__27_2": () => new il2js.MethodInfo(56886424)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.AutoBattle {
    export class AutoBattleReport extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.AutoBattle.AutoBattleReport";
        static get size() { return 96 + 8; }
        public static address = 57140752;
        public static fieldNames: string[] = ["ResourcesSpent", "ResourcesGained", "Prize", "StartedBattleCount", "VictoryBattlesCount", "LeaderHeroId", "SelectedHeroIds", "SelectedMaxLevelHeroIds", "FarmHeroIds", "HeroIdsInBattle", "HeroesExperienceOnStart", "LastBattleHeroIds"];
        public get ResourcesSpent(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(16, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get ResourcesGained(): codegen.SharedModel.Meta.Account.Resources {
            return this.readField(24, codegen.SharedModel.Meta.Account.Resources, 2);
        }
        public get Prize(): codegen.SharedModel.Meta.UserPrizes.UserPrize {
            return this.readField(32, codegen.SharedModel.Meta.UserPrizes.UserPrize, 2);
        }
        public get StartedBattleCount(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public get VictoryBattlesCount(): number {
            return this.readTypePrimitive(44, "int", 1);
        }
        public get LeaderHeroId(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get SelectedHeroIds(): System.Collections.Generic.List<number> {
            return this.readField(56, System.Collections.Generic.List, 2, "int");
        }
        public get SelectedMaxLevelHeroIds(): System.Collections.Generic.List<number> {
            return this.readField(64, System.Collections.Generic.List, 2, "int");
        }
        public get FarmHeroIds(): System.Collections.Generic.List<number> {
            return this.readField(72, System.Collections.Generic.List, 2, "int");
        }
        public get HeroIdsInBattle(): System.Collections.Generic.HashSet<number> {
            return this.readField(80, System.Collections.Generic.HashSet, 2, "int");
        }
        public get HeroesExperienceOnStart(): System.Collections.Generic.Dictionary<number, codegen.Client.Model.Gameplay.AutoBattle.AutoBattleReport_HeroInfo> {
            return this.readField(88, System.Collections.Generic.Dictionary, 2, "int", codegen.Client.Model.Gameplay.AutoBattle.AutoBattleReport_HeroInfo);
        }
        public get LastBattleHeroIds(): System.Collections.Generic.List<number> {
            return this.readField(96, System.Collections.Generic.List, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.AutoBattle {
    export class AutoBattleReport_HeroInfo extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.AutoBattle.AutoBattleReport_HeroInfo";
        static get size() { return 4 + il2js.NativeStruct.sizeof("int"); }
        public static fieldNames: string[] = ["Level", "Experience"];
        public get Level(): number {
            return this.readTypePrimitive(0, "int", 1);
        }
        public get Experience(): number {
            return this.readTypePrimitive(4, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.FactionWars {
    export class FractionsWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.FactionWars.FractionsWrapperReadonly";
        static get size() { return 16 + 8; }
        public static fieldNames: string[] = ["Account"];
        public get Account(): codegen.SharedModel.Meta.Account.UserAccount {
            return this.readField(16, codegen.SharedModel.Meta.Account.UserAccount, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.FactionWars {
    export class FractionsWrapper extends codegen.Client.Model.Gameplay.FactionWars.FractionsWrapperReadonly {
        public static [TypeName] = "codegen.Client.Model.Gameplay.FactionWars.FractionsWrapper";
        static get size() { return 0; }
        public static address = 56419256;
        public static fieldNames: string[] = [...codegen.Client.Model.Gameplay.FactionWars.FractionsWrapperReadonly.fieldNames];
        public static staticMethods = {
            ...codegen.Client.Model.Gameplay.FactionWars.FractionsWrapperReadonly.staticMethods
        };
    }
}
export namespace codegen.SharedModel.Meta.Stages.Dto {
    export class GetFractionWarDataRequestDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.Dto.GetFractionWarDataRequestDto";
        static get size() { return 16 + il2js.NativeStruct.sizeof("long"); }
        public static address = 56359448;
        public static fieldNames: string[] = ["UserId"];
        public get UserId(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Stages.Entities {
    export class FractionWarData extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Stages.Entities.FractionWarData";
        static get size() { return 48 + 8; }
        public static address = 57083856;
        public static fieldNames: string[] = ["GeneratedTime", "OpenDaysByFraction", "_activeDataUpdateTime", "_activeRegionIds", "_activeFractions"];
        public get GeneratedTime(): Date {
            return this.readField(16, System.DateTime, 2);
        }
        public get OpenDaysByFraction(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<Date>> {
            return this.readField(24, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, System.DateTime));
        }
        public get _activeDataUpdateTime(): Date {
            return this.readField(32, System.DateTime, 2);
        }
        public get _activeRegionIds(): System.Collections.Generic.HashSet<number> {
            return this.readField(40, System.Collections.Generic.HashSet, 2, "int");
        }
        public get _activeFractions(): System.Collections.Generic.HashSet<number> {
            return this.readField(48, System.Collections.Generic.HashSet, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.DailyUpdatesLogic {
    export class DailyUpdatesWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.DailyUpdatesLogic.DailyUpdatesWrapperReadonly";
        static get size() { return 16 + 8; }
        public static fieldNames: string[] = ["DailyUpdateData"];
        public get DailyUpdateData(): codegen.SharedModel.Meta.DailyUpdates.UserDailyUpdateData {
            return this.readField(16, codegen.SharedModel.Meta.DailyUpdates.UserDailyUpdateData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.PerformanceData {
    export class PerformanceDataWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.PerformanceData.PerformanceDataWrapperReadonly";
        static get size() { return 40 + il2js.NativeStruct.sizeof("long"); }
        public static address = 56403384;
        public static fieldNames: string[] = ["UserPerformanceData", "ContextsPerformanceData", "UserPerformanceLastId", "ContextsPerformanceLastId"];
        public get UserPerformanceData(): System.Collections.Generic.List<codegen.SharedModel.Meta.PerformanceMeter.Dto.PerformanceDataDto> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.PerformanceMeter.Dto.PerformanceDataDto);
        }
        public get ContextsPerformanceData(): System.Collections.Generic.List<codegen.SharedModel.Meta.PerformanceMeter.Dto.ContextPerformanceDataDto> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.PerformanceMeter.Dto.ContextPerformanceDataDto);
        }
        public get UserPerformanceLastId(): number {
            return this.readTypePrimitive(32, "long", 1);
        }
        public get ContextsPerformanceLastId(): number {
            return this.readTypePrimitive(40, "long", 1);
        }
        public static staticMethods = {
            ".cctor": () => new il2js.MethodInfo(56910256)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.ServerEvents {
    export class ServerEventsWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.ServerEvents.ServerEventsWrapperReadOnly";
        static get size() { return 32 + 8; }
        public static fieldNames: string[] = ["ServerEventsData", "UserServerEventsData"];
        public get ServerEventsData(): codegen.SharedModel.Meta.ServerEvents.ServerEventsData {
            return this.readField(24, codegen.SharedModel.Meta.ServerEvents.ServerEventsData, 2);
        }
        public get UserServerEventsData(): codegen.SharedModel.Meta.ServerEvents.UserServerEventsData {
            return this.readField(32, codegen.SharedModel.Meta.ServerEvents.UserServerEventsData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.BattlePass {
    export class BattlePassWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.BattlePass.BattlePassWrapperReadOnly";
        static get size() { return 88 + il2js.NativeStruct.sizeof("bool"); }
        public static fieldNames: string[] = ["User", "UserBattlePassData", "DailyRefreshTime", "Levels", "WeeklyQuests", "DailyQuests", "Payments", "IntroJustMarkedSeen"];
        public get User(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(32, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public get UserBattlePassData(): codegen.SharedModel.Meta.BattlePasses.UserBattlePassData {
            return this.readField(40, codegen.SharedModel.Meta.BattlePasses.UserBattlePassData, 2);
        }
        public get DailyRefreshTime(): System.TimeSpan {
            return this.readField(48, System.TimeSpan, 2);
        }
        public get Levels(): codegen.Client.Model.Gameplay.BattlePass.BattlePassLevelsWrapperReadonly {
            return this.readField(56, codegen.Client.Model.Gameplay.BattlePass.BattlePassLevelsWrapperReadonly, 2);
        }
        public get WeeklyQuests(): codegen.Client.Model.Gameplay.BattlePass.BattlePassWeeklyQuestsWrapperReadonly {
            return this.readField(64, codegen.Client.Model.Gameplay.BattlePass.BattlePassWeeklyQuestsWrapperReadonly, 2);
        }
        public get DailyQuests(): codegen.Client.Model.Gameplay.BattlePass.BattlePassDailyQuestsWrapperReadonly {
            return this.readField(72, codegen.Client.Model.Gameplay.BattlePass.BattlePassDailyQuestsWrapperReadonly, 2);
        }
        public get Payments(): codegen.Client.Model.Gameplay.BattlePass.BattlePassPaymentsWrapperReadonly {
            return this.readField(80, codegen.Client.Model.Gameplay.BattlePass.BattlePassPaymentsWrapperReadonly, 2);
        }
        public get IntroJustMarkedSeen(): boolean {
            return this.readTypePrimitive(88, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.MVVM.Model.Events {
    export class _2_EventNoExcept<TArg0 = unknown, TArg1 = unknown> extends codegen.Client.MVVM.Model.Events.EventNoExceptBase {
        public static [TypeName] = "codegen.Client.MVVM.Model.Events._2_EventNoExcept";
        static get size() { return 0 + 8; }
        public static fieldNames: string[] = [...codegen.Client.MVVM.Model.Events.EventNoExceptBase.fieldNames, "_handlers"];
        constructor(address: Address, _t0: TArg0 = typeof il2js.UnknownObject as any, _t1: TArg1 = typeof il2js.UnknownObject as any) { super(address); }
        public get _handlers(): codegen.Client.MVVM.Model.Events.EventHandlerCollection<codegen.Client.MVVM.Model.Events._2_EventNoExcept__2_Handler> {
            return this.readField(0, codegen.Client.MVVM.Model.Events.EventHandlerCollection, 2, codegen.Client.MVVM.Model.Events._2_EventNoExcept__2_Handler);
        }
        public static staticMethods = {
            ...codegen.Client.MVVM.Model.Events.EventNoExceptBase.staticMethods
        };
    }
}
export namespace codegen.Client.MVVM.Model.Events {
    export class _2_EventNoExcept__2_Handler<TArg0 = unknown, TArg1 = unknown> extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.MVVM.Model.Events._2_EventNoExcept__2_Handler";
        static get size() { return 0 + 8; }
        public static fieldNames: string[] = ["Tag"];
        constructor(address: Address, _t0: TArg0 = typeof il2js.UnknownObject as any, _t1: TArg1 = typeof il2js.UnknownObject as any) { super(address); }
        public get Tag(): string {
            return this.readField(0, System.String, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.BattlePass {
    export class BattlePassLevelsWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.BattlePass.BattlePassLevelsWrapperReadonly";
        static get size() { return 16 + 8; }
        public static address = 57150096;
        public static fieldNames: string[] = ["_userData"];
        public get _userData(): codegen.SharedModel.Meta.BattlePasses.UserBattlePassData {
            return this.readField(16, codegen.SharedModel.Meta.BattlePasses.UserBattlePassData, 2);
        }
        public static staticMethods = {
            "<get_Current>b__25_0": () => new il2js.MethodInfo(56623904),
            "<get_Next>b__27_0": () => new il2js.MethodInfo(56624032),
            "WithAvailablePrize": () => new il2js.MethodInfo(56624080)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.BattlePass {
    export class BattlePassWeeklyQuestsWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.BattlePass.BattlePassWeeklyQuestsWrapperReadonly";
        static get size() { return 16 + 8; }
        public static address = 57150208;
        public static fieldNames: string[] = ["_user"];
        public get _user(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(16, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public static staticMethods = {
            "WeekQuestInfo": () => new il2js.MethodInfo(57063352)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.BattlePass {
    export class BattlePassDailyQuestsWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.BattlePass.BattlePassDailyQuestsWrapperReadonly";
        static get size() { return 16 + 8; }
        public static address = 57150280;
        public static fieldNames: string[] = ["_user"];
        public get _user(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(16, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public static staticMethods = {
            "<All>b__2_0": () => new il2js.MethodInfo(56623520)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.BattlePass {
    export class BattlePassPaymentsWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.BattlePass.BattlePassPaymentsWrapperReadonly";
        static get size() { return 24 + 8; }
        public static address = 57150440;
        public static fieldNames: string[] = ["_paymentData", "_conditions"];
        public get _paymentData(): codegen.SharedModel.Meta.Payments.UserPaymentData {
            return this.readField(16, codegen.SharedModel.Meta.Payments.UserPaymentData, 2);
        }
        public get _conditions(): System.Collections.Generic.IEnumerable<codegen.Client.Model.Gameplay.BattlePass.BattlePassOffers.Conditions.BattlePassOfferCondition> {
            return this.readField(24, System.Collections.Generic.IEnumerable, 2, codegen.Client.Model.Gameplay.BattlePass.BattlePassOffers.Conditions.BattlePassOfferCondition);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.BattlePass.BattlePassOffers.Conditions {
    export class BattlePassOfferCondition extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.BattlePass.BattlePassOffers.Conditions.BattlePassOfferCondition";
        static get size() { return 24 + 8; }
        public static fieldNames: string[] = ["Preferred", "Data"];
        public get Preferred(): boolean {
            return this.readTypePrimitive(16, "bool", 1);
        }
        public get Data(): codegen.SharedModel.Meta.BattlePasses.UserBattlePassData {
            return this.readField(24, codegen.SharedModel.Meta.BattlePasses.UserBattlePassData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.AutoOpen {
    export class AutoOpenWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.AutoOpen.AutoOpenWrapperReadOnly";
        static get size() { return 56 + 8; }
        public static fieldNames: string[] = ["SessionBattlesCount", "SessionOffersLeftCount", "DisplayedWindows", "SessionWindows", "AutoOpenData"];
        public get SessionBattlesCount(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get SessionOffersLeftCount(): number {
            return this.readTypePrimitive(36, "int", 1);
        }
        public get DisplayedWindows(): System.Collections.Generic.List<codegen.SharedModel.Meta.AutoOpen.DisplayedWindowByHour> {
            return this.readField(40, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.AutoOpen.DisplayedWindowByHour);
        }
        public get SessionWindows(): System.Collections.Generic.Dictionary<number, System.Collections.Generic.List<Date>> {
            return this.readField(48, System.Collections.Generic.Dictionary, 2, "int", bindTypeArgs(System.Collections.Generic.List, System.DateTime));
        }
        public get AutoOpenData(): codegen.SharedModel.Meta.AutoOpen.UserAutoOpenData {
            return this.readField(56, codegen.SharedModel.Meta.AutoOpen.UserAutoOpenData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Amazon {
    export class AmazonDataWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Amazon.AmazonDataWrapperReadonly";
        static get size() { return 24 + 8; }
        public static fieldNames: string[] = ["User"];
        public get User(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(24, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Amazon {
    export class AmazonDataWrapper extends codegen.Client.Model.Gameplay.Amazon.AmazonDataWrapperReadonly {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Amazon.AmazonDataWrapper";
        static get size() { return 33 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56420056;
        public static fieldNames: string[] = [...codegen.Client.Model.Gameplay.Amazon.AmazonDataWrapperReadonly.fieldNames, "_shouldSendSeenDrops", "_shouldSendSeenMarker"];
        public get _shouldSendSeenDrops(): boolean {
            return this.readTypePrimitive(32, "bool", 1);
        }
        public get _shouldSendSeenMarker(): boolean {
            return this.readTypePrimitive(33, "bool", 1);
        }
        public static staticMethods = {
            ...codegen.Client.Model.Gameplay.Amazon.AmazonDataWrapperReadonly.staticMethods,
            "<Collect>b__6_0": () => new il2js.MethodInfo(56586080),
            "<CollectMarker>b__7_0": () => new il2js.MethodInfo(56586184)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Arena3x3 {
    export class Arena3x3WrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Arena3x3.Arena3x3WrapperReadOnly";
        static get size() { return 40 + 8; }
        public static fieldNames: string[] = ["League", "LeagueBeforeBattle", "Data"];
        public get League(): codegen.Client.Model.Gameplay.Arena3x3.Arena3x3LeagueWrapper {
            return this.readField(24, codegen.Client.Model.Gameplay.Arena3x3.Arena3x3LeagueWrapper, 2);
        }
        public get LeagueBeforeBattle(): number {
            return this.readTypePrimitive(32, "int", 1);
        }
        public get Data(): codegen.SharedModel.Meta.Battle.Arena3x3.UserArena3X3Data {
            return this.readField(40, codegen.SharedModel.Meta.Battle.Arena3x3.UserArena3X3Data, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.Arena3x3 {
    export class Arena3x3LeagueWrapper extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Arena3x3.Arena3x3LeagueWrapper";
        static get size() { return 56 + 8; }
        public static address = 57135576;
        public static fieldNames: string[] = ["_data", "_initialized", "_rankingDuration", "_leagueBorders", "_bordersRefreshType", "_recalculating", "_refreshNeeded", "LastRefreshTime"];
        public get _data(): codegen.SharedModel.Meta.Battle.Arena3x3.UserArena3X3Data {
            return this.readField(16, codegen.SharedModel.Meta.Battle.Arena3x3.UserArena3X3Data, 2);
        }
        public get _initialized(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public get _rankingDuration(): number {
            return this.readTypePrimitive(32, "double", 1);
        }
        public get _leagueBorders(): codegen.SharedModel.Common.CommonDtos.LongRange {
            return this.readField(40, codegen.SharedModel.Common.CommonDtos.LongRange, 2);
        }
        public get _bordersRefreshType(): number {
            return this.readTypePrimitive(48, "int", 1);
        }
        public get _recalculating(): boolean {
            return this.readTypePrimitive(52, "bool", 1);
        }
        public get _refreshNeeded(): boolean {
            return this.readTypePrimitive(53, "bool", 1);
        }
        public get LastRefreshTime(): Date {
            return this.readField(56, System.DateTime, 2);
        }
        public static staticMethods = {
            ".cctor": () => new il2js.MethodInfo(56884288),
            "<RefreshIfNeeded>b__73_0": () => new il2js.MethodInfo(56884344),
            "<get_Status>b__32_0": () => new il2js.MethodInfo(56884448)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Gifts {
    export class GiftsWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Gifts.GiftsWrapperReadonly";
        static get size() { return 16 + 8; }
        public static fieldNames: string[] = ["Data"];
        public get Data(): codegen.SharedModel.Meta.Gifts.Data.UserGiftData {
            return this.readField(16, codegen.SharedModel.Meta.Gifts.Data.UserGiftData, 2);
        }
        public static staticMethods = {
            "<EnsureLocalizationExists>b__12_1": () => new il2js.MethodInfo(56630736),
            "<get_New>b__7_0": () => new il2js.MethodInfo(56630776)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.ServerLogs {
    export class ServerLogsWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.ServerLogs.ServerLogsWrapperReadonly";
        static get size() { return 24 + il2js.NativeStruct.sizeof("long"); }
        public static fieldNames: string[] = ["BundleExceptions", "BundleExceptionsLastId"];
        public get BundleExceptions(): System.Collections.Generic.List<codegen.SharedModel.Meta.Bundles.BundleExceptionDto> {
            return this.readField(16, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Bundles.BundleExceptionDto);
        }
        public get BundleExceptionsLastId(): number {
            return this.readTypePrimitive(24, "long", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.DoomTower {
    export class DoomTowerWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.DoomTower.DoomTowerWrapperReadOnly";
        static get size() { return 104 + 8; }
        public static address = 57158568;
        public static fieldNames: string[] = ["User", "Account", "StageData", "SeenSecretChambers", "GlobalRatingCache", "AllianceRatingCache"];
        public get User(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(24, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public get Account(): codegen.SharedModel.Meta.Account.UserAccount {
            return this.readField(32, codegen.SharedModel.Meta.Account.UserAccount, 2);
        }
        public get StageData(): codegen.SharedModel.Meta.Stages.UserStageData {
            return this.readField(40, codegen.SharedModel.Meta.Stages.UserStageData, 2);
        }
        public get SeenSecretChambers(): System.Collections.Generic.List<number> {
            return this.readField(72, System.Collections.Generic.List, 2, "int");
        }
        public get GlobalRatingCache(): System.Collections.Generic.Dictionary<number, codegen.Client.Model.Gameplay.DoomTower.Data.RatingCacheItem> {
            return this.readField(96, System.Collections.Generic.Dictionary, 2, "int", codegen.Client.Model.Gameplay.DoomTower.Data.RatingCacheItem);
        }
        public get AllianceRatingCache(): System.Collections.Generic.Dictionary<number, codegen.Client.Model.Gameplay.DoomTower.Data.RatingCacheItem> {
            return this.readField(104, System.Collections.Generic.Dictionary, 2, "int", codegen.Client.Model.Gameplay.DoomTower.Data.RatingCacheItem);
        }
        public static get TowerDuration(): System.TimeSpan {
            return this.readField(8, System.TimeSpan, 2);
        }
        public static staticMethods = {
            "<AnySecretChamberUnseen>b__49_0": () => new il2js.MethodInfo(56628512),
            "<NextDifficultyNotSeen>b__57_1": () => new il2js.MethodInfo(56628632),
            "<get_Region>b__26_0": () => new il2js.MethodInfo(56628696),
            ".cctor": () => new il2js.MethodInfo(56890904)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.DoomTower.Data {
    export class RatingCacheItem extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.DoomTower.Data.RatingCacheItem";
        static get size() { return 8 + 8; }
        public static fieldNames: string[] = ["LastUpdateTime", "Items"];
        public get LastUpdateTime(): Date {
            return this.readField(0, System.DateTime, 2);
        }
        public get Items(): System.Collections.Generic.List<codegen.SharedModel.Meta.DoomTowerRating.RatingItems.DoomTowerRatingItem> {
            return this.readField(8, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.DoomTowerRating.RatingItems.DoomTowerRatingItem);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.DoomTowerRating.RatingItems {
    export class DoomTowerRatingItem extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.DoomTowerRating.RatingItems.DoomTowerRatingItem";
        static get size() { return 40 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57030712;
        public static fieldNames: string[] = ["UserId", "Levels", "SecretLevels", "TotalSpentTime", "TotalTurns"];
        public get UserId(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get Levels(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get SecretLevels(): number {
            return this.readTypePrimitive(28, "int", 1);
        }
        public get TotalSpentTime(): System.TimeSpan {
            return this.readField(32, System.TimeSpan, 2);
        }
        public get TotalTurns(): number {
            return this.readTypePrimitive(40, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.LinkRewards {
    export class GiftLinkRewardsWrapperReadonly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.LinkRewards.GiftLinkRewardsWrapperReadonly";
        static get size() { return 24 + 8; }
        public static fieldNames: string[] = ["GiftLinkRewardsData"];
        public get GiftLinkRewardsData(): codegen.SharedModel.Meta.GiftLinkRewards.GiftLinkRewardsData {
            return this.readField(24, codegen.SharedModel.Meta.GiftLinkRewards.GiftLinkRewardsData, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.CvcTournament {
    export class CvcTournamentWrapperReadOnly extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.CvcTournament.CvcTournamentWrapperReadOnly";
        static get size() { return 128 + 8; }
        public static fieldNames: string[] = ["Finalized", "TiersBasedOnAllianceRating", "TierBounds", "PrevPointsSuperiority", "User", "QuestData", "CvcData", "ResponsesByTier", "TournamentStats", "_globalEvents", "_cachedQuest", "LastKnownRevisionsByQuestPrototypeId"];
        public get Finalized(): boolean {
            return this.readTypePrimitive(24, "bool", 1);
        }
        public get TiersBasedOnAllianceRating(): boolean {
            return this.readTypePrimitive(25, "bool", 1);
        }
        public get TierBounds(): System.Collections.Generic.List<codegen.SharedModel.Meta.CvcTournament.CvcTierBounds> {
            return this.readField(32, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.CvcTournament.CvcTierBounds);
        }
        public get PrevPointsSuperiority(): number {
            return this.readTypePrimitive(56, "float", 1);
        }
        public get User(): codegen.Client.Model.Guard.UserWrapper {
            return this.readField(64, codegen.Client.Model.Guard.UserWrapper, 2);
        }
        public get QuestData(): codegen.SharedModel.Meta.Quests.Data.UserQuestData {
            return this.readField(72, codegen.SharedModel.Meta.Quests.Data.UserQuestData, 2);
        }
        public get CvcData(): codegen.SharedModel.Meta.CvcTournament.User.UserCvcData {
            return this.readField(80, codegen.SharedModel.Meta.CvcTournament.User.UserCvcData, 2);
        }
        public get ResponsesByTier(): System.Collections.Generic.Dictionary<number, codegen.SharedModel.Meta.CvcTournament.Dtos.CvcRatingResponseDto> {
            return this.readField(88, System.Collections.Generic.Dictionary, 2, "int", codegen.SharedModel.Meta.CvcTournament.Dtos.CvcRatingResponseDto);
        }
        public get TournamentStats(): codegen.SharedModel.Meta.CvcTournament.Alliance.CvcTournamentStats {
            return this.readField(96, codegen.SharedModel.Meta.CvcTournament.Alliance.CvcTournamentStats, 2);
        }
        public get _globalEvents(): codegen.Client.Model.Gameplay.GlobalEvents.GlobalEventsWrapper {
            return this.readField(112, codegen.Client.Model.Gameplay.GlobalEvents.GlobalEventsWrapper, 2);
        }
        public get _cachedQuest(): codegen.SharedModel.Meta.Quests.Data.Quest {
            return this.readField(120, codegen.SharedModel.Meta.Quests.Data.Quest, 2);
        }
        public get LastKnownRevisionsByQuestPrototypeId(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(128, System.Collections.Generic.Dictionary, 2, "int", "long");
        }
        public static staticMethods = {
            "<CvcRewardsUserInfo>b__88_0": () => new il2js.MethodInfo(56627656),
            "<get_AllianceStats>b__11_0": () => new il2js.MethodInfo(56627760),
            "<get_OpponentStats>b__9_0": () => new il2js.MethodInfo(56627808)
        };
    }
}
export namespace codegen.SharedModel.Meta.CvcTournament {
    export class CvcTierBounds extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.CvcTournament.CvcTierBounds";
        static get size() { return 32 + il2js.NativeStruct.sizeof("long"); }
        public static address = 56494024;
        public static fieldNames: string[] = ["TierId", "MinPoints", "MaxPoints"];
        public get TierId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get MinPoints(): number {
            return this.readTypePrimitive(24, "long", 1);
        }
        public get MaxPoints(): number {
            return this.readTypePrimitive(32, "long", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.CvcTournament.Dtos {
    export class CvcRatingResponseDto extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.CvcTournament.Dtos.CvcRatingResponseDto";
        static get size() { return 24 + 8; }
        public static address = 56494336;
        public static fieldNames: string[] = ["AllianceNotes"];
        public get AllianceNotes(): System.Collections.Generic.List<codegen.SharedModel.Meta.Alliances.AllianceNote> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.Alliances.AllianceNote);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.Alliances {
    export class AllianceNote extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.Alliances.AllianceNote";
        static get size() { return 168 + il2js.NativeStruct.sizeof("bool"); }
        public static address = 56468104;
        public static fieldNames: string[] = ["Id", "SegmentId", "LeaderId", "Name", "Abbreviation", "Logo", "LanguageId", "MemberIds", "RequestsReceived", "Power", "RatingPosition", "RatingPoints", "MembersLimit", "Description", "IsOpen", "PureStars", "RequiredMemberPower", "Weight", "AchievementLevelById", "Outdated"];
        public get Id(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get SegmentId(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public get LeaderId(): number {
            return this.readTypePrimitive(32, "long", 1);
        }
        public get Name(): string {
            return this.readField(40, System.String, 2);
        }
        public get Abbreviation(): string {
            return this.readField(48, System.String, 2);
        }
        public get Logo(): string {
            return this.readField(56, System.String, 2);
        }
        public get LanguageId(): number {
            return this.readTypePrimitive(64, "int", 1);
        }
        public get MemberIds(): System.Internal.ManagedArray<number> {
            return this.readField(72, System.Internal.ManagedArray, 2, "long");
        }
        public get RequestsReceived(): number {
            return this.readTypePrimitive(80, "int", 1);
        }
        public get Power(): number {
            return this.readTypePrimitive(84, "int", 1);
        }
        public get RatingPosition(): number {
            return this.readTypePrimitive(88, "int", 1);
        }
        public get RatingPoints(): number {
            return this.readTypePrimitive(96, "long", 1);
        }
        public get MembersLimit(): number {
            return this.readTypePrimitive(104, "int", 1);
        }
        public get Description(): string {
            return this.readField(112, System.String, 2);
        }
        public get IsOpen(): boolean {
            return this.readTypePrimitive(120, "bool", 1);
        }
        public get PureStars(): number {
            return this.readTypePrimitive(124, "int", 1);
        }
        public get RequiredMemberPower(): number {
            return this.readTypePrimitive(144, "int", 1);
        }
        public get Weight(): number {
            return this.readTypePrimitive(152, "double", 1);
        }
        public get AchievementLevelById(): System.Collections.Generic.Dictionary<number, number> {
            return this.readField(160, System.Collections.Generic.Dictionary, 2, "int", "int");
        }
        public get Outdated(): boolean {
            return this.readTypePrimitive(168, "bool", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.CvcTournament.Alliance {
    export class CvcTournamentStats extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.CvcTournament.Alliance.CvcTournamentStats";
        static get size() { return 24 + 8; }
        public static address = 57026112;
        public static fieldNames: string[] = ["TierId", "QuestPrototypeId", "AllianceStats"];
        public get TierId(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get QuestPrototypeId(): number {
            return this.readTypePrimitive(20, "int", 1);
        }
        public get AllianceStats(): System.Collections.Generic.List<codegen.SharedModel.Meta.CvcTournament.Alliance.CvcAllianceStats> {
            return this.readField(24, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.CvcTournament.Alliance.CvcAllianceStats);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.CvcTournament.Alliance {
    export class CvcAllianceStats extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.CvcTournament.Alliance.CvcAllianceStats";
        static get size() { return 48 + 8; }
        public static address = 57026240;
        public static fieldNames: string[] = ["AllianceId", "LastRatingUpdateTime", "ObserverUserIds", "UserPoints", "ActivityPoints"];
        public get AllianceId(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get LastRatingUpdateTime(): Date {
            return this.readField(24, System.DateTime, 2);
        }
        public get ObserverUserIds(): System.Collections.Generic.List<number> {
            return this.readField(32, System.Collections.Generic.List, 2, "long");
        }
        public get UserPoints(): System.Collections.Generic.List<codegen.SharedModel.Meta.CvcTournament.Alliance.CvcUserPoints> {
            return this.readField(40, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.CvcTournament.Alliance.CvcUserPoints);
        }
        public get ActivityPoints(): System.Collections.Generic.List<codegen.SharedModel.Meta.CvcTournament.Alliance.CvcActivityPoints> {
            return this.readField(48, System.Collections.Generic.List, 2, codegen.SharedModel.Meta.CvcTournament.Alliance.CvcActivityPoints);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.SharedModel.Meta.CvcTournament.Alliance {
    export class CvcUserPoints extends il2js.NativeStruct {
        public static [TypeName] = "codegen.SharedModel.Meta.CvcTournament.Alliance.CvcUserPoints";
        static get size() { return 24 + il2js.NativeStruct.sizeof("int"); }
        public static address = 57025416;
        public static fieldNames: string[] = ["UserId", "Points"];
        public get UserId(): number {
            return this.readTypePrimitive(16, "long", 1);
        }
        public get Points(): number {
            return this.readTypePrimitive(24, "int", 1);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.Client.Model.Gameplay.StaticData {
    export class ClientStaticDataManager extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.StaticData.ClientStaticDataManager";
        static get size() { return 24 + 8; }
        public static address = 57111992;
        public static fieldNames: string[] = ["_staticDataHash", "StaticData"];
        public get _staticDataHash(): string {
            return this.readField(16, System.String, 2);
        }
        public get StaticData(): codegen.SharedModel.Meta.ClientStaticData {
            return this.readField(24, codegen.SharedModel.Meta.ClientStaticData, 2);
        }
        public static staticMethods = {
            ".cctor": () => new il2js.MethodInfo(56911464)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Artifacts {
    export class ExternalArtifactsStorage extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Artifacts.ExternalArtifactsStorage";
        static get size() { return 24 + 8; }
        public static address = 57139328;
        public static fieldNames: string[] = ["_state", "_data"];
        public get _state(): codegen.Client.Model.Gameplay.Artifacts.ExternalArtifactsStorage__4_State {
            return this.readField(16, codegen.Client.Model.Gameplay.Artifacts.ExternalArtifactsStorage__4_State, 2);
        }
        public get _data(): codegen.SharedModel.Meta.Artifacts.UserArtifactData {
            return this.readField(24, codegen.SharedModel.Meta.Artifacts.UserArtifactData, 2);
        }
        public static staticMethods = {
            ".cctor": () => new il2js.MethodInfo(56885312),
            "SetRevision": () => new il2js.MethodInfo(56885376),
            "Update": () => new il2js.MethodInfo(56885536),
            "Update_1": () => new il2js.MethodInfo(56885640)
        };
    }
}
export namespace codegen.Client.Model.Gameplay.Artifacts {
    export class ExternalArtifactsStorage__4_State extends il2js.NativeStruct {
        public static [TypeName] = "codegen.Client.Model.Gameplay.Artifacts.ExternalArtifactsStorage__4_State";
        static get size() { return 32 + 8; }
        public static address = 57139224;
        public static fieldNames: string[] = ["Revision", "_artifacts", "_sync"];
        public get Revision(): number {
            return this.readTypePrimitive(16, "int", 1);
        }
        public get _artifacts(): System.Collections.Concurrent.ConcurrentDictionary<number, codegen.SharedModel.Meta.Artifacts.Artifact> {
            return this.readField(24, System.Collections.Concurrent.ConcurrentDictionary, 2, "int", codegen.SharedModel.Meta.Artifacts.Artifact);
        }
        public get _sync(): il2js.UnknownObject {
            return this.readField(32, il2js.UnknownObject, 2);
        }
        public static staticMethods = {};
    }
}
export namespace codegen.System.Collections.Concurrent {
    export class ConcurrentDictionary_Tables<TKey = unknown, TValue = unknown> extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Collections.Concurrent.ConcurrentDictionary_Tables";
        static get size() { return 0 + 8; }
        public static fieldNames: string[] = ["_buckets", "_locks", "_countPerLock"];
        constructor(address: Address, _t0: TKey = typeof il2js.UnknownObject as any, _t1: TValue = typeof il2js.UnknownObject as any) { super(address); }
        public get _buckets(): System.Internal.ManagedArray<codegen.System.Collections.Concurrent.ConcurrentDictionary_Node> {
            return this.readField(0, System.Internal.ManagedArray, 2, codegen.System.Collections.Concurrent.ConcurrentDictionary_Node);
        }
        public get _locks(): System.Internal.ManagedArray<il2js.UnknownObject> {
            return this.readField(0, System.Internal.ManagedArray, 2, il2js.UnknownObject);
        }
        public get _countPerLock(): System.Internal.ManagedArray<number> {
            return this.readField(0, System.Internal.ManagedArray, 2, "int");
        }
        public static staticMethods = {};
    }
}
export namespace codegen.System.Collections.Concurrent {
    export class ConcurrentDictionary_Node<TKey = unknown, TValue = unknown> extends il2js.NativeStruct {
        public static [TypeName] = "codegen.System.Collections.Concurrent.ConcurrentDictionary_Node";
        static get size() { return 0 + il2js.NativeStruct.sizeof("int"); }
        public static fieldNames: string[] = ["_next", "_hashcode"];
        constructor(address: Address, _t0: TKey = typeof il2js.UnknownObject as any, _t1: TValue = typeof il2js.UnknownObject as any) { super(address); }
        public get _next(): codegen.System.Collections.Concurrent.ConcurrentDictionary_Node {
            return this.readField(0, codegen.System.Collections.Concurrent.ConcurrentDictionary_Node, 2);
        }
        public get _hashcode(): number {
            return this.readTypePrimitive(0, "int", 1);
        }
        public static staticMethods = {};
    }
}