Я б вообще тут сделал класс LanguageModes, в который положил бы

Код AS1/AS2:
public static const NORMAL:String = 'normal';
public static const NE_NORMAL:String = 'neNormal';
так как же как и класс PhrasesIDs c переменными

Код AS3:
public static const ID_1:String = 'id1';
если они стринги конечно
я думаю,что паблик статик статик делать лучше для таких констант. Так как они не зависят от конкретного экземпляра класса, неизменны и вечны.
в общем, такой вид

Код AS3:
var phrase:String = LanguagePack.gi().getPhrase(PhrasesIDs.ID_1, LanguageModes.MODE_NORMAL);
мне бы понравился куда больше.