adding undefine method
continuing to move dependencies to declaration to simplify cjs wrapper