fixed the issue that caused jasmine test to fail, and revise api exposed. 

What type is the key?