shared abstract class ItemUseScript {
void OnInitialize(const EffectParameter@[] &in){};
bool IsItemUsable(){};
bool IsPokemonUseItem(){};
bool IsUseValidForPokemon(Pokemon@){};
bool IsHoldable(){};
void OnUse(){};
void OnPokemonUse(Pokemon@){};
}